Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / llvm / test / MC / X86 / align-branch-necessary.s
blob8830ce0150a16391b49ae7bc603265b2e2a8b27f
1 # RUN: llvm-mc -filetype=obj -triple x86_64 --x86-align-branch-boundary=32 --x86-align-branch=fused+jcc+indirect+call+ret %s | llvm-objdump -d --no-show-raw-insn - | FileCheck %s
3 # Check if no instruction crosses or is against the boundary,
4 # there will be no extra padding.
6 .text
7 .globl foo
8 .p2align 5
9 foo:
10 .p2align 5
11 .rept 24
12 int3
13 .endr
14 # CHECK: 18: js
15 js foo
17 .p2align 5
18 .rept 24
19 int3
20 .endr
21 # CHECK: 38: jmp
22 jmp foo
24 .p2align 5
25 .rept 24
26 int3
27 .endr
28 # CHECK: 58: jmpq *%rcx
29 jmp *%rcx
32 .p2align 5
33 .rept 24
34 int3
35 .endr
36 # CHECK: 78: callq
37 call foo
39 .p2align 5
40 .rept 27
41 int3
42 .endr
43 # CHECK: 9b: retq $0
44 ret $0
47 .p2align 5
48 .rept 21
49 int3
50 .endr
51 # CHECK: b5: cmpq %rax, %rbp
52 # CHECK: b8: je
53 cmp %rax, %rbp
54 je foo