[AMDGPU] Add True16 register classes.
[llvm-project.git] / llvm / test / MC / PowerPC / ppc64-prefix-align.s
blob531a7e361b23030cb730c83168569c9a1da6d9bc
1 # RUN: llvm-mc -triple powerpc64-unknown-linux-gnu --filetype=obj -o - %s | \
2 # RUN: llvm-objdump -D -r - | FileCheck --check-prefix=CHECK-BE %s
3 # RUN: llvm-mc -triple powerpc64le-unknown-linux-gnu --filetype=obj -o - %s | \
4 # RUN: llvm-objdump -D -r - | FileCheck --check-prefix=CHECK-LE %s
6 # The purpose of this test is to make sure that 8 byte instructions do not
7 # cross 64 byte boundaries. If an 8 byte instruction is about to cross such
8 # a boundary then a nop should be added so that the 8 byte instruction starts
9 # 4 bytes later and does not cross the boundary.
10 # This instruction is 8 bytes: paddi 1, 2, 8589934576, 0
11 # This instruction is 4 bytes: addi 2, 3, 15
12 # The branches are also 4 bytes each: beq 0, LAB1 (or LAB2)
14 beq 0, LAB1 # 4
15 beq 1, LAB2 # 8
16 # CHECK-BE: 0: 41 82 00 c0 bt 2, 0xc0
17 # CHECK-BE-NEXT: 4: 41 86 00 f8 bt 6, 0xfc
18 # CHECK-LE: 0: c0 00 82 41 bt 2, 0xc0
19 # CHECK-LE-NEXT: 4: f8 00 86 41 bt 6, 0xfc
20 paddi 1, 2, 8589934576, 0 # 16
21 paddi 1, 2, 8589934576, 0 # 24
22 paddi 1, 2, 8589934576, 0 # 32
23 paddi 1, 2, 8589934576, 0 # 40
24 paddi 1, 2, 8589934576, 0 # 48
25 paddi 1, 2, 8589934576, 0 # 56
26 addi 2, 3, 15 # 60
27 # Below the lines 40: and 44: contain the 8 byte instruction.
28 # We check to make sure that the nop is added at 3c: so that the 8 byte
29 # instruction can start at 40: which is 64 bytes aligned.
30 # CHECK-BE: 38: 38 43 00 0f
31 # CHECK-BE-NEXT: 3c: 60 00 00 00 nop
32 # CHECK-BE-NEXT: 40: 06 01 ff ff 38 22 ff f0 paddi 1, 2, 8589934576, 0
33 # CHECK-LE: 38: 0f 00 43 38
34 # CHECK-LE-NEXT: 3c: 00 00 00 60 nop
35 # CHECK-LE-NEXT: 40: ff ff 01 06 f0 ff 22 38 paddi 1, 2, 8589934576, 0
36 paddi 1, 2, 8589934576, 0
37 paddi 1, 2, 8589934576, 0
38 paddi 1, 2, 8589934576, 0
39 paddi 1, 2, 8589934576, 0
40 paddi 1, 2, 8589934576, 0
41 paddi 1, 2, 8589934576, 0
42 paddi 1, 2, 8589934576, 0
43 paddi 1, 2, 8589934576, 0 # 64
44 paddi 1, 2, 8589934576, 0
45 paddi 1, 2, 8589934576, 0
46 paddi 1, 2, 8589934576, 0
47 paddi 1, 2, 8589934576, 0
48 paddi 1, 2, 8589934576, 0
49 paddi 1, 2, 8589934576, 0
50 paddi 1, 2, 8589934576, 0
51 addi 2, 3, 15 # 60
52 # CHECK-BE: b8: 38 43 00 0f
53 # CHECK-BE-NEXT: bc: 60 00 00 00 nop
54 # CHECK-BE: <LAB1>:
55 # CHECK-BE-NEXT: c0: 06 01 ff ff 38 22 ff f0 paddi 1, 2, 8589934576, 0
56 # CHECK-LE: b8: 0f 00 43 38
57 # CHECK-LE-NEXT: bc: 00 00 00 60 nop
58 # CHECK-LE: <LAB1>:
59 # CHECK-LE-NEXT: c0: ff ff 01 06 f0 ff 22 38 paddi 1, 2, 8589934576, 0
60 LAB1: paddi 1, 2, 8589934576, 0
61 paddi 1, 2, 8589934576, 0
62 paddi 1, 2, 8589934576, 0
63 paddi 1, 2, 8589934576, 0
64 paddi 1, 2, 8589934576, 0
65 paddi 1, 2, 8589934576, 0
66 paddi 1, 2, 8589934576, 0
67 addi 2, 3, 15 # 60
68 # CHECK-BE: f8: 38 43 00 0f
69 # CHECK-BE: <LAB2>:
70 # CHECK-BE-NEXT: fc: 60 00 00 00 nop
71 # CHECK-BE-NEXT: 100: 06 01 ff ff 38 22 ff f0 paddi 1, 2, 8589934576, 0
72 # CHECK-LE: f8: 0f 00 43 38
73 # CHECK-LE: <LAB2>:
74 # CHECK-LE-NEXT: fc: 00 00 00 60 nop
75 # CHECK-LE-NEXT: 100: ff ff 01 06 f0 ff 22 38 paddi 1, 2, 8589934576, 0
76 LAB2:
77 paddi 1, 2, 8589934576, 0