xref: /aosp_15_r20/external/llvm/test/MC/Mips/insn-directive.s (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker# RUN: llvm-mc %s -arch=mips -mcpu=mips32 | FileCheck %s --check-prefix=ASM
2*9880d681SAndroid Build Coastguard Worker
3*9880d681SAndroid Build Coastguard Worker# RUN: llvm-mc %s -arch=mips -mcpu=mips32 -filetype=obj -o - | \
4*9880d681SAndroid Build Coastguard Worker# RUN:   llvm-readobj -symbols - | FileCheck %s --check-prefix=OBJ
5*9880d681SAndroid Build Coastguard Worker
6*9880d681SAndroid Build Coastguard Worker  .set micromips
7*9880d681SAndroid Build Coastguard Worker
8*9880d681SAndroid Build Coastguard Worker  .global f_mm_insn_data
9*9880d681SAndroid Build Coastguard Worker  .type f_mm_insn_data, @function
10*9880d681SAndroid Build Coastguard Workerf_mm_insn_data:
11*9880d681SAndroid Build Coastguard Worker  .insn
12*9880d681SAndroid Build Coastguard Worker  .word 0x00e73910   # add $7, $7, $7
13*9880d681SAndroid Build Coastguard Worker
14*9880d681SAndroid Build Coastguard Worker  .global f_mm_insn_instr
15*9880d681SAndroid Build Coastguard Worker  .type f_mm_insn_instr, @function
16*9880d681SAndroid Build Coastguard Workerf_mm_insn_instr:
17*9880d681SAndroid Build Coastguard Worker  .insn
18*9880d681SAndroid Build Coastguard Worker  add $7, $7, $7
19*9880d681SAndroid Build Coastguard Worker
20*9880d681SAndroid Build Coastguard Worker  .global o_mm_insn_data
21*9880d681SAndroid Build Coastguard Worker  .type o_mm_insn_data, @object
22*9880d681SAndroid Build Coastguard Workero_mm_insn_data:
23*9880d681SAndroid Build Coastguard Worker  .insn
24*9880d681SAndroid Build Coastguard Worker  .word 0x00e73910   # add $7, $7, $7
25*9880d681SAndroid Build Coastguard Worker
26*9880d681SAndroid Build Coastguard Worker  .global o_mm_insn_instr
27*9880d681SAndroid Build Coastguard Worker  .type o_mm_insn_instr, @object
28*9880d681SAndroid Build Coastguard Workero_mm_insn_instr:
29*9880d681SAndroid Build Coastguard Worker  .insn
30*9880d681SAndroid Build Coastguard Worker  add $7, $7, $7
31*9880d681SAndroid Build Coastguard Worker
32*9880d681SAndroid Build Coastguard Worker  .set nomicromips
33*9880d681SAndroid Build Coastguard Worker
34*9880d681SAndroid Build Coastguard Worker  .global f_normal_insn_data
35*9880d681SAndroid Build Coastguard Worker  .type f_normal_insn_data, @function
36*9880d681SAndroid Build Coastguard Workerf_normal_insn_data:
37*9880d681SAndroid Build Coastguard Worker  .insn
38*9880d681SAndroid Build Coastguard Worker  .word 0x00e73820   # add $7, $7, $7
39*9880d681SAndroid Build Coastguard Worker
40*9880d681SAndroid Build Coastguard Worker  .global f_normal_insn_instr
41*9880d681SAndroid Build Coastguard Worker  .type f_normal_insn_instr, @function
42*9880d681SAndroid Build Coastguard Workerf_normal_insn_instr:
43*9880d681SAndroid Build Coastguard Worker  .insn
44*9880d681SAndroid Build Coastguard Worker  add $7, $7, $7
45*9880d681SAndroid Build Coastguard Worker
46*9880d681SAndroid Build Coastguard Worker  .global o_normal_insn_data
47*9880d681SAndroid Build Coastguard Worker  .type o_normal_insn_data, @object
48*9880d681SAndroid Build Coastguard Workero_normal_insn_data:
49*9880d681SAndroid Build Coastguard Worker  .insn
50*9880d681SAndroid Build Coastguard Worker  .word 0x00e73820   # add $7, $7, $7
51*9880d681SAndroid Build Coastguard Worker
52*9880d681SAndroid Build Coastguard Worker  .global o_normal_insn_instr
53*9880d681SAndroid Build Coastguard Worker  .type o_normal_insn_instr, @object
54*9880d681SAndroid Build Coastguard Workero_normal_insn_instr:
55*9880d681SAndroid Build Coastguard Worker  .insn
56*9880d681SAndroid Build Coastguard Worker  add $7, $7, $7
57*9880d681SAndroid Build Coastguard Worker
58*9880d681SAndroid Build Coastguard Worker# Verify that .insn causes the currently saved labels to be cleared by checking
59*9880d681SAndroid Build Coastguard Worker# that foo doesn't get marked.
60*9880d681SAndroid Build Coastguard Worker  .set nomicromips
61*9880d681SAndroid Build Coastguard Workerfoo:
62*9880d681SAndroid Build Coastguard Worker  .insn
63*9880d681SAndroid Build Coastguard Worker  .word 0x00e73820   # add $7, $7, $7
64*9880d681SAndroid Build Coastguard Worker
65*9880d681SAndroid Build Coastguard Worker  .set micromips
66*9880d681SAndroid Build Coastguard Workerbar:
67*9880d681SAndroid Build Coastguard Worker  add $7, $7, $7
68*9880d681SAndroid Build Coastguard Worker
69*9880d681SAndroid Build Coastguard Worker# ASM: .insn
70*9880d681SAndroid Build Coastguard Worker
71*9880d681SAndroid Build Coastguard Worker# OBJ: Symbols [
72*9880d681SAndroid Build Coastguard Worker# OBJ: Name: foo
73*9880d681SAndroid Build Coastguard Worker# OBJ: Other: 0
74*9880d681SAndroid Build Coastguard Worker
75*9880d681SAndroid Build Coastguard Worker# OBJ: Name: f_mm_insn_data
76*9880d681SAndroid Build Coastguard Worker# OBJ: Other [ (0x80)
77*9880d681SAndroid Build Coastguard Worker
78*9880d681SAndroid Build Coastguard Worker# OBJ: Name: f_mm_insn_instr
79*9880d681SAndroid Build Coastguard Worker# OBJ: Other [ (0x80)
80*9880d681SAndroid Build Coastguard Worker
81*9880d681SAndroid Build Coastguard Worker# OBJ: Name: f_normal_insn_data
82*9880d681SAndroid Build Coastguard Worker# OBJ: Other: 0
83*9880d681SAndroid Build Coastguard Worker
84*9880d681SAndroid Build Coastguard Worker# OBJ: Name: f_normal_insn_instr
85*9880d681SAndroid Build Coastguard Worker# OBJ: Other: 0
86*9880d681SAndroid Build Coastguard Worker
87*9880d681SAndroid Build Coastguard Worker# OBJ: Name: o_mm_insn_data
88*9880d681SAndroid Build Coastguard Worker# OBJ: Other [ (0x80)
89*9880d681SAndroid Build Coastguard Worker
90*9880d681SAndroid Build Coastguard Worker# OBJ: Name: o_mm_insn_instr
91*9880d681SAndroid Build Coastguard Worker# OBJ: Other [ (0x80)
92*9880d681SAndroid Build Coastguard Worker
93*9880d681SAndroid Build Coastguard Worker# OBJ: Name: o_normal_insn_data
94*9880d681SAndroid Build Coastguard Worker# OBJ: Other: 0
95*9880d681SAndroid Build Coastguard Worker
96*9880d681SAndroid Build Coastguard Worker# OBJ: Name: o_normal_insn_instr
97*9880d681SAndroid Build Coastguard Worker# OBJ: Other: 0
98*9880d681SAndroid Build Coastguard Worker# OBJ: ]
99