Home | History | Annotate | Download | only in X86
      1 # RUN: not llc -march=x86-64 -start-after branch-folder -stop-after branch-folder -o /dev/null %s 2>&1 | FileCheck %s
      2 
      3 --- |
      4 
      5   @addr = global i8* null
      6 
      7   define void @test() {
      8   entry:
      9     store volatile i8* blockaddress(@test, %block), i8** @addr
     10     %val = load volatile i8*, i8** @addr
     11     indirectbr i8* %val, [label %block]
     12 
     13   block:
     14     ret void
     15   }
     16 
     17 ...
     18 ---
     19 name:            test
     20 body: |
     21   bb.0.entry:
     22     successors: %bb.1.block
     23     ; CHECK: [[@LINE+1]]:51: expected an IR block reference
     24     %rax = LEA64r %rip, 1, _, blockaddress(@test, _), _
     25     MOV64mr %rip, 1, _, @addr, _, killed %rax
     26     JMP64m %rip, 1, _, @addr, _
     27 
     28   bb.1.block (address-taken):
     29     RETQ
     30 ...
     31