brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.5 KiB · bce0ea1 Raw
59 lines · plain
1# RUN: not --crash llc -mtriple=mips-mti-linux-gnu -mcpu=mips32r2 %s \2# RUN:         -start-after=finalize-isel -stop-after=finalize-isel \3# RUN:         -verify-machineinstrs -mattr=+use-indirect-jump-hazard -o - 2>&1 \4# RUN:   | FileCheck %s5 6# Test that calls are checked when using indirect jumps guards (hazard variant).7 8# CHECK: Bad machine code: invalid instruction when using jump guards!9--- |10  define i32 @fooTail(ptr nocapture %f1) {11  entry:12    %0 = tail call i32 %f1(i32 14)13    ret i32 %014  }15...16---17name:            fooTail18alignment:       419exposesReturnsTwice: false20legalized:       false21regBankSelected: false22selected:        false23tracksRegLiveness: true24registers:25  - { id: 0, class: gpr32, preferred-register: '' }26  - { id: 1, class: gpr32, preferred-register: '' }27liveins:28  - { reg: '$a0', virtual-reg: '%0' }29frameInfo:30  isFrameAddressTaken: false31  isReturnAddressTaken: false32  hasStackMap:     false33  hasPatchPoint:   false34  stackSize:       035  offsetAdjustment: 036  maxAlignment:    137  adjustsStack:    false38  hasCalls:        false39  stackProtector:  ''40  maxCallFrameSize: 429496729541  hasOpaqueSPAdjustment: false42  hasVAStart:      false43  hasMustTailInVarArgFunc: false44  savePoint:       []45  restorePoint:    []46fixedStack:47stack:48constants:49body:             |50  bb.0.entry:51    liveins: $a052 53    %0:gpr32 = COPY $a054    %1:gpr32 = ADDiu $zero, 1455    $a0 = COPY %156    TAILCALLREG %0, csr_o32, implicit-def dead $at, implicit $a057 58...59