brintos

brintos / llvm-project-archived public Read only

0
0
Text · 4.7 KiB · 713666d Raw
123 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2 3; RUN: llc -mtriple=mips-elf -verify-machineinstrs \4; RUN:   < %s | FileCheck %s -check-prefix=MIPS325; RUN: llc -mtriple=mips-elf -verify-machineinstrs -relocation-model=pic \6; RUN:   < %s | FileCheck %s -check-prefix=MIPS32-PIC7; RUN: llc -mtriple=mips64-elf -verify-machineinstrs \8; RUN:   < %s | FileCheck %s -check-prefix=MIPS649; RUN: llc -mtriple=mips64-elf -verify-machineinstrs -relocation-model=pic \10; RUN:   < %s | FileCheck %s -check-prefix=MIPS64-PIC11; RUN: llc -mtriple=mips-elf -verify-machineinstrs -mattr=+micromips \12; RUN:   < %s | FileCheck %s -check-prefix=MIPS32-MM13; RUN: llc -mtriple=mips-elf -verify-machineinstrs -relocation-model=pic -mattr=+micromips \14; RUN:   < %s | FileCheck %s -check-prefix=MIPS32-MM-PIC15 16; Test that checks ABI for _mcount calls.17 18define void @foo() {19; MIPS32-LABEL: foo:20; MIPS32:       # %bb.0: # %entry21; MIPS32-NEXT:    addiu $sp, $sp, -2422; MIPS32-NEXT:    .cfi_def_cfa_offset 2423; MIPS32-NEXT:    sw $ra, 20($sp) # 4-byte Folded Spill24; MIPS32-NEXT:    .cfi_offset 31, -425; MIPS32-NEXT:    move $1, $ra26; MIPS32-NEXT:    jal _mcount27; MIPS32-NEXT:    addiu $sp, $sp, -828; MIPS32-NEXT:    lw $ra, 20($sp) # 4-byte Folded Reload29; MIPS32-NEXT:    jr $ra30; MIPS32-NEXT:    addiu $sp, $sp, 2431;32; MIPS32-PIC-LABEL: foo:33; MIPS32-PIC:       # %bb.0: # %entry34; MIPS32-PIC-NEXT:    lui $2, %hi(_gp_disp)35; MIPS32-PIC-NEXT:    addiu $2, $2, %lo(_gp_disp)36; MIPS32-PIC-NEXT:    addiu $sp, $sp, -2437; MIPS32-PIC-NEXT:    .cfi_def_cfa_offset 2438; MIPS32-PIC-NEXT:    sw $ra, 20($sp) # 4-byte Folded Spill39; MIPS32-PIC-NEXT:    .cfi_offset 31, -440; MIPS32-PIC-NEXT:    addu $gp, $2, $2541; MIPS32-PIC-NEXT:    lw $25, %call16(_mcount)($gp)42; MIPS32-PIC-NEXT:    move $1, $ra43; MIPS32-PIC-NEXT:    .reloc $tmp0, R_MIPS_JALR, _mcount44; MIPS32-PIC-NEXT:  $tmp0:45; MIPS32-PIC-NEXT:    jalr $2546; MIPS32-PIC-NEXT:    addiu $sp, $sp, -847; MIPS32-PIC-NEXT:    lw $ra, 20($sp) # 4-byte Folded Reload48; MIPS32-PIC-NEXT:    jr $ra49; MIPS32-PIC-NEXT:    addiu $sp, $sp, 2450;51; MIPS64-LABEL: foo:52; MIPS64:       # %bb.0: # %entry53; MIPS64-NEXT:    daddiu $sp, $sp, -1654; MIPS64-NEXT:    .cfi_def_cfa_offset 1655; MIPS64-NEXT:    sd $ra, 8($sp) # 8-byte Folded Spill56; MIPS64-NEXT:    .cfi_offset 31, -857; MIPS64-NEXT:    move $1, $ra58; MIPS64-NEXT:    jal _mcount59; MIPS64-NEXT:    nop60; MIPS64-NEXT:    ld $ra, 8($sp) # 8-byte Folded Reload61; MIPS64-NEXT:    jr $ra62; MIPS64-NEXT:    daddiu $sp, $sp, 1663;64; MIPS64-PIC-LABEL: foo:65; MIPS64-PIC:       # %bb.0: # %entry66; MIPS64-PIC-NEXT:    daddiu $sp, $sp, -1667; MIPS64-PIC-NEXT:    .cfi_def_cfa_offset 1668; MIPS64-PIC-NEXT:    sd $ra, 8($sp) # 8-byte Folded Spill69; MIPS64-PIC-NEXT:    sd $gp, 0($sp) # 8-byte Folded Spill70; MIPS64-PIC-NEXT:    .cfi_offset 31, -871; MIPS64-PIC-NEXT:    .cfi_offset 28, -1672; MIPS64-PIC-NEXT:    lui $1, %hi(%neg(%gp_rel(foo)))73; MIPS64-PIC-NEXT:    daddu $1, $1, $2574; MIPS64-PIC-NEXT:    daddiu $gp, $1, %lo(%neg(%gp_rel(foo)))75; MIPS64-PIC-NEXT:    ld $25, %call16(_mcount)($gp)76; MIPS64-PIC-NEXT:    move $1, $ra77; MIPS64-PIC-NEXT:    .reloc .Ltmp0, R_MIPS_JALR, _mcount78; MIPS64-PIC-NEXT:  .Ltmp0:79; MIPS64-PIC-NEXT:    jalr $2580; MIPS64-PIC-NEXT:    nop81; MIPS64-PIC-NEXT:    ld $gp, 0($sp) # 8-byte Folded Reload82; MIPS64-PIC-NEXT:    ld $ra, 8($sp) # 8-byte Folded Reload83; MIPS64-PIC-NEXT:    jr $ra84; MIPS64-PIC-NEXT:    daddiu $sp, $sp, 1685;86; MIPS32-MM-LABEL: foo:87; MIPS32-MM:       # %bb.0: # %entry88; MIPS32-MM-NEXT:    addiu $sp, $sp, -2489; MIPS32-MM-NEXT:    .cfi_def_cfa_offset 2490; MIPS32-MM-NEXT:    sw $ra, 20($sp) # 4-byte Folded Spill91; MIPS32-MM-NEXT:    .cfi_offset 31, -492; MIPS32-MM-NEXT:    move $1, $ra93; MIPS32-MM-NEXT:    jal _mcount94; MIPS32-MM-NEXT:    addiu $sp, $sp, -895; MIPS32-MM-NEXT:    lw $ra, 20($sp) # 4-byte Folded Reload96; MIPS32-MM-NEXT:    jr $ra97; MIPS32-MM-NEXT:    addiu $sp, $sp, 2498;99; MIPS32-MM-PIC-LABEL: foo:100; MIPS32-MM-PIC:       # %bb.0: # %entry101; MIPS32-MM-PIC-NEXT:    lui $2, %hi(_gp_disp)102; MIPS32-MM-PIC-NEXT:    addiu $2, $2, %lo(_gp_disp)103; MIPS32-MM-PIC-NEXT:    addiu $sp, $sp, -24104; MIPS32-MM-PIC-NEXT:    .cfi_def_cfa_offset 24105; MIPS32-MM-PIC-NEXT:    sw $ra, 20($sp) # 4-byte Folded Spill106; MIPS32-MM-PIC-NEXT:    .cfi_offset 31, -4107; MIPS32-MM-PIC-NEXT:    addu $gp, $2, $25108; MIPS32-MM-PIC-NEXT:    lw $25, %call16(_mcount)($gp)109; MIPS32-MM-PIC-NEXT:    move $1, $ra110; MIPS32-MM-PIC-NEXT:    .reloc $tmp0, R_MICROMIPS_JALR, _mcount111; MIPS32-MM-PIC-NEXT:  $tmp0:112; MIPS32-MM-PIC-NEXT:    jalr $25113; MIPS32-MM-PIC-NEXT:    addiu $sp, $sp, -8114; MIPS32-MM-PIC-NEXT:    lw $ra, 20($sp) # 4-byte Folded Reload115; MIPS32-MM-PIC-NEXT:    jr $ra116; MIPS32-MM-PIC-NEXT:    addiu $sp, $sp, 24117entry:118  call void @_mcount()119  ret void120}121 122declare void @_mcount()123