Be more consistent in the naming convention for the various RET instructions to specify in terms of bitwidth. Helps prevent future scheduler model mismatches like those that were only addressed in D44687. Differential Revision: https://reviews.llvm.org/D113302
31 lines
656 B
YAML
31 lines
656 B
YAML
# RUN: not llc -march=x86-64 -run-pass none -o /dev/null %s 2>&1 | FileCheck %s
|
|
|
|
--- |
|
|
|
|
@addr = global i8* null
|
|
|
|
define void @test() {
|
|
entry:
|
|
store volatile i8* blockaddress(@test, %block), i8** @addr
|
|
%val = load volatile i8*, i8** @addr
|
|
indirectbr i8* %val, [label %block]
|
|
|
|
block:
|
|
ret void
|
|
}
|
|
|
|
...
|
|
---
|
|
name: test
|
|
body: |
|
|
bb.0.entry:
|
|
successors: %bb.1.block
|
|
; CHECK: [[@LINE+1]]:44: expected an IR function reference
|
|
$rax = LEA64r $rip, 1, _, blockaddress(@addr, %ir-block.block), _
|
|
MOV64mr $rip, 1, _, @addr, _, killed $rax
|
|
JMP64m $rip, 1, _, @addr, _
|
|
|
|
bb.1.block (address-taken):
|
|
RET64
|
|
...
|