1# RUN: llvm-mc -filetype=obj -triple x86_64 --x86-align-branch-boundary=32 --x86-align-branch=fused+jcc+call %s | llvm-objdump -d --no-show-raw-insn - | FileCheck %s 2 3 # Exercise some corner cases related to align directive. 4 5 .text 6 # Check the align directive between the macro fused pair 7 # does not make code crazy. 8 # CHECK: 0: cmpq %rax, %rbp 9 # CHECK: 3: nop 10 # CHECK: 4: jne 11 cmp %rax, %rbp 12 .p2align 1 13 jne bar 14 15 .rept 24 16 int3 17 .endr 18 .p2align 1 19 # Check we can ensure this call not cross or end at boundary when there 20 # is a align directive before it. 21 # CHECK: 20: callq *%rax 22 call *%rax 23 24 .type bar,@function 25bar: 26 retq 27