brintos

brintos / llvm-project-archived public Read only

0
0
Text · 4.1 KiB · 8b6ed7a Raw
144 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2 3; Test that blez/ bgez are selected.4; RUN: llc -mtriple=mipsel-mti-linux-gnu < %s | FileCheck %s --check-prefix=MIPS325; RUN: llc -mtriple=mips64el-mti-linux-gnu < %s | FileCheck %s --check-prefix=MIPS646; RUN: llc -mtriple=mipsel-mti-linux-gnu -mattr=+micromips < %s | FileCheck %s --check-prefix=MM7 8define void @test_blez(i32 %a) {9; MIPS32-LABEL: test_blez:10; MIPS32:       # %bb.0: # %entry11; MIPS32-NEXT:    blez $4, $BB0_212; MIPS32-NEXT:    nop13; MIPS32-NEXT:  # %bb.1: # %if.then14; MIPS32-NEXT:    addiu $sp, $sp, -2415; MIPS32-NEXT:    .cfi_def_cfa_offset 2416; MIPS32-NEXT:    sw $ra, 20($sp) # 4-byte Folded Spill17; MIPS32-NEXT:    .cfi_offset 31, -418; MIPS32-NEXT:    jal foo119; MIPS32-NEXT:    nop20; MIPS32-NEXT:    lw $ra, 20($sp) # 4-byte Folded Reload21; MIPS32-NEXT:    addiu $sp, $sp, 2422; MIPS32-NEXT:  $BB0_2: # %if.end23; MIPS32-NEXT:    jr $ra24; MIPS32-NEXT:    nop25;26; MIPS64-LABEL: test_blez:27; MIPS64:       # %bb.0: # %entry28; MIPS64-NEXT:    sll $1, $4, 029; MIPS64-NEXT:    blez $1, .LBB0_230; MIPS64-NEXT:    nop31; MIPS64-NEXT:  # %bb.1: # %if.then32; MIPS64-NEXT:    daddiu $sp, $sp, -1633; MIPS64-NEXT:    .cfi_def_cfa_offset 1634; MIPS64-NEXT:    sd $ra, 8($sp) # 8-byte Folded Spill35; MIPS64-NEXT:    .cfi_offset 31, -836; MIPS64-NEXT:    jal foo137; MIPS64-NEXT:    nop38; MIPS64-NEXT:    ld $ra, 8($sp) # 8-byte Folded Reload39; MIPS64-NEXT:    daddiu $sp, $sp, 1640; MIPS64-NEXT:  .LBB0_2: # %if.end41; MIPS64-NEXT:    jr $ra42; MIPS64-NEXT:    nop43;44; MM-LABEL: test_blez:45; MM:       # %bb.0: # %entry46; MM-NEXT:    blez $4, $BB0_347; MM-NEXT:    nop48; MM-NEXT:  # %bb.1: # %entry49; MM-NEXT:    j $BB0_250; MM-NEXT:    nop51; MM-NEXT:  $BB0_2: # %if.then52; MM-NEXT:    addiu $sp, $sp, -2453; MM-NEXT:    .cfi_def_cfa_offset 2454; MM-NEXT:    sw $ra, 20($sp) # 4-byte Folded Spill55; MM-NEXT:    .cfi_offset 31, -456; MM-NEXT:    jal foo157; MM-NEXT:    nop58; MM-NEXT:    lw $ra, 20($sp) # 4-byte Folded Reload59; MM-NEXT:    addiu $sp, $sp, 2460; MM-NEXT:  $BB0_3: # %if.end61; MM-NEXT:    jrc $ra62entry:63  %cmp = icmp sgt i32 %a, 064  br i1 %cmp, label %if.then, label %if.end65 66if.then:67  tail call void @foo1()68  br label %if.end69 70if.end:71  ret void72}73 74declare void @foo1()75 76define void @test_bgez(i32 %a) {77; MIPS32-LABEL: test_bgez:78; MIPS32:       # %bb.0: # %entry79; MIPS32-NEXT:    bltz $4, $BB1_280; MIPS32-NEXT:    nop81; MIPS32-NEXT:  # %bb.1: # %if.end82; MIPS32-NEXT:    jr $ra83; MIPS32-NEXT:    nop84; MIPS32-NEXT:  $BB1_2: # %if.then85; MIPS32-NEXT:    addiu $sp, $sp, -2486; MIPS32-NEXT:    .cfi_def_cfa_offset 2487; MIPS32-NEXT:    sw $ra, 20($sp) # 4-byte Folded Spill88; MIPS32-NEXT:    .cfi_offset 31, -489; MIPS32-NEXT:    jal foo190; MIPS32-NEXT:    nop91; MIPS32-NEXT:    lw $ra, 20($sp) # 4-byte Folded Reload92; MIPS32-NEXT:    jr $ra93; MIPS32-NEXT:    addiu $sp, $sp, 2494;95; MIPS64-LABEL: test_bgez:96; MIPS64:       # %bb.0: # %entry97; MIPS64-NEXT:    sll $1, $4, 098; MIPS64-NEXT:    bltz $1, .LBB1_299; MIPS64-NEXT:    nop100; MIPS64-NEXT:  # %bb.1: # %if.end101; MIPS64-NEXT:    jr $ra102; MIPS64-NEXT:    nop103; MIPS64-NEXT:  .LBB1_2: # %if.then104; MIPS64-NEXT:    daddiu $sp, $sp, -16105; MIPS64-NEXT:    .cfi_def_cfa_offset 16106; MIPS64-NEXT:    sd $ra, 8($sp) # 8-byte Folded Spill107; MIPS64-NEXT:    .cfi_offset 31, -8108; MIPS64-NEXT:    jal foo1109; MIPS64-NEXT:    nop110; MIPS64-NEXT:    ld $ra, 8($sp) # 8-byte Folded Reload111; MIPS64-NEXT:    jr $ra112; MIPS64-NEXT:    daddiu $sp, $sp, 16113;114; MM-LABEL: test_bgez:115; MM:       # %bb.0: # %entry116; MM-NEXT:    bgez $4, $BB1_2117; MM-NEXT:    nop118; MM-NEXT:  # %bb.1: # %entry119; MM-NEXT:    j $BB1_3120; MM-NEXT:    nop121; MM-NEXT:  $BB1_2: # %if.end122; MM-NEXT:    jrc $ra123; MM-NEXT:  $BB1_3: # %if.then124; MM-NEXT:    addiu $sp, $sp, -24125; MM-NEXT:    .cfi_def_cfa_offset 24126; MM-NEXT:    sw $ra, 20($sp) # 4-byte Folded Spill127; MM-NEXT:    .cfi_offset 31, -4128; MM-NEXT:    jal foo1129; MM-NEXT:    nop130; MM-NEXT:    lw $ra, 20($sp) # 4-byte Folded Reload131; MM-NEXT:    jr $ra132; MM-NEXT:    addiu $sp, $sp, 24133entry:134  %cmp = icmp slt i32 %a, 0135  br i1 %cmp, label %if.then, label %if.end136 137if.then:138  tail call void @foo1()139  br label %if.end140 141if.end:142  ret void143}144