mirror of
https://github.com/RPCSX/llvm.git
synced 2024-11-24 12:19:53 +00:00
ee325b9e96
The previous names were both misleading (the MachineLegalizer actually contained the info tables) and inconsistent with the selector & translator (in having a "Machine") prefix. This should make everything sensible again. The only functional change is the name of a couple of command-line options. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@284287 91177308-0d34-0410-b5e6-96231b3b80d8
30 lines
731 B
LLVM
30 lines
731 B
LLVM
; RUN: llc -mtriple=aarch64-apple-darwin -aarch64-bcc-offset-bits=4 -align-all-nofallthru-blocks=4 < %s | FileCheck %s
|
|
|
|
; Long branch is assumed because the block has a higher alignment
|
|
; requirement than the function.
|
|
|
|
; CHECK-LABEL: invert_bcc_block_align_higher_func:
|
|
; CHECK: b.eq [[JUMP_BB1:LBB[0-9]+_[0-9]+]]
|
|
; CHECK-NEXT: b [[JUMP_BB2:LBB[0-9]+_[0-9]+]]
|
|
|
|
; CHECK: [[JUMP_BB1]]:
|
|
; CHECK: ret
|
|
; CHECK: .p2align 4
|
|
|
|
; CHECK: [[JUMP_BB2]]:
|
|
; CHECK: ret
|
|
define i32 @invert_bcc_block_align_higher_func(i32 %x, i32 %y) align 4 #0 {
|
|
%1 = icmp eq i32 %x, %y
|
|
br i1 %1, label %bb1, label %bb2
|
|
|
|
bb2:
|
|
store volatile i32 9, i32* undef
|
|
ret i32 1
|
|
|
|
bb1:
|
|
store volatile i32 42, i32* undef
|
|
ret i32 0
|
|
}
|
|
|
|
attributes #0 = { nounwind }
|