# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 3
# RUN: llc -mtriple=i386-unknown-linux-gnu -mattr=slow-3ops-lea -run-pass x86-fixup-LEAs -o - %s | FileCheck %s
--- |
define i32 @square(i32 %0) local_unnamed_addr {
%blub = getelementptr i8, ptr blockaddress(@square, %2), i32 %0
indirectbr ptr %blub, [label %2]
2:
ret i32 0
}
---
name: square
body: |
; CHECK-LABEL: name: square
; CHECK: bb.0:
; CHECK-NEXT: renamable $eax = LEA32r renamable $ebx, 1, renamable $ebp, 0, $noreg
; CHECK-NEXT: $eax = ADD32ri $eax, target-flags(x86-gotoff) blockaddress(@square, %ir-block.1), implicit-def $eflags
; CHECK-NEXT: JMP32r killed renamable $eax
; CHECK-NEXT: {{ $}}
; CHECK-NEXT: bb.1 (%ir-block.1, ir-block-address-taken %ir-block.1):
; CHECK-NEXT: RET 0
bb.0:
renamable $eax = LEA32r renamable $ebp, 1, renamable $ebx, target-flags(x86-gotoff) blockaddress(@square, %ir-block.1), $noreg
JMP32r killed renamable $eax
bb.1 (%ir-block.1, ir-block-address-taken %ir-block.1):
RET 0
...