brintos

brintos / llvm-project-archived public Read only

0
0
Text · 55.2 KiB · 8cf5f55 Raw
1037 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 42; RUN: llc -mtriple=riscv32 -mattr=+d -verify-machineinstrs < %s \3; RUN:   -target-abi=ilp32d | FileCheck -check-prefix=RV32ID %s4; RUN: llc -mtriple=riscv64 -mattr=+d -verify-machineinstrs < %s \5; RUN:   -target-abi=lp64d | FileCheck -check-prefix=RV64ID %s6 7; A GPR<->FPR move (fmv.?.?) is unnecessary in all of the tests below, as in8; the value can be loaded/stored directly from/to the stack.9 10define float @spill_i32_to_float(i32 %a) nounwind {11; RV32ID-LABEL: spill_i32_to_float:12; RV32ID:       # %bb.0:13; RV32ID-NEXT:    addi sp, sp, -16014; RV32ID-NEXT:    sw ra, 156(sp) # 4-byte Folded Spill15; RV32ID-NEXT:    sw s0, 152(sp) # 4-byte Folded Spill16; RV32ID-NEXT:    sw s1, 148(sp) # 4-byte Folded Spill17; RV32ID-NEXT:    sw s2, 144(sp) # 4-byte Folded Spill18; RV32ID-NEXT:    sw s3, 140(sp) # 4-byte Folded Spill19; RV32ID-NEXT:    sw s4, 136(sp) # 4-byte Folded Spill20; RV32ID-NEXT:    sw s5, 132(sp) # 4-byte Folded Spill21; RV32ID-NEXT:    sw s6, 128(sp) # 4-byte Folded Spill22; RV32ID-NEXT:    sw s7, 124(sp) # 4-byte Folded Spill23; RV32ID-NEXT:    sw s8, 120(sp) # 4-byte Folded Spill24; RV32ID-NEXT:    sw s9, 116(sp) # 4-byte Folded Spill25; RV32ID-NEXT:    sw s10, 112(sp) # 4-byte Folded Spill26; RV32ID-NEXT:    sw s11, 108(sp) # 4-byte Folded Spill27; RV32ID-NEXT:    fsd fs0, 96(sp) # 8-byte Folded Spill28; RV32ID-NEXT:    fsd fs1, 88(sp) # 8-byte Folded Spill29; RV32ID-NEXT:    fsd fs2, 80(sp) # 8-byte Folded Spill30; RV32ID-NEXT:    fsd fs3, 72(sp) # 8-byte Folded Spill31; RV32ID-NEXT:    fsd fs4, 64(sp) # 8-byte Folded Spill32; RV32ID-NEXT:    fsd fs5, 56(sp) # 8-byte Folded Spill33; RV32ID-NEXT:    fsd fs6, 48(sp) # 8-byte Folded Spill34; RV32ID-NEXT:    fsd fs7, 40(sp) # 8-byte Folded Spill35; RV32ID-NEXT:    fsd fs8, 32(sp) # 8-byte Folded Spill36; RV32ID-NEXT:    fsd fs9, 24(sp) # 8-byte Folded Spill37; RV32ID-NEXT:    fsd fs10, 16(sp) # 8-byte Folded Spill38; RV32ID-NEXT:    fsd fs11, 8(sp) # 8-byte Folded Spill39; RV32ID-NEXT:    fmv.w.x fa5, a040; RV32ID-NEXT:    fsw fa5, 4(sp) # 4-byte Folded Spill41; RV32ID-NEXT:    #APP42; RV32ID-NEXT:    #NO_APP43; RV32ID-NEXT:    flw fa0, 4(sp) # 4-byte Folded Reload44; RV32ID-NEXT:    lw ra, 156(sp) # 4-byte Folded Reload45; RV32ID-NEXT:    lw s0, 152(sp) # 4-byte Folded Reload46; RV32ID-NEXT:    lw s1, 148(sp) # 4-byte Folded Reload47; RV32ID-NEXT:    lw s2, 144(sp) # 4-byte Folded Reload48; RV32ID-NEXT:    lw s3, 140(sp) # 4-byte Folded Reload49; RV32ID-NEXT:    lw s4, 136(sp) # 4-byte Folded Reload50; RV32ID-NEXT:    lw s5, 132(sp) # 4-byte Folded Reload51; RV32ID-NEXT:    lw s6, 128(sp) # 4-byte Folded Reload52; RV32ID-NEXT:    lw s7, 124(sp) # 4-byte Folded Reload53; RV32ID-NEXT:    lw s8, 120(sp) # 4-byte Folded Reload54; RV32ID-NEXT:    lw s9, 116(sp) # 4-byte Folded Reload55; RV32ID-NEXT:    lw s10, 112(sp) # 4-byte Folded Reload56; RV32ID-NEXT:    lw s11, 108(sp) # 4-byte Folded Reload57; RV32ID-NEXT:    fld fs0, 96(sp) # 8-byte Folded Reload58; RV32ID-NEXT:    fld fs1, 88(sp) # 8-byte Folded Reload59; RV32ID-NEXT:    fld fs2, 80(sp) # 8-byte Folded Reload60; RV32ID-NEXT:    fld fs3, 72(sp) # 8-byte Folded Reload61; RV32ID-NEXT:    fld fs4, 64(sp) # 8-byte Folded Reload62; RV32ID-NEXT:    fld fs5, 56(sp) # 8-byte Folded Reload63; RV32ID-NEXT:    fld fs6, 48(sp) # 8-byte Folded Reload64; RV32ID-NEXT:    fld fs7, 40(sp) # 8-byte Folded Reload65; RV32ID-NEXT:    fld fs8, 32(sp) # 8-byte Folded Reload66; RV32ID-NEXT:    fld fs9, 24(sp) # 8-byte Folded Reload67; RV32ID-NEXT:    fld fs10, 16(sp) # 8-byte Folded Reload68; RV32ID-NEXT:    fld fs11, 8(sp) # 8-byte Folded Reload69; RV32ID-NEXT:    addi sp, sp, 16070; RV32ID-NEXT:    ret71;72; RV64ID-LABEL: spill_i32_to_float:73; RV64ID:       # %bb.0:74; RV64ID-NEXT:    addi sp, sp, -20875; RV64ID-NEXT:    sd ra, 200(sp) # 8-byte Folded Spill76; RV64ID-NEXT:    sd s0, 192(sp) # 8-byte Folded Spill77; RV64ID-NEXT:    sd s1, 184(sp) # 8-byte Folded Spill78; RV64ID-NEXT:    sd s2, 176(sp) # 8-byte Folded Spill79; RV64ID-NEXT:    sd s3, 168(sp) # 8-byte Folded Spill80; RV64ID-NEXT:    sd s4, 160(sp) # 8-byte Folded Spill81; RV64ID-NEXT:    sd s5, 152(sp) # 8-byte Folded Spill82; RV64ID-NEXT:    sd s6, 144(sp) # 8-byte Folded Spill83; RV64ID-NEXT:    sd s7, 136(sp) # 8-byte Folded Spill84; RV64ID-NEXT:    sd s8, 128(sp) # 8-byte Folded Spill85; RV64ID-NEXT:    sd s9, 120(sp) # 8-byte Folded Spill86; RV64ID-NEXT:    sd s10, 112(sp) # 8-byte Folded Spill87; RV64ID-NEXT:    sd s11, 104(sp) # 8-byte Folded Spill88; RV64ID-NEXT:    fsd fs0, 96(sp) # 8-byte Folded Spill89; RV64ID-NEXT:    fsd fs1, 88(sp) # 8-byte Folded Spill90; RV64ID-NEXT:    fsd fs2, 80(sp) # 8-byte Folded Spill91; RV64ID-NEXT:    fsd fs3, 72(sp) # 8-byte Folded Spill92; RV64ID-NEXT:    fsd fs4, 64(sp) # 8-byte Folded Spill93; RV64ID-NEXT:    fsd fs5, 56(sp) # 8-byte Folded Spill94; RV64ID-NEXT:    fsd fs6, 48(sp) # 8-byte Folded Spill95; RV64ID-NEXT:    fsd fs7, 40(sp) # 8-byte Folded Spill96; RV64ID-NEXT:    fsd fs8, 32(sp) # 8-byte Folded Spill97; RV64ID-NEXT:    fsd fs9, 24(sp) # 8-byte Folded Spill98; RV64ID-NEXT:    fsd fs10, 16(sp) # 8-byte Folded Spill99; RV64ID-NEXT:    fsd fs11, 8(sp) # 8-byte Folded Spill100; RV64ID-NEXT:    fmv.w.x fa5, a0101; RV64ID-NEXT:    fsw fa5, 4(sp) # 4-byte Folded Spill102; RV64ID-NEXT:    #APP103; RV64ID-NEXT:    #NO_APP104; RV64ID-NEXT:    flw fa0, 4(sp) # 4-byte Folded Reload105; RV64ID-NEXT:    ld ra, 200(sp) # 8-byte Folded Reload106; RV64ID-NEXT:    ld s0, 192(sp) # 8-byte Folded Reload107; RV64ID-NEXT:    ld s1, 184(sp) # 8-byte Folded Reload108; RV64ID-NEXT:    ld s2, 176(sp) # 8-byte Folded Reload109; RV64ID-NEXT:    ld s3, 168(sp) # 8-byte Folded Reload110; RV64ID-NEXT:    ld s4, 160(sp) # 8-byte Folded Reload111; RV64ID-NEXT:    ld s5, 152(sp) # 8-byte Folded Reload112; RV64ID-NEXT:    ld s6, 144(sp) # 8-byte Folded Reload113; RV64ID-NEXT:    ld s7, 136(sp) # 8-byte Folded Reload114; RV64ID-NEXT:    ld s8, 128(sp) # 8-byte Folded Reload115; RV64ID-NEXT:    ld s9, 120(sp) # 8-byte Folded Reload116; RV64ID-NEXT:    ld s10, 112(sp) # 8-byte Folded Reload117; RV64ID-NEXT:    ld s11, 104(sp) # 8-byte Folded Reload118; RV64ID-NEXT:    fld fs0, 96(sp) # 8-byte Folded Reload119; RV64ID-NEXT:    fld fs1, 88(sp) # 8-byte Folded Reload120; RV64ID-NEXT:    fld fs2, 80(sp) # 8-byte Folded Reload121; RV64ID-NEXT:    fld fs3, 72(sp) # 8-byte Folded Reload122; RV64ID-NEXT:    fld fs4, 64(sp) # 8-byte Folded Reload123; RV64ID-NEXT:    fld fs5, 56(sp) # 8-byte Folded Reload124; RV64ID-NEXT:    fld fs6, 48(sp) # 8-byte Folded Reload125; RV64ID-NEXT:    fld fs7, 40(sp) # 8-byte Folded Reload126; RV64ID-NEXT:    fld fs8, 32(sp) # 8-byte Folded Reload127; RV64ID-NEXT:    fld fs9, 24(sp) # 8-byte Folded Reload128; RV64ID-NEXT:    fld fs10, 16(sp) # 8-byte Folded Reload129; RV64ID-NEXT:    fld fs11, 8(sp) # 8-byte Folded Reload130; RV64ID-NEXT:    addi sp, sp, 208131; RV64ID-NEXT:    ret132  %1 = bitcast i32 %a to float133  call void asm sideeffect "", "~{x0},~{x1},~{x2},~{x3},~{x4},~{x5},~{x6},~{x7},~{x8},~{x9},~{x10},~{x11},~{x12},~{x13},~{x14},~{x15},~{x16},~{x17},~{x18},~{x19},~{x20},~{x21},~{x22},~{x23},~{x24},~{x25},~{x26},~{x27},~{x28},~{x29},~{x30},~{x31},~{f0_d},~{f1_d},~{f2_d},~{f3_d},~{f4_d},~{f5_d},~{f6_d},~{f7_d},~{f8_d},~{f9_d},~{f10_d},~{f11_d},~{f12_d},~{f13_d},~{f14_d},~{f15_d},~{f16_d},~{f17_d},~{f18_d},~{f19_d},~{f20_d},~{f21_d},~{f22_d},~{f23_d},~{f24_d},~{f25_d},~{f26_d},~{f27_d},~{f28_d},~{f29_d},~{f30_d},~{f31_d}"() nounwind134  ret float %1135}136 137define i32 @spill_float_to_i32(float %a) nounwind {138; RV32ID-LABEL: spill_float_to_i32:139; RV32ID:       # %bb.0:140; RV32ID-NEXT:    addi sp, sp, -160141; RV32ID-NEXT:    sw ra, 156(sp) # 4-byte Folded Spill142; RV32ID-NEXT:    sw s0, 152(sp) # 4-byte Folded Spill143; RV32ID-NEXT:    sw s1, 148(sp) # 4-byte Folded Spill144; RV32ID-NEXT:    sw s2, 144(sp) # 4-byte Folded Spill145; RV32ID-NEXT:    sw s3, 140(sp) # 4-byte Folded Spill146; RV32ID-NEXT:    sw s4, 136(sp) # 4-byte Folded Spill147; RV32ID-NEXT:    sw s5, 132(sp) # 4-byte Folded Spill148; RV32ID-NEXT:    sw s6, 128(sp) # 4-byte Folded Spill149; RV32ID-NEXT:    sw s7, 124(sp) # 4-byte Folded Spill150; RV32ID-NEXT:    sw s8, 120(sp) # 4-byte Folded Spill151; RV32ID-NEXT:    sw s9, 116(sp) # 4-byte Folded Spill152; RV32ID-NEXT:    sw s10, 112(sp) # 4-byte Folded Spill153; RV32ID-NEXT:    sw s11, 108(sp) # 4-byte Folded Spill154; RV32ID-NEXT:    fsd fs0, 96(sp) # 8-byte Folded Spill155; RV32ID-NEXT:    fsd fs1, 88(sp) # 8-byte Folded Spill156; RV32ID-NEXT:    fsd fs2, 80(sp) # 8-byte Folded Spill157; RV32ID-NEXT:    fsd fs3, 72(sp) # 8-byte Folded Spill158; RV32ID-NEXT:    fsd fs4, 64(sp) # 8-byte Folded Spill159; RV32ID-NEXT:    fsd fs5, 56(sp) # 8-byte Folded Spill160; RV32ID-NEXT:    fsd fs6, 48(sp) # 8-byte Folded Spill161; RV32ID-NEXT:    fsd fs7, 40(sp) # 8-byte Folded Spill162; RV32ID-NEXT:    fsd fs8, 32(sp) # 8-byte Folded Spill163; RV32ID-NEXT:    fsd fs9, 24(sp) # 8-byte Folded Spill164; RV32ID-NEXT:    fsd fs10, 16(sp) # 8-byte Folded Spill165; RV32ID-NEXT:    fsd fs11, 8(sp) # 8-byte Folded Spill166; RV32ID-NEXT:    fmv.x.w a0, fa0167; RV32ID-NEXT:    sw a0, 4(sp) # 4-byte Folded Spill168; RV32ID-NEXT:    #APP169; RV32ID-NEXT:    #NO_APP170; RV32ID-NEXT:    lw a0, 4(sp) # 4-byte Folded Reload171; RV32ID-NEXT:    lw ra, 156(sp) # 4-byte Folded Reload172; RV32ID-NEXT:    lw s0, 152(sp) # 4-byte Folded Reload173; RV32ID-NEXT:    lw s1, 148(sp) # 4-byte Folded Reload174; RV32ID-NEXT:    lw s2, 144(sp) # 4-byte Folded Reload175; RV32ID-NEXT:    lw s3, 140(sp) # 4-byte Folded Reload176; RV32ID-NEXT:    lw s4, 136(sp) # 4-byte Folded Reload177; RV32ID-NEXT:    lw s5, 132(sp) # 4-byte Folded Reload178; RV32ID-NEXT:    lw s6, 128(sp) # 4-byte Folded Reload179; RV32ID-NEXT:    lw s7, 124(sp) # 4-byte Folded Reload180; RV32ID-NEXT:    lw s8, 120(sp) # 4-byte Folded Reload181; RV32ID-NEXT:    lw s9, 116(sp) # 4-byte Folded Reload182; RV32ID-NEXT:    lw s10, 112(sp) # 4-byte Folded Reload183; RV32ID-NEXT:    lw s11, 108(sp) # 4-byte Folded Reload184; RV32ID-NEXT:    fld fs0, 96(sp) # 8-byte Folded Reload185; RV32ID-NEXT:    fld fs1, 88(sp) # 8-byte Folded Reload186; RV32ID-NEXT:    fld fs2, 80(sp) # 8-byte Folded Reload187; RV32ID-NEXT:    fld fs3, 72(sp) # 8-byte Folded Reload188; RV32ID-NEXT:    fld fs4, 64(sp) # 8-byte Folded Reload189; RV32ID-NEXT:    fld fs5, 56(sp) # 8-byte Folded Reload190; RV32ID-NEXT:    fld fs6, 48(sp) # 8-byte Folded Reload191; RV32ID-NEXT:    fld fs7, 40(sp) # 8-byte Folded Reload192; RV32ID-NEXT:    fld fs8, 32(sp) # 8-byte Folded Reload193; RV32ID-NEXT:    fld fs9, 24(sp) # 8-byte Folded Reload194; RV32ID-NEXT:    fld fs10, 16(sp) # 8-byte Folded Reload195; RV32ID-NEXT:    fld fs11, 8(sp) # 8-byte Folded Reload196; RV32ID-NEXT:    addi sp, sp, 160197; RV32ID-NEXT:    ret198;199; RV64ID-LABEL: spill_float_to_i32:200; RV64ID:       # %bb.0:201; RV64ID-NEXT:    addi sp, sp, -208202; RV64ID-NEXT:    sd ra, 200(sp) # 8-byte Folded Spill203; RV64ID-NEXT:    sd s0, 192(sp) # 8-byte Folded Spill204; RV64ID-NEXT:    sd s1, 184(sp) # 8-byte Folded Spill205; RV64ID-NEXT:    sd s2, 176(sp) # 8-byte Folded Spill206; RV64ID-NEXT:    sd s3, 168(sp) # 8-byte Folded Spill207; RV64ID-NEXT:    sd s4, 160(sp) # 8-byte Folded Spill208; RV64ID-NEXT:    sd s5, 152(sp) # 8-byte Folded Spill209; RV64ID-NEXT:    sd s6, 144(sp) # 8-byte Folded Spill210; RV64ID-NEXT:    sd s7, 136(sp) # 8-byte Folded Spill211; RV64ID-NEXT:    sd s8, 128(sp) # 8-byte Folded Spill212; RV64ID-NEXT:    sd s9, 120(sp) # 8-byte Folded Spill213; RV64ID-NEXT:    sd s10, 112(sp) # 8-byte Folded Spill214; RV64ID-NEXT:    sd s11, 104(sp) # 8-byte Folded Spill215; RV64ID-NEXT:    fsd fs0, 96(sp) # 8-byte Folded Spill216; RV64ID-NEXT:    fsd fs1, 88(sp) # 8-byte Folded Spill217; RV64ID-NEXT:    fsd fs2, 80(sp) # 8-byte Folded Spill218; RV64ID-NEXT:    fsd fs3, 72(sp) # 8-byte Folded Spill219; RV64ID-NEXT:    fsd fs4, 64(sp) # 8-byte Folded Spill220; RV64ID-NEXT:    fsd fs5, 56(sp) # 8-byte Folded Spill221; RV64ID-NEXT:    fsd fs6, 48(sp) # 8-byte Folded Spill222; RV64ID-NEXT:    fsd fs7, 40(sp) # 8-byte Folded Spill223; RV64ID-NEXT:    fsd fs8, 32(sp) # 8-byte Folded Spill224; RV64ID-NEXT:    fsd fs9, 24(sp) # 8-byte Folded Spill225; RV64ID-NEXT:    fsd fs10, 16(sp) # 8-byte Folded Spill226; RV64ID-NEXT:    fsd fs11, 8(sp) # 8-byte Folded Spill227; RV64ID-NEXT:    fmv.x.w a0, fa0228; RV64ID-NEXT:    sd a0, 0(sp) # 8-byte Folded Spill229; RV64ID-NEXT:    #APP230; RV64ID-NEXT:    #NO_APP231; RV64ID-NEXT:    ld a0, 0(sp) # 8-byte Folded Reload232; RV64ID-NEXT:    ld ra, 200(sp) # 8-byte Folded Reload233; RV64ID-NEXT:    ld s0, 192(sp) # 8-byte Folded Reload234; RV64ID-NEXT:    ld s1, 184(sp) # 8-byte Folded Reload235; RV64ID-NEXT:    ld s2, 176(sp) # 8-byte Folded Reload236; RV64ID-NEXT:    ld s3, 168(sp) # 8-byte Folded Reload237; RV64ID-NEXT:    ld s4, 160(sp) # 8-byte Folded Reload238; RV64ID-NEXT:    ld s5, 152(sp) # 8-byte Folded Reload239; RV64ID-NEXT:    ld s6, 144(sp) # 8-byte Folded Reload240; RV64ID-NEXT:    ld s7, 136(sp) # 8-byte Folded Reload241; RV64ID-NEXT:    ld s8, 128(sp) # 8-byte Folded Reload242; RV64ID-NEXT:    ld s9, 120(sp) # 8-byte Folded Reload243; RV64ID-NEXT:    ld s10, 112(sp) # 8-byte Folded Reload244; RV64ID-NEXT:    ld s11, 104(sp) # 8-byte Folded Reload245; RV64ID-NEXT:    fld fs0, 96(sp) # 8-byte Folded Reload246; RV64ID-NEXT:    fld fs1, 88(sp) # 8-byte Folded Reload247; RV64ID-NEXT:    fld fs2, 80(sp) # 8-byte Folded Reload248; RV64ID-NEXT:    fld fs3, 72(sp) # 8-byte Folded Reload249; RV64ID-NEXT:    fld fs4, 64(sp) # 8-byte Folded Reload250; RV64ID-NEXT:    fld fs5, 56(sp) # 8-byte Folded Reload251; RV64ID-NEXT:    fld fs6, 48(sp) # 8-byte Folded Reload252; RV64ID-NEXT:    fld fs7, 40(sp) # 8-byte Folded Reload253; RV64ID-NEXT:    fld fs8, 32(sp) # 8-byte Folded Reload254; RV64ID-NEXT:    fld fs9, 24(sp) # 8-byte Folded Reload255; RV64ID-NEXT:    fld fs10, 16(sp) # 8-byte Folded Reload256; RV64ID-NEXT:    fld fs11, 8(sp) # 8-byte Folded Reload257; RV64ID-NEXT:    addi sp, sp, 208258; RV64ID-NEXT:    ret259  %1 = bitcast float %a to i32260  call void asm sideeffect "", "~{x0},~{x1},~{x2},~{x3},~{x4},~{x5},~{x6},~{x7},~{x8},~{x9},~{x10},~{x11},~{x12},~{x13},~{x14},~{x15},~{x16},~{x17},~{x18},~{x19},~{x20},~{x21},~{x22},~{x23},~{x24},~{x25},~{x26},~{x27},~{x28},~{x29},~{x30},~{x31},~{f0_d},~{f1_d},~{f2_d},~{f3_d},~{f4_d},~{f5_d},~{f6_d},~{f7_d},~{f8_d},~{f9_d},~{f10_d},~{f11_d},~{f12_d},~{f13_d},~{f14_d},~{f15_d},~{f16_d},~{f17_d},~{f18_d},~{f19_d},~{f20_d},~{f21_d},~{f22_d},~{f23_d},~{f24_d},~{f25_d},~{f26_d},~{f27_d},~{f28_d},~{f29_d},~{f30_d},~{f31_d}"() nounwind261  ret i32 %1262}263 264define double @spill_i64_to_double(i64 %a) nounwind {265; RV32ID-LABEL: spill_i64_to_double:266; RV32ID:       # %bb.0:267; RV32ID-NEXT:    addi sp, sp, -176268; RV32ID-NEXT:    sw ra, 172(sp) # 4-byte Folded Spill269; RV32ID-NEXT:    sw s0, 168(sp) # 4-byte Folded Spill270; RV32ID-NEXT:    sw s1, 164(sp) # 4-byte Folded Spill271; RV32ID-NEXT:    sw s2, 160(sp) # 4-byte Folded Spill272; RV32ID-NEXT:    sw s3, 156(sp) # 4-byte Folded Spill273; RV32ID-NEXT:    sw s4, 152(sp) # 4-byte Folded Spill274; RV32ID-NEXT:    sw s5, 148(sp) # 4-byte Folded Spill275; RV32ID-NEXT:    sw s6, 144(sp) # 4-byte Folded Spill276; RV32ID-NEXT:    sw s7, 140(sp) # 4-byte Folded Spill277; RV32ID-NEXT:    sw s8, 136(sp) # 4-byte Folded Spill278; RV32ID-NEXT:    sw s9, 132(sp) # 4-byte Folded Spill279; RV32ID-NEXT:    sw s10, 128(sp) # 4-byte Folded Spill280; RV32ID-NEXT:    sw s11, 124(sp) # 4-byte Folded Spill281; RV32ID-NEXT:    fsd fs0, 112(sp) # 8-byte Folded Spill282; RV32ID-NEXT:    fsd fs1, 104(sp) # 8-byte Folded Spill283; RV32ID-NEXT:    fsd fs2, 96(sp) # 8-byte Folded Spill284; RV32ID-NEXT:    fsd fs3, 88(sp) # 8-byte Folded Spill285; RV32ID-NEXT:    fsd fs4, 80(sp) # 8-byte Folded Spill286; RV32ID-NEXT:    fsd fs5, 72(sp) # 8-byte Folded Spill287; RV32ID-NEXT:    fsd fs6, 64(sp) # 8-byte Folded Spill288; RV32ID-NEXT:    fsd fs7, 56(sp) # 8-byte Folded Spill289; RV32ID-NEXT:    fsd fs8, 48(sp) # 8-byte Folded Spill290; RV32ID-NEXT:    fsd fs9, 40(sp) # 8-byte Folded Spill291; RV32ID-NEXT:    fsd fs10, 32(sp) # 8-byte Folded Spill292; RV32ID-NEXT:    fsd fs11, 24(sp) # 8-byte Folded Spill293; RV32ID-NEXT:    sw a0, 16(sp)294; RV32ID-NEXT:    sw a1, 20(sp)295; RV32ID-NEXT:    fld fa5, 16(sp)296; RV32ID-NEXT:    fsd fa5, 8(sp) # 8-byte Folded Spill297; RV32ID-NEXT:    #APP298; RV32ID-NEXT:    #NO_APP299; RV32ID-NEXT:    fld fa0, 8(sp) # 8-byte Folded Reload300; RV32ID-NEXT:    lw ra, 172(sp) # 4-byte Folded Reload301; RV32ID-NEXT:    lw s0, 168(sp) # 4-byte Folded Reload302; RV32ID-NEXT:    lw s1, 164(sp) # 4-byte Folded Reload303; RV32ID-NEXT:    lw s2, 160(sp) # 4-byte Folded Reload304; RV32ID-NEXT:    lw s3, 156(sp) # 4-byte Folded Reload305; RV32ID-NEXT:    lw s4, 152(sp) # 4-byte Folded Reload306; RV32ID-NEXT:    lw s5, 148(sp) # 4-byte Folded Reload307; RV32ID-NEXT:    lw s6, 144(sp) # 4-byte Folded Reload308; RV32ID-NEXT:    lw s7, 140(sp) # 4-byte Folded Reload309; RV32ID-NEXT:    lw s8, 136(sp) # 4-byte Folded Reload310; RV32ID-NEXT:    lw s9, 132(sp) # 4-byte Folded Reload311; RV32ID-NEXT:    lw s10, 128(sp) # 4-byte Folded Reload312; RV32ID-NEXT:    lw s11, 124(sp) # 4-byte Folded Reload313; RV32ID-NEXT:    fld fs0, 112(sp) # 8-byte Folded Reload314; RV32ID-NEXT:    fld fs1, 104(sp) # 8-byte Folded Reload315; RV32ID-NEXT:    fld fs2, 96(sp) # 8-byte Folded Reload316; RV32ID-NEXT:    fld fs3, 88(sp) # 8-byte Folded Reload317; RV32ID-NEXT:    fld fs4, 80(sp) # 8-byte Folded Reload318; RV32ID-NEXT:    fld fs5, 72(sp) # 8-byte Folded Reload319; RV32ID-NEXT:    fld fs6, 64(sp) # 8-byte Folded Reload320; RV32ID-NEXT:    fld fs7, 56(sp) # 8-byte Folded Reload321; RV32ID-NEXT:    fld fs8, 48(sp) # 8-byte Folded Reload322; RV32ID-NEXT:    fld fs9, 40(sp) # 8-byte Folded Reload323; RV32ID-NEXT:    fld fs10, 32(sp) # 8-byte Folded Reload324; RV32ID-NEXT:    fld fs11, 24(sp) # 8-byte Folded Reload325; RV32ID-NEXT:    addi sp, sp, 176326; RV32ID-NEXT:    ret327;328; RV64ID-LABEL: spill_i64_to_double:329; RV64ID:       # %bb.0:330; RV64ID-NEXT:    addi sp, sp, -208331; RV64ID-NEXT:    sd ra, 200(sp) # 8-byte Folded Spill332; RV64ID-NEXT:    sd s0, 192(sp) # 8-byte Folded Spill333; RV64ID-NEXT:    sd s1, 184(sp) # 8-byte Folded Spill334; RV64ID-NEXT:    sd s2, 176(sp) # 8-byte Folded Spill335; RV64ID-NEXT:    sd s3, 168(sp) # 8-byte Folded Spill336; RV64ID-NEXT:    sd s4, 160(sp) # 8-byte Folded Spill337; RV64ID-NEXT:    sd s5, 152(sp) # 8-byte Folded Spill338; RV64ID-NEXT:    sd s6, 144(sp) # 8-byte Folded Spill339; RV64ID-NEXT:    sd s7, 136(sp) # 8-byte Folded Spill340; RV64ID-NEXT:    sd s8, 128(sp) # 8-byte Folded Spill341; RV64ID-NEXT:    sd s9, 120(sp) # 8-byte Folded Spill342; RV64ID-NEXT:    sd s10, 112(sp) # 8-byte Folded Spill343; RV64ID-NEXT:    sd s11, 104(sp) # 8-byte Folded Spill344; RV64ID-NEXT:    fsd fs0, 96(sp) # 8-byte Folded Spill345; RV64ID-NEXT:    fsd fs1, 88(sp) # 8-byte Folded Spill346; RV64ID-NEXT:    fsd fs2, 80(sp) # 8-byte Folded Spill347; RV64ID-NEXT:    fsd fs3, 72(sp) # 8-byte Folded Spill348; RV64ID-NEXT:    fsd fs4, 64(sp) # 8-byte Folded Spill349; RV64ID-NEXT:    fsd fs5, 56(sp) # 8-byte Folded Spill350; RV64ID-NEXT:    fsd fs6, 48(sp) # 8-byte Folded Spill351; RV64ID-NEXT:    fsd fs7, 40(sp) # 8-byte Folded Spill352; RV64ID-NEXT:    fsd fs8, 32(sp) # 8-byte Folded Spill353; RV64ID-NEXT:    fsd fs9, 24(sp) # 8-byte Folded Spill354; RV64ID-NEXT:    fsd fs10, 16(sp) # 8-byte Folded Spill355; RV64ID-NEXT:    fsd fs11, 8(sp) # 8-byte Folded Spill356; RV64ID-NEXT:    fmv.d.x fa5, a0357; RV64ID-NEXT:    fsd fa5, 0(sp) # 8-byte Folded Spill358; RV64ID-NEXT:    #APP359; RV64ID-NEXT:    #NO_APP360; RV64ID-NEXT:    fld fa0, 0(sp) # 8-byte Folded Reload361; RV64ID-NEXT:    ld ra, 200(sp) # 8-byte Folded Reload362; RV64ID-NEXT:    ld s0, 192(sp) # 8-byte Folded Reload363; RV64ID-NEXT:    ld s1, 184(sp) # 8-byte Folded Reload364; RV64ID-NEXT:    ld s2, 176(sp) # 8-byte Folded Reload365; RV64ID-NEXT:    ld s3, 168(sp) # 8-byte Folded Reload366; RV64ID-NEXT:    ld s4, 160(sp) # 8-byte Folded Reload367; RV64ID-NEXT:    ld s5, 152(sp) # 8-byte Folded Reload368; RV64ID-NEXT:    ld s6, 144(sp) # 8-byte Folded Reload369; RV64ID-NEXT:    ld s7, 136(sp) # 8-byte Folded Reload370; RV64ID-NEXT:    ld s8, 128(sp) # 8-byte Folded Reload371; RV64ID-NEXT:    ld s9, 120(sp) # 8-byte Folded Reload372; RV64ID-NEXT:    ld s10, 112(sp) # 8-byte Folded Reload373; RV64ID-NEXT:    ld s11, 104(sp) # 8-byte Folded Reload374; RV64ID-NEXT:    fld fs0, 96(sp) # 8-byte Folded Reload375; RV64ID-NEXT:    fld fs1, 88(sp) # 8-byte Folded Reload376; RV64ID-NEXT:    fld fs2, 80(sp) # 8-byte Folded Reload377; RV64ID-NEXT:    fld fs3, 72(sp) # 8-byte Folded Reload378; RV64ID-NEXT:    fld fs4, 64(sp) # 8-byte Folded Reload379; RV64ID-NEXT:    fld fs5, 56(sp) # 8-byte Folded Reload380; RV64ID-NEXT:    fld fs6, 48(sp) # 8-byte Folded Reload381; RV64ID-NEXT:    fld fs7, 40(sp) # 8-byte Folded Reload382; RV64ID-NEXT:    fld fs8, 32(sp) # 8-byte Folded Reload383; RV64ID-NEXT:    fld fs9, 24(sp) # 8-byte Folded Reload384; RV64ID-NEXT:    fld fs10, 16(sp) # 8-byte Folded Reload385; RV64ID-NEXT:    fld fs11, 8(sp) # 8-byte Folded Reload386; RV64ID-NEXT:    addi sp, sp, 208387; RV64ID-NEXT:    ret388  %1 = bitcast i64 %a to double389  call void asm sideeffect "", "~{x0},~{x1},~{x2},~{x3},~{x4},~{x5},~{x6},~{x7},~{x8},~{x9},~{x10},~{x11},~{x12},~{x13},~{x14},~{x15},~{x16},~{x17},~{x18},~{x19},~{x20},~{x21},~{x22},~{x23},~{x24},~{x25},~{x26},~{x27},~{x28},~{x29},~{x30},~{x31},~{f0_d},~{f1_d},~{f2_d},~{f3_d},~{f4_d},~{f5_d},~{f6_d},~{f7_d},~{f8_d},~{f9_d},~{f10_d},~{f11_d},~{f12_d},~{f13_d},~{f14_d},~{f15_d},~{f16_d},~{f17_d},~{f18_d},~{f19_d},~{f20_d},~{f21_d},~{f22_d},~{f23_d},~{f24_d},~{f25_d},~{f26_d},~{f27_d},~{f28_d},~{f29_d},~{f30_d},~{f31_d}"() nounwind390  ret double %1391}392 393define i64 @spill_double_to_i64(double %a) nounwind {394; RV32ID-LABEL: spill_double_to_i64:395; RV32ID:       # %bb.0:396; RV32ID-NEXT:    addi sp, sp, -176397; RV32ID-NEXT:    sw ra, 172(sp) # 4-byte Folded Spill398; RV32ID-NEXT:    sw s0, 168(sp) # 4-byte Folded Spill399; RV32ID-NEXT:    sw s1, 164(sp) # 4-byte Folded Spill400; RV32ID-NEXT:    sw s2, 160(sp) # 4-byte Folded Spill401; RV32ID-NEXT:    sw s3, 156(sp) # 4-byte Folded Spill402; RV32ID-NEXT:    sw s4, 152(sp) # 4-byte Folded Spill403; RV32ID-NEXT:    sw s5, 148(sp) # 4-byte Folded Spill404; RV32ID-NEXT:    sw s6, 144(sp) # 4-byte Folded Spill405; RV32ID-NEXT:    sw s7, 140(sp) # 4-byte Folded Spill406; RV32ID-NEXT:    sw s8, 136(sp) # 4-byte Folded Spill407; RV32ID-NEXT:    sw s9, 132(sp) # 4-byte Folded Spill408; RV32ID-NEXT:    sw s10, 128(sp) # 4-byte Folded Spill409; RV32ID-NEXT:    sw s11, 124(sp) # 4-byte Folded Spill410; RV32ID-NEXT:    fsd fs0, 112(sp) # 8-byte Folded Spill411; RV32ID-NEXT:    fsd fs1, 104(sp) # 8-byte Folded Spill412; RV32ID-NEXT:    fsd fs2, 96(sp) # 8-byte Folded Spill413; RV32ID-NEXT:    fsd fs3, 88(sp) # 8-byte Folded Spill414; RV32ID-NEXT:    fsd fs4, 80(sp) # 8-byte Folded Spill415; RV32ID-NEXT:    fsd fs5, 72(sp) # 8-byte Folded Spill416; RV32ID-NEXT:    fsd fs6, 64(sp) # 8-byte Folded Spill417; RV32ID-NEXT:    fsd fs7, 56(sp) # 8-byte Folded Spill418; RV32ID-NEXT:    fsd fs8, 48(sp) # 8-byte Folded Spill419; RV32ID-NEXT:    fsd fs9, 40(sp) # 8-byte Folded Spill420; RV32ID-NEXT:    fsd fs10, 32(sp) # 8-byte Folded Spill421; RV32ID-NEXT:    fsd fs11, 24(sp) # 8-byte Folded Spill422; RV32ID-NEXT:    fsd fa0, 16(sp)423; RV32ID-NEXT:    lw a0, 16(sp)424; RV32ID-NEXT:    sw a0, 12(sp) # 4-byte Folded Spill425; RV32ID-NEXT:    lw a0, 20(sp)426; RV32ID-NEXT:    sw a0, 8(sp) # 4-byte Folded Spill427; RV32ID-NEXT:    #APP428; RV32ID-NEXT:    #NO_APP429; RV32ID-NEXT:    lw a0, 12(sp) # 4-byte Folded Reload430; RV32ID-NEXT:    lw a1, 8(sp) # 4-byte Folded Reload431; RV32ID-NEXT:    lw ra, 172(sp) # 4-byte Folded Reload432; RV32ID-NEXT:    lw s0, 168(sp) # 4-byte Folded Reload433; RV32ID-NEXT:    lw s1, 164(sp) # 4-byte Folded Reload434; RV32ID-NEXT:    lw s2, 160(sp) # 4-byte Folded Reload435; RV32ID-NEXT:    lw s3, 156(sp) # 4-byte Folded Reload436; RV32ID-NEXT:    lw s4, 152(sp) # 4-byte Folded Reload437; RV32ID-NEXT:    lw s5, 148(sp) # 4-byte Folded Reload438; RV32ID-NEXT:    lw s6, 144(sp) # 4-byte Folded Reload439; RV32ID-NEXT:    lw s7, 140(sp) # 4-byte Folded Reload440; RV32ID-NEXT:    lw s8, 136(sp) # 4-byte Folded Reload441; RV32ID-NEXT:    lw s9, 132(sp) # 4-byte Folded Reload442; RV32ID-NEXT:    lw s10, 128(sp) # 4-byte Folded Reload443; RV32ID-NEXT:    lw s11, 124(sp) # 4-byte Folded Reload444; RV32ID-NEXT:    fld fs0, 112(sp) # 8-byte Folded Reload445; RV32ID-NEXT:    fld fs1, 104(sp) # 8-byte Folded Reload446; RV32ID-NEXT:    fld fs2, 96(sp) # 8-byte Folded Reload447; RV32ID-NEXT:    fld fs3, 88(sp) # 8-byte Folded Reload448; RV32ID-NEXT:    fld fs4, 80(sp) # 8-byte Folded Reload449; RV32ID-NEXT:    fld fs5, 72(sp) # 8-byte Folded Reload450; RV32ID-NEXT:    fld fs6, 64(sp) # 8-byte Folded Reload451; RV32ID-NEXT:    fld fs7, 56(sp) # 8-byte Folded Reload452; RV32ID-NEXT:    fld fs8, 48(sp) # 8-byte Folded Reload453; RV32ID-NEXT:    fld fs9, 40(sp) # 8-byte Folded Reload454; RV32ID-NEXT:    fld fs10, 32(sp) # 8-byte Folded Reload455; RV32ID-NEXT:    fld fs11, 24(sp) # 8-byte Folded Reload456; RV32ID-NEXT:    addi sp, sp, 176457; RV32ID-NEXT:    ret458;459; RV64ID-LABEL: spill_double_to_i64:460; RV64ID:       # %bb.0:461; RV64ID-NEXT:    addi sp, sp, -208462; RV64ID-NEXT:    sd ra, 200(sp) # 8-byte Folded Spill463; RV64ID-NEXT:    sd s0, 192(sp) # 8-byte Folded Spill464; RV64ID-NEXT:    sd s1, 184(sp) # 8-byte Folded Spill465; RV64ID-NEXT:    sd s2, 176(sp) # 8-byte Folded Spill466; RV64ID-NEXT:    sd s3, 168(sp) # 8-byte Folded Spill467; RV64ID-NEXT:    sd s4, 160(sp) # 8-byte Folded Spill468; RV64ID-NEXT:    sd s5, 152(sp) # 8-byte Folded Spill469; RV64ID-NEXT:    sd s6, 144(sp) # 8-byte Folded Spill470; RV64ID-NEXT:    sd s7, 136(sp) # 8-byte Folded Spill471; RV64ID-NEXT:    sd s8, 128(sp) # 8-byte Folded Spill472; RV64ID-NEXT:    sd s9, 120(sp) # 8-byte Folded Spill473; RV64ID-NEXT:    sd s10, 112(sp) # 8-byte Folded Spill474; RV64ID-NEXT:    sd s11, 104(sp) # 8-byte Folded Spill475; RV64ID-NEXT:    fsd fs0, 96(sp) # 8-byte Folded Spill476; RV64ID-NEXT:    fsd fs1, 88(sp) # 8-byte Folded Spill477; RV64ID-NEXT:    fsd fs2, 80(sp) # 8-byte Folded Spill478; RV64ID-NEXT:    fsd fs3, 72(sp) # 8-byte Folded Spill479; RV64ID-NEXT:    fsd fs4, 64(sp) # 8-byte Folded Spill480; RV64ID-NEXT:    fsd fs5, 56(sp) # 8-byte Folded Spill481; RV64ID-NEXT:    fsd fs6, 48(sp) # 8-byte Folded Spill482; RV64ID-NEXT:    fsd fs7, 40(sp) # 8-byte Folded Spill483; RV64ID-NEXT:    fsd fs8, 32(sp) # 8-byte Folded Spill484; RV64ID-NEXT:    fsd fs9, 24(sp) # 8-byte Folded Spill485; RV64ID-NEXT:    fsd fs10, 16(sp) # 8-byte Folded Spill486; RV64ID-NEXT:    fsd fs11, 8(sp) # 8-byte Folded Spill487; RV64ID-NEXT:    fmv.x.d a0, fa0488; RV64ID-NEXT:    sd a0, 0(sp) # 8-byte Folded Spill489; RV64ID-NEXT:    #APP490; RV64ID-NEXT:    #NO_APP491; RV64ID-NEXT:    ld a0, 0(sp) # 8-byte Folded Reload492; RV64ID-NEXT:    ld ra, 200(sp) # 8-byte Folded Reload493; RV64ID-NEXT:    ld s0, 192(sp) # 8-byte Folded Reload494; RV64ID-NEXT:    ld s1, 184(sp) # 8-byte Folded Reload495; RV64ID-NEXT:    ld s2, 176(sp) # 8-byte Folded Reload496; RV64ID-NEXT:    ld s3, 168(sp) # 8-byte Folded Reload497; RV64ID-NEXT:    ld s4, 160(sp) # 8-byte Folded Reload498; RV64ID-NEXT:    ld s5, 152(sp) # 8-byte Folded Reload499; RV64ID-NEXT:    ld s6, 144(sp) # 8-byte Folded Reload500; RV64ID-NEXT:    ld s7, 136(sp) # 8-byte Folded Reload501; RV64ID-NEXT:    ld s8, 128(sp) # 8-byte Folded Reload502; RV64ID-NEXT:    ld s9, 120(sp) # 8-byte Folded Reload503; RV64ID-NEXT:    ld s10, 112(sp) # 8-byte Folded Reload504; RV64ID-NEXT:    ld s11, 104(sp) # 8-byte Folded Reload505; RV64ID-NEXT:    fld fs0, 96(sp) # 8-byte Folded Reload506; RV64ID-NEXT:    fld fs1, 88(sp) # 8-byte Folded Reload507; RV64ID-NEXT:    fld fs2, 80(sp) # 8-byte Folded Reload508; RV64ID-NEXT:    fld fs3, 72(sp) # 8-byte Folded Reload509; RV64ID-NEXT:    fld fs4, 64(sp) # 8-byte Folded Reload510; RV64ID-NEXT:    fld fs5, 56(sp) # 8-byte Folded Reload511; RV64ID-NEXT:    fld fs6, 48(sp) # 8-byte Folded Reload512; RV64ID-NEXT:    fld fs7, 40(sp) # 8-byte Folded Reload513; RV64ID-NEXT:    fld fs8, 32(sp) # 8-byte Folded Reload514; RV64ID-NEXT:    fld fs9, 24(sp) # 8-byte Folded Reload515; RV64ID-NEXT:    fld fs10, 16(sp) # 8-byte Folded Reload516; RV64ID-NEXT:    fld fs11, 8(sp) # 8-byte Folded Reload517; RV64ID-NEXT:    addi sp, sp, 208518; RV64ID-NEXT:    ret519  %1 = bitcast double %a to i64520  call void asm sideeffect "", "~{x0},~{x1},~{x2},~{x3},~{x4},~{x5},~{x6},~{x7},~{x8},~{x9},~{x10},~{x11},~{x12},~{x13},~{x14},~{x15},~{x16},~{x17},~{x18},~{x19},~{x20},~{x21},~{x22},~{x23},~{x24},~{x25},~{x26},~{x27},~{x28},~{x29},~{x30},~{x31},~{f0_d},~{f1_d},~{f2_d},~{f3_d},~{f4_d},~{f5_d},~{f6_d},~{f7_d},~{f8_d},~{f9_d},~{f10_d},~{f11_d},~{f12_d},~{f13_d},~{f14_d},~{f15_d},~{f16_d},~{f17_d},~{f18_d},~{f19_d},~{f20_d},~{f21_d},~{f22_d},~{f23_d},~{f24_d},~{f25_d},~{f26_d},~{f27_d},~{f28_d},~{f29_d},~{f30_d},~{f31_d}"() nounwind521  ret i64 %1522}523 524define float @fill_i32_to_float(i32 %a) nounwind {525; RV32ID-LABEL: fill_i32_to_float:526; RV32ID:       # %bb.0:527; RV32ID-NEXT:    addi sp, sp, -160528; RV32ID-NEXT:    sw ra, 156(sp) # 4-byte Folded Spill529; RV32ID-NEXT:    sw s0, 152(sp) # 4-byte Folded Spill530; RV32ID-NEXT:    sw s1, 148(sp) # 4-byte Folded Spill531; RV32ID-NEXT:    sw s2, 144(sp) # 4-byte Folded Spill532; RV32ID-NEXT:    sw s3, 140(sp) # 4-byte Folded Spill533; RV32ID-NEXT:    sw s4, 136(sp) # 4-byte Folded Spill534; RV32ID-NEXT:    sw s5, 132(sp) # 4-byte Folded Spill535; RV32ID-NEXT:    sw s6, 128(sp) # 4-byte Folded Spill536; RV32ID-NEXT:    sw s7, 124(sp) # 4-byte Folded Spill537; RV32ID-NEXT:    sw s8, 120(sp) # 4-byte Folded Spill538; RV32ID-NEXT:    sw s9, 116(sp) # 4-byte Folded Spill539; RV32ID-NEXT:    sw s10, 112(sp) # 4-byte Folded Spill540; RV32ID-NEXT:    sw s11, 108(sp) # 4-byte Folded Spill541; RV32ID-NEXT:    fsd fs0, 96(sp) # 8-byte Folded Spill542; RV32ID-NEXT:    fsd fs1, 88(sp) # 8-byte Folded Spill543; RV32ID-NEXT:    fsd fs2, 80(sp) # 8-byte Folded Spill544; RV32ID-NEXT:    fsd fs3, 72(sp) # 8-byte Folded Spill545; RV32ID-NEXT:    fsd fs4, 64(sp) # 8-byte Folded Spill546; RV32ID-NEXT:    fsd fs5, 56(sp) # 8-byte Folded Spill547; RV32ID-NEXT:    fsd fs6, 48(sp) # 8-byte Folded Spill548; RV32ID-NEXT:    fsd fs7, 40(sp) # 8-byte Folded Spill549; RV32ID-NEXT:    fsd fs8, 32(sp) # 8-byte Folded Spill550; RV32ID-NEXT:    fsd fs9, 24(sp) # 8-byte Folded Spill551; RV32ID-NEXT:    fsd fs10, 16(sp) # 8-byte Folded Spill552; RV32ID-NEXT:    fsd fs11, 8(sp) # 8-byte Folded Spill553; RV32ID-NEXT:    sw a0, 4(sp) # 4-byte Folded Spill554; RV32ID-NEXT:    #APP555; RV32ID-NEXT:    #NO_APP556; RV32ID-NEXT:    lw a0, 4(sp) # 4-byte Folded Reload557; RV32ID-NEXT:    fmv.w.x fa0, a0558; RV32ID-NEXT:    lw ra, 156(sp) # 4-byte Folded Reload559; RV32ID-NEXT:    lw s0, 152(sp) # 4-byte Folded Reload560; RV32ID-NEXT:    lw s1, 148(sp) # 4-byte Folded Reload561; RV32ID-NEXT:    lw s2, 144(sp) # 4-byte Folded Reload562; RV32ID-NEXT:    lw s3, 140(sp) # 4-byte Folded Reload563; RV32ID-NEXT:    lw s4, 136(sp) # 4-byte Folded Reload564; RV32ID-NEXT:    lw s5, 132(sp) # 4-byte Folded Reload565; RV32ID-NEXT:    lw s6, 128(sp) # 4-byte Folded Reload566; RV32ID-NEXT:    lw s7, 124(sp) # 4-byte Folded Reload567; RV32ID-NEXT:    lw s8, 120(sp) # 4-byte Folded Reload568; RV32ID-NEXT:    lw s9, 116(sp) # 4-byte Folded Reload569; RV32ID-NEXT:    lw s10, 112(sp) # 4-byte Folded Reload570; RV32ID-NEXT:    lw s11, 108(sp) # 4-byte Folded Reload571; RV32ID-NEXT:    fld fs0, 96(sp) # 8-byte Folded Reload572; RV32ID-NEXT:    fld fs1, 88(sp) # 8-byte Folded Reload573; RV32ID-NEXT:    fld fs2, 80(sp) # 8-byte Folded Reload574; RV32ID-NEXT:    fld fs3, 72(sp) # 8-byte Folded Reload575; RV32ID-NEXT:    fld fs4, 64(sp) # 8-byte Folded Reload576; RV32ID-NEXT:    fld fs5, 56(sp) # 8-byte Folded Reload577; RV32ID-NEXT:    fld fs6, 48(sp) # 8-byte Folded Reload578; RV32ID-NEXT:    fld fs7, 40(sp) # 8-byte Folded Reload579; RV32ID-NEXT:    fld fs8, 32(sp) # 8-byte Folded Reload580; RV32ID-NEXT:    fld fs9, 24(sp) # 8-byte Folded Reload581; RV32ID-NEXT:    fld fs10, 16(sp) # 8-byte Folded Reload582; RV32ID-NEXT:    fld fs11, 8(sp) # 8-byte Folded Reload583; RV32ID-NEXT:    addi sp, sp, 160584; RV32ID-NEXT:    ret585;586; RV64ID-LABEL: fill_i32_to_float:587; RV64ID:       # %bb.0:588; RV64ID-NEXT:    addi sp, sp, -208589; RV64ID-NEXT:    sd ra, 200(sp) # 8-byte Folded Spill590; RV64ID-NEXT:    sd s0, 192(sp) # 8-byte Folded Spill591; RV64ID-NEXT:    sd s1, 184(sp) # 8-byte Folded Spill592; RV64ID-NEXT:    sd s2, 176(sp) # 8-byte Folded Spill593; RV64ID-NEXT:    sd s3, 168(sp) # 8-byte Folded Spill594; RV64ID-NEXT:    sd s4, 160(sp) # 8-byte Folded Spill595; RV64ID-NEXT:    sd s5, 152(sp) # 8-byte Folded Spill596; RV64ID-NEXT:    sd s6, 144(sp) # 8-byte Folded Spill597; RV64ID-NEXT:    sd s7, 136(sp) # 8-byte Folded Spill598; RV64ID-NEXT:    sd s8, 128(sp) # 8-byte Folded Spill599; RV64ID-NEXT:    sd s9, 120(sp) # 8-byte Folded Spill600; RV64ID-NEXT:    sd s10, 112(sp) # 8-byte Folded Spill601; RV64ID-NEXT:    sd s11, 104(sp) # 8-byte Folded Spill602; RV64ID-NEXT:    fsd fs0, 96(sp) # 8-byte Folded Spill603; RV64ID-NEXT:    fsd fs1, 88(sp) # 8-byte Folded Spill604; RV64ID-NEXT:    fsd fs2, 80(sp) # 8-byte Folded Spill605; RV64ID-NEXT:    fsd fs3, 72(sp) # 8-byte Folded Spill606; RV64ID-NEXT:    fsd fs4, 64(sp) # 8-byte Folded Spill607; RV64ID-NEXT:    fsd fs5, 56(sp) # 8-byte Folded Spill608; RV64ID-NEXT:    fsd fs6, 48(sp) # 8-byte Folded Spill609; RV64ID-NEXT:    fsd fs7, 40(sp) # 8-byte Folded Spill610; RV64ID-NEXT:    fsd fs8, 32(sp) # 8-byte Folded Spill611; RV64ID-NEXT:    fsd fs9, 24(sp) # 8-byte Folded Spill612; RV64ID-NEXT:    fsd fs10, 16(sp) # 8-byte Folded Spill613; RV64ID-NEXT:    fsd fs11, 8(sp) # 8-byte Folded Spill614; RV64ID-NEXT:    sd a0, 0(sp) # 8-byte Folded Spill615; RV64ID-NEXT:    #APP616; RV64ID-NEXT:    #NO_APP617; RV64ID-NEXT:    ld a0, 0(sp) # 8-byte Folded Reload618; RV64ID-NEXT:    fmv.w.x fa0, a0619; RV64ID-NEXT:    ld ra, 200(sp) # 8-byte Folded Reload620; RV64ID-NEXT:    ld s0, 192(sp) # 8-byte Folded Reload621; RV64ID-NEXT:    ld s1, 184(sp) # 8-byte Folded Reload622; RV64ID-NEXT:    ld s2, 176(sp) # 8-byte Folded Reload623; RV64ID-NEXT:    ld s3, 168(sp) # 8-byte Folded Reload624; RV64ID-NEXT:    ld s4, 160(sp) # 8-byte Folded Reload625; RV64ID-NEXT:    ld s5, 152(sp) # 8-byte Folded Reload626; RV64ID-NEXT:    ld s6, 144(sp) # 8-byte Folded Reload627; RV64ID-NEXT:    ld s7, 136(sp) # 8-byte Folded Reload628; RV64ID-NEXT:    ld s8, 128(sp) # 8-byte Folded Reload629; RV64ID-NEXT:    ld s9, 120(sp) # 8-byte Folded Reload630; RV64ID-NEXT:    ld s10, 112(sp) # 8-byte Folded Reload631; RV64ID-NEXT:    ld s11, 104(sp) # 8-byte Folded Reload632; RV64ID-NEXT:    fld fs0, 96(sp) # 8-byte Folded Reload633; RV64ID-NEXT:    fld fs1, 88(sp) # 8-byte Folded Reload634; RV64ID-NEXT:    fld fs2, 80(sp) # 8-byte Folded Reload635; RV64ID-NEXT:    fld fs3, 72(sp) # 8-byte Folded Reload636; RV64ID-NEXT:    fld fs4, 64(sp) # 8-byte Folded Reload637; RV64ID-NEXT:    fld fs5, 56(sp) # 8-byte Folded Reload638; RV64ID-NEXT:    fld fs6, 48(sp) # 8-byte Folded Reload639; RV64ID-NEXT:    fld fs7, 40(sp) # 8-byte Folded Reload640; RV64ID-NEXT:    fld fs8, 32(sp) # 8-byte Folded Reload641; RV64ID-NEXT:    fld fs9, 24(sp) # 8-byte Folded Reload642; RV64ID-NEXT:    fld fs10, 16(sp) # 8-byte Folded Reload643; RV64ID-NEXT:    fld fs11, 8(sp) # 8-byte Folded Reload644; RV64ID-NEXT:    addi sp, sp, 208645; RV64ID-NEXT:    ret646  call void asm sideeffect "", "~{x0},~{x1},~{x2},~{x3},~{x4},~{x5},~{x6},~{x7},~{x8},~{x9},~{x10},~{x11},~{x12},~{x13},~{x14},~{x15},~{x16},~{x17},~{x18},~{x19},~{x20},~{x21},~{x22},~{x23},~{x24},~{x25},~{x26},~{x27},~{x28},~{x29},~{x30},~{x31},~{f0_d},~{f1_d},~{f2_d},~{f3_d},~{f4_d},~{f5_d},~{f6_d},~{f7_d},~{f8_d},~{f9_d},~{f10_d},~{f11_d},~{f12_d},~{f13_d},~{f14_d},~{f15_d},~{f16_d},~{f17_d},~{f18_d},~{f19_d},~{f20_d},~{f21_d},~{f22_d},~{f23_d},~{f24_d},~{f25_d},~{f26_d},~{f27_d},~{f28_d},~{f29_d},~{f30_d},~{f31_d}"() nounwind647  %1 = bitcast i32 %a to float648  ret float %1649}650 651define i32 @fill_float_to_i32(float %a) nounwind {652; RV32ID-LABEL: fill_float_to_i32:653; RV32ID:       # %bb.0:654; RV32ID-NEXT:    addi sp, sp, -160655; RV32ID-NEXT:    sw ra, 156(sp) # 4-byte Folded Spill656; RV32ID-NEXT:    sw s0, 152(sp) # 4-byte Folded Spill657; RV32ID-NEXT:    sw s1, 148(sp) # 4-byte Folded Spill658; RV32ID-NEXT:    sw s2, 144(sp) # 4-byte Folded Spill659; RV32ID-NEXT:    sw s3, 140(sp) # 4-byte Folded Spill660; RV32ID-NEXT:    sw s4, 136(sp) # 4-byte Folded Spill661; RV32ID-NEXT:    sw s5, 132(sp) # 4-byte Folded Spill662; RV32ID-NEXT:    sw s6, 128(sp) # 4-byte Folded Spill663; RV32ID-NEXT:    sw s7, 124(sp) # 4-byte Folded Spill664; RV32ID-NEXT:    sw s8, 120(sp) # 4-byte Folded Spill665; RV32ID-NEXT:    sw s9, 116(sp) # 4-byte Folded Spill666; RV32ID-NEXT:    sw s10, 112(sp) # 4-byte Folded Spill667; RV32ID-NEXT:    sw s11, 108(sp) # 4-byte Folded Spill668; RV32ID-NEXT:    fsd fs0, 96(sp) # 8-byte Folded Spill669; RV32ID-NEXT:    fsd fs1, 88(sp) # 8-byte Folded Spill670; RV32ID-NEXT:    fsd fs2, 80(sp) # 8-byte Folded Spill671; RV32ID-NEXT:    fsd fs3, 72(sp) # 8-byte Folded Spill672; RV32ID-NEXT:    fsd fs4, 64(sp) # 8-byte Folded Spill673; RV32ID-NEXT:    fsd fs5, 56(sp) # 8-byte Folded Spill674; RV32ID-NEXT:    fsd fs6, 48(sp) # 8-byte Folded Spill675; RV32ID-NEXT:    fsd fs7, 40(sp) # 8-byte Folded Spill676; RV32ID-NEXT:    fsd fs8, 32(sp) # 8-byte Folded Spill677; RV32ID-NEXT:    fsd fs9, 24(sp) # 8-byte Folded Spill678; RV32ID-NEXT:    fsd fs10, 16(sp) # 8-byte Folded Spill679; RV32ID-NEXT:    fsd fs11, 8(sp) # 8-byte Folded Spill680; RV32ID-NEXT:    fsw fa0, 4(sp) # 4-byte Folded Spill681; RV32ID-NEXT:    #APP682; RV32ID-NEXT:    #NO_APP683; RV32ID-NEXT:    flw fa5, 4(sp) # 4-byte Folded Reload684; RV32ID-NEXT:    fmv.x.w a0, fa5685; RV32ID-NEXT:    lw ra, 156(sp) # 4-byte Folded Reload686; RV32ID-NEXT:    lw s0, 152(sp) # 4-byte Folded Reload687; RV32ID-NEXT:    lw s1, 148(sp) # 4-byte Folded Reload688; RV32ID-NEXT:    lw s2, 144(sp) # 4-byte Folded Reload689; RV32ID-NEXT:    lw s3, 140(sp) # 4-byte Folded Reload690; RV32ID-NEXT:    lw s4, 136(sp) # 4-byte Folded Reload691; RV32ID-NEXT:    lw s5, 132(sp) # 4-byte Folded Reload692; RV32ID-NEXT:    lw s6, 128(sp) # 4-byte Folded Reload693; RV32ID-NEXT:    lw s7, 124(sp) # 4-byte Folded Reload694; RV32ID-NEXT:    lw s8, 120(sp) # 4-byte Folded Reload695; RV32ID-NEXT:    lw s9, 116(sp) # 4-byte Folded Reload696; RV32ID-NEXT:    lw s10, 112(sp) # 4-byte Folded Reload697; RV32ID-NEXT:    lw s11, 108(sp) # 4-byte Folded Reload698; RV32ID-NEXT:    fld fs0, 96(sp) # 8-byte Folded Reload699; RV32ID-NEXT:    fld fs1, 88(sp) # 8-byte Folded Reload700; RV32ID-NEXT:    fld fs2, 80(sp) # 8-byte Folded Reload701; RV32ID-NEXT:    fld fs3, 72(sp) # 8-byte Folded Reload702; RV32ID-NEXT:    fld fs4, 64(sp) # 8-byte Folded Reload703; RV32ID-NEXT:    fld fs5, 56(sp) # 8-byte Folded Reload704; RV32ID-NEXT:    fld fs6, 48(sp) # 8-byte Folded Reload705; RV32ID-NEXT:    fld fs7, 40(sp) # 8-byte Folded Reload706; RV32ID-NEXT:    fld fs8, 32(sp) # 8-byte Folded Reload707; RV32ID-NEXT:    fld fs9, 24(sp) # 8-byte Folded Reload708; RV32ID-NEXT:    fld fs10, 16(sp) # 8-byte Folded Reload709; RV32ID-NEXT:    fld fs11, 8(sp) # 8-byte Folded Reload710; RV32ID-NEXT:    addi sp, sp, 160711; RV32ID-NEXT:    ret712;713; RV64ID-LABEL: fill_float_to_i32:714; RV64ID:       # %bb.0:715; RV64ID-NEXT:    addi sp, sp, -208716; RV64ID-NEXT:    sd ra, 200(sp) # 8-byte Folded Spill717; RV64ID-NEXT:    sd s0, 192(sp) # 8-byte Folded Spill718; RV64ID-NEXT:    sd s1, 184(sp) # 8-byte Folded Spill719; RV64ID-NEXT:    sd s2, 176(sp) # 8-byte Folded Spill720; RV64ID-NEXT:    sd s3, 168(sp) # 8-byte Folded Spill721; RV64ID-NEXT:    sd s4, 160(sp) # 8-byte Folded Spill722; RV64ID-NEXT:    sd s5, 152(sp) # 8-byte Folded Spill723; RV64ID-NEXT:    sd s6, 144(sp) # 8-byte Folded Spill724; RV64ID-NEXT:    sd s7, 136(sp) # 8-byte Folded Spill725; RV64ID-NEXT:    sd s8, 128(sp) # 8-byte Folded Spill726; RV64ID-NEXT:    sd s9, 120(sp) # 8-byte Folded Spill727; RV64ID-NEXT:    sd s10, 112(sp) # 8-byte Folded Spill728; RV64ID-NEXT:    sd s11, 104(sp) # 8-byte Folded Spill729; RV64ID-NEXT:    fsd fs0, 96(sp) # 8-byte Folded Spill730; RV64ID-NEXT:    fsd fs1, 88(sp) # 8-byte Folded Spill731; RV64ID-NEXT:    fsd fs2, 80(sp) # 8-byte Folded Spill732; RV64ID-NEXT:    fsd fs3, 72(sp) # 8-byte Folded Spill733; RV64ID-NEXT:    fsd fs4, 64(sp) # 8-byte Folded Spill734; RV64ID-NEXT:    fsd fs5, 56(sp) # 8-byte Folded Spill735; RV64ID-NEXT:    fsd fs6, 48(sp) # 8-byte Folded Spill736; RV64ID-NEXT:    fsd fs7, 40(sp) # 8-byte Folded Spill737; RV64ID-NEXT:    fsd fs8, 32(sp) # 8-byte Folded Spill738; RV64ID-NEXT:    fsd fs9, 24(sp) # 8-byte Folded Spill739; RV64ID-NEXT:    fsd fs10, 16(sp) # 8-byte Folded Spill740; RV64ID-NEXT:    fsd fs11, 8(sp) # 8-byte Folded Spill741; RV64ID-NEXT:    fsw fa0, 4(sp) # 4-byte Folded Spill742; RV64ID-NEXT:    #APP743; RV64ID-NEXT:    #NO_APP744; RV64ID-NEXT:    flw fa5, 4(sp) # 4-byte Folded Reload745; RV64ID-NEXT:    fmv.x.w a0, fa5746; RV64ID-NEXT:    ld ra, 200(sp) # 8-byte Folded Reload747; RV64ID-NEXT:    ld s0, 192(sp) # 8-byte Folded Reload748; RV64ID-NEXT:    ld s1, 184(sp) # 8-byte Folded Reload749; RV64ID-NEXT:    ld s2, 176(sp) # 8-byte Folded Reload750; RV64ID-NEXT:    ld s3, 168(sp) # 8-byte Folded Reload751; RV64ID-NEXT:    ld s4, 160(sp) # 8-byte Folded Reload752; RV64ID-NEXT:    ld s5, 152(sp) # 8-byte Folded Reload753; RV64ID-NEXT:    ld s6, 144(sp) # 8-byte Folded Reload754; RV64ID-NEXT:    ld s7, 136(sp) # 8-byte Folded Reload755; RV64ID-NEXT:    ld s8, 128(sp) # 8-byte Folded Reload756; RV64ID-NEXT:    ld s9, 120(sp) # 8-byte Folded Reload757; RV64ID-NEXT:    ld s10, 112(sp) # 8-byte Folded Reload758; RV64ID-NEXT:    ld s11, 104(sp) # 8-byte Folded Reload759; RV64ID-NEXT:    fld fs0, 96(sp) # 8-byte Folded Reload760; RV64ID-NEXT:    fld fs1, 88(sp) # 8-byte Folded Reload761; RV64ID-NEXT:    fld fs2, 80(sp) # 8-byte Folded Reload762; RV64ID-NEXT:    fld fs3, 72(sp) # 8-byte Folded Reload763; RV64ID-NEXT:    fld fs4, 64(sp) # 8-byte Folded Reload764; RV64ID-NEXT:    fld fs5, 56(sp) # 8-byte Folded Reload765; RV64ID-NEXT:    fld fs6, 48(sp) # 8-byte Folded Reload766; RV64ID-NEXT:    fld fs7, 40(sp) # 8-byte Folded Reload767; RV64ID-NEXT:    fld fs8, 32(sp) # 8-byte Folded Reload768; RV64ID-NEXT:    fld fs9, 24(sp) # 8-byte Folded Reload769; RV64ID-NEXT:    fld fs10, 16(sp) # 8-byte Folded Reload770; RV64ID-NEXT:    fld fs11, 8(sp) # 8-byte Folded Reload771; RV64ID-NEXT:    addi sp, sp, 208772; RV64ID-NEXT:    ret773  call void asm sideeffect "", "~{x0},~{x1},~{x2},~{x3},~{x4},~{x5},~{x6},~{x7},~{x8},~{x9},~{x10},~{x11},~{x12},~{x13},~{x14},~{x15},~{x16},~{x17},~{x18},~{x19},~{x20},~{x21},~{x22},~{x23},~{x24},~{x25},~{x26},~{x27},~{x28},~{x29},~{x30},~{x31},~{f0_d},~{f1_d},~{f2_d},~{f3_d},~{f4_d},~{f5_d},~{f6_d},~{f7_d},~{f8_d},~{f9_d},~{f10_d},~{f11_d},~{f12_d},~{f13_d},~{f14_d},~{f15_d},~{f16_d},~{f17_d},~{f18_d},~{f19_d},~{f20_d},~{f21_d},~{f22_d},~{f23_d},~{f24_d},~{f25_d},~{f26_d},~{f27_d},~{f28_d},~{f29_d},~{f30_d},~{f31_d}"() nounwind774  %1 = bitcast float %a to i32775  ret i32 %1776}777 778define double @fill_i64_to_double(i64 %a) nounwind {779; RV32ID-LABEL: fill_i64_to_double:780; RV32ID:       # %bb.0:781; RV32ID-NEXT:    addi sp, sp, -176782; RV32ID-NEXT:    sw ra, 172(sp) # 4-byte Folded Spill783; RV32ID-NEXT:    sw s0, 168(sp) # 4-byte Folded Spill784; RV32ID-NEXT:    sw s1, 164(sp) # 4-byte Folded Spill785; RV32ID-NEXT:    sw s2, 160(sp) # 4-byte Folded Spill786; RV32ID-NEXT:    sw s3, 156(sp) # 4-byte Folded Spill787; RV32ID-NEXT:    sw s4, 152(sp) # 4-byte Folded Spill788; RV32ID-NEXT:    sw s5, 148(sp) # 4-byte Folded Spill789; RV32ID-NEXT:    sw s6, 144(sp) # 4-byte Folded Spill790; RV32ID-NEXT:    sw s7, 140(sp) # 4-byte Folded Spill791; RV32ID-NEXT:    sw s8, 136(sp) # 4-byte Folded Spill792; RV32ID-NEXT:    sw s9, 132(sp) # 4-byte Folded Spill793; RV32ID-NEXT:    sw s10, 128(sp) # 4-byte Folded Spill794; RV32ID-NEXT:    sw s11, 124(sp) # 4-byte Folded Spill795; RV32ID-NEXT:    fsd fs0, 112(sp) # 8-byte Folded Spill796; RV32ID-NEXT:    fsd fs1, 104(sp) # 8-byte Folded Spill797; RV32ID-NEXT:    fsd fs2, 96(sp) # 8-byte Folded Spill798; RV32ID-NEXT:    fsd fs3, 88(sp) # 8-byte Folded Spill799; RV32ID-NEXT:    fsd fs4, 80(sp) # 8-byte Folded Spill800; RV32ID-NEXT:    fsd fs5, 72(sp) # 8-byte Folded Spill801; RV32ID-NEXT:    fsd fs6, 64(sp) # 8-byte Folded Spill802; RV32ID-NEXT:    fsd fs7, 56(sp) # 8-byte Folded Spill803; RV32ID-NEXT:    fsd fs8, 48(sp) # 8-byte Folded Spill804; RV32ID-NEXT:    fsd fs9, 40(sp) # 8-byte Folded Spill805; RV32ID-NEXT:    fsd fs10, 32(sp) # 8-byte Folded Spill806; RV32ID-NEXT:    fsd fs11, 24(sp) # 8-byte Folded Spill807; RV32ID-NEXT:    sw a1, 12(sp) # 4-byte Folded Spill808; RV32ID-NEXT:    sw a0, 8(sp) # 4-byte Folded Spill809; RV32ID-NEXT:    #APP810; RV32ID-NEXT:    #NO_APP811; RV32ID-NEXT:    lw a0, 8(sp) # 4-byte Folded Reload812; RV32ID-NEXT:    sw a0, 16(sp)813; RV32ID-NEXT:    lw a0, 12(sp) # 4-byte Folded Reload814; RV32ID-NEXT:    sw a0, 20(sp)815; RV32ID-NEXT:    fld fa0, 16(sp)816; RV32ID-NEXT:    lw ra, 172(sp) # 4-byte Folded Reload817; RV32ID-NEXT:    lw s0, 168(sp) # 4-byte Folded Reload818; RV32ID-NEXT:    lw s1, 164(sp) # 4-byte Folded Reload819; RV32ID-NEXT:    lw s2, 160(sp) # 4-byte Folded Reload820; RV32ID-NEXT:    lw s3, 156(sp) # 4-byte Folded Reload821; RV32ID-NEXT:    lw s4, 152(sp) # 4-byte Folded Reload822; RV32ID-NEXT:    lw s5, 148(sp) # 4-byte Folded Reload823; RV32ID-NEXT:    lw s6, 144(sp) # 4-byte Folded Reload824; RV32ID-NEXT:    lw s7, 140(sp) # 4-byte Folded Reload825; RV32ID-NEXT:    lw s8, 136(sp) # 4-byte Folded Reload826; RV32ID-NEXT:    lw s9, 132(sp) # 4-byte Folded Reload827; RV32ID-NEXT:    lw s10, 128(sp) # 4-byte Folded Reload828; RV32ID-NEXT:    lw s11, 124(sp) # 4-byte Folded Reload829; RV32ID-NEXT:    fld fs0, 112(sp) # 8-byte Folded Reload830; RV32ID-NEXT:    fld fs1, 104(sp) # 8-byte Folded Reload831; RV32ID-NEXT:    fld fs2, 96(sp) # 8-byte Folded Reload832; RV32ID-NEXT:    fld fs3, 88(sp) # 8-byte Folded Reload833; RV32ID-NEXT:    fld fs4, 80(sp) # 8-byte Folded Reload834; RV32ID-NEXT:    fld fs5, 72(sp) # 8-byte Folded Reload835; RV32ID-NEXT:    fld fs6, 64(sp) # 8-byte Folded Reload836; RV32ID-NEXT:    fld fs7, 56(sp) # 8-byte Folded Reload837; RV32ID-NEXT:    fld fs8, 48(sp) # 8-byte Folded Reload838; RV32ID-NEXT:    fld fs9, 40(sp) # 8-byte Folded Reload839; RV32ID-NEXT:    fld fs10, 32(sp) # 8-byte Folded Reload840; RV32ID-NEXT:    fld fs11, 24(sp) # 8-byte Folded Reload841; RV32ID-NEXT:    addi sp, sp, 176842; RV32ID-NEXT:    ret843;844; RV64ID-LABEL: fill_i64_to_double:845; RV64ID:       # %bb.0:846; RV64ID-NEXT:    addi sp, sp, -208847; RV64ID-NEXT:    sd ra, 200(sp) # 8-byte Folded Spill848; RV64ID-NEXT:    sd s0, 192(sp) # 8-byte Folded Spill849; RV64ID-NEXT:    sd s1, 184(sp) # 8-byte Folded Spill850; RV64ID-NEXT:    sd s2, 176(sp) # 8-byte Folded Spill851; RV64ID-NEXT:    sd s3, 168(sp) # 8-byte Folded Spill852; RV64ID-NEXT:    sd s4, 160(sp) # 8-byte Folded Spill853; RV64ID-NEXT:    sd s5, 152(sp) # 8-byte Folded Spill854; RV64ID-NEXT:    sd s6, 144(sp) # 8-byte Folded Spill855; RV64ID-NEXT:    sd s7, 136(sp) # 8-byte Folded Spill856; RV64ID-NEXT:    sd s8, 128(sp) # 8-byte Folded Spill857; RV64ID-NEXT:    sd s9, 120(sp) # 8-byte Folded Spill858; RV64ID-NEXT:    sd s10, 112(sp) # 8-byte Folded Spill859; RV64ID-NEXT:    sd s11, 104(sp) # 8-byte Folded Spill860; RV64ID-NEXT:    fsd fs0, 96(sp) # 8-byte Folded Spill861; RV64ID-NEXT:    fsd fs1, 88(sp) # 8-byte Folded Spill862; RV64ID-NEXT:    fsd fs2, 80(sp) # 8-byte Folded Spill863; RV64ID-NEXT:    fsd fs3, 72(sp) # 8-byte Folded Spill864; RV64ID-NEXT:    fsd fs4, 64(sp) # 8-byte Folded Spill865; RV64ID-NEXT:    fsd fs5, 56(sp) # 8-byte Folded Spill866; RV64ID-NEXT:    fsd fs6, 48(sp) # 8-byte Folded Spill867; RV64ID-NEXT:    fsd fs7, 40(sp) # 8-byte Folded Spill868; RV64ID-NEXT:    fsd fs8, 32(sp) # 8-byte Folded Spill869; RV64ID-NEXT:    fsd fs9, 24(sp) # 8-byte Folded Spill870; RV64ID-NEXT:    fsd fs10, 16(sp) # 8-byte Folded Spill871; RV64ID-NEXT:    fsd fs11, 8(sp) # 8-byte Folded Spill872; RV64ID-NEXT:    sd a0, 0(sp) # 8-byte Folded Spill873; RV64ID-NEXT:    #APP874; RV64ID-NEXT:    #NO_APP875; RV64ID-NEXT:    ld a0, 0(sp) # 8-byte Folded Reload876; RV64ID-NEXT:    fmv.d.x fa0, a0877; RV64ID-NEXT:    ld ra, 200(sp) # 8-byte Folded Reload878; RV64ID-NEXT:    ld s0, 192(sp) # 8-byte Folded Reload879; RV64ID-NEXT:    ld s1, 184(sp) # 8-byte Folded Reload880; RV64ID-NEXT:    ld s2, 176(sp) # 8-byte Folded Reload881; RV64ID-NEXT:    ld s3, 168(sp) # 8-byte Folded Reload882; RV64ID-NEXT:    ld s4, 160(sp) # 8-byte Folded Reload883; RV64ID-NEXT:    ld s5, 152(sp) # 8-byte Folded Reload884; RV64ID-NEXT:    ld s6, 144(sp) # 8-byte Folded Reload885; RV64ID-NEXT:    ld s7, 136(sp) # 8-byte Folded Reload886; RV64ID-NEXT:    ld s8, 128(sp) # 8-byte Folded Reload887; RV64ID-NEXT:    ld s9, 120(sp) # 8-byte Folded Reload888; RV64ID-NEXT:    ld s10, 112(sp) # 8-byte Folded Reload889; RV64ID-NEXT:    ld s11, 104(sp) # 8-byte Folded Reload890; RV64ID-NEXT:    fld fs0, 96(sp) # 8-byte Folded Reload891; RV64ID-NEXT:    fld fs1, 88(sp) # 8-byte Folded Reload892; RV64ID-NEXT:    fld fs2, 80(sp) # 8-byte Folded Reload893; RV64ID-NEXT:    fld fs3, 72(sp) # 8-byte Folded Reload894; RV64ID-NEXT:    fld fs4, 64(sp) # 8-byte Folded Reload895; RV64ID-NEXT:    fld fs5, 56(sp) # 8-byte Folded Reload896; RV64ID-NEXT:    fld fs6, 48(sp) # 8-byte Folded Reload897; RV64ID-NEXT:    fld fs7, 40(sp) # 8-byte Folded Reload898; RV64ID-NEXT:    fld fs8, 32(sp) # 8-byte Folded Reload899; RV64ID-NEXT:    fld fs9, 24(sp) # 8-byte Folded Reload900; RV64ID-NEXT:    fld fs10, 16(sp) # 8-byte Folded Reload901; RV64ID-NEXT:    fld fs11, 8(sp) # 8-byte Folded Reload902; RV64ID-NEXT:    addi sp, sp, 208903; RV64ID-NEXT:    ret904  call void asm sideeffect "", "~{x0},~{x1},~{x2},~{x3},~{x4},~{x5},~{x6},~{x7},~{x8},~{x9},~{x10},~{x11},~{x12},~{x13},~{x14},~{x15},~{x16},~{x17},~{x18},~{x19},~{x20},~{x21},~{x22},~{x23},~{x24},~{x25},~{x26},~{x27},~{x28},~{x29},~{x30},~{x31},~{f0_d},~{f1_d},~{f2_d},~{f3_d},~{f4_d},~{f5_d},~{f6_d},~{f7_d},~{f8_d},~{f9_d},~{f10_d},~{f11_d},~{f12_d},~{f13_d},~{f14_d},~{f15_d},~{f16_d},~{f17_d},~{f18_d},~{f19_d},~{f20_d},~{f21_d},~{f22_d},~{f23_d},~{f24_d},~{f25_d},~{f26_d},~{f27_d},~{f28_d},~{f29_d},~{f30_d},~{f31_d}"() nounwind905  %1 = bitcast i64 %a to double906  ret double %1907}908 909define i64 @fill_double_to_i64(double %a) nounwind {910; RV32ID-LABEL: fill_double_to_i64:911; RV32ID:       # %bb.0:912; RV32ID-NEXT:    addi sp, sp, -176913; RV32ID-NEXT:    sw ra, 172(sp) # 4-byte Folded Spill914; RV32ID-NEXT:    sw s0, 168(sp) # 4-byte Folded Spill915; RV32ID-NEXT:    sw s1, 164(sp) # 4-byte Folded Spill916; RV32ID-NEXT:    sw s2, 160(sp) # 4-byte Folded Spill917; RV32ID-NEXT:    sw s3, 156(sp) # 4-byte Folded Spill918; RV32ID-NEXT:    sw s4, 152(sp) # 4-byte Folded Spill919; RV32ID-NEXT:    sw s5, 148(sp) # 4-byte Folded Spill920; RV32ID-NEXT:    sw s6, 144(sp) # 4-byte Folded Spill921; RV32ID-NEXT:    sw s7, 140(sp) # 4-byte Folded Spill922; RV32ID-NEXT:    sw s8, 136(sp) # 4-byte Folded Spill923; RV32ID-NEXT:    sw s9, 132(sp) # 4-byte Folded Spill924; RV32ID-NEXT:    sw s10, 128(sp) # 4-byte Folded Spill925; RV32ID-NEXT:    sw s11, 124(sp) # 4-byte Folded Spill926; RV32ID-NEXT:    fsd fs0, 112(sp) # 8-byte Folded Spill927; RV32ID-NEXT:    fsd fs1, 104(sp) # 8-byte Folded Spill928; RV32ID-NEXT:    fsd fs2, 96(sp) # 8-byte Folded Spill929; RV32ID-NEXT:    fsd fs3, 88(sp) # 8-byte Folded Spill930; RV32ID-NEXT:    fsd fs4, 80(sp) # 8-byte Folded Spill931; RV32ID-NEXT:    fsd fs5, 72(sp) # 8-byte Folded Spill932; RV32ID-NEXT:    fsd fs6, 64(sp) # 8-byte Folded Spill933; RV32ID-NEXT:    fsd fs7, 56(sp) # 8-byte Folded Spill934; RV32ID-NEXT:    fsd fs8, 48(sp) # 8-byte Folded Spill935; RV32ID-NEXT:    fsd fs9, 40(sp) # 8-byte Folded Spill936; RV32ID-NEXT:    fsd fs10, 32(sp) # 8-byte Folded Spill937; RV32ID-NEXT:    fsd fs11, 24(sp) # 8-byte Folded Spill938; RV32ID-NEXT:    fsd fa0, 8(sp) # 8-byte Folded Spill939; RV32ID-NEXT:    #APP940; RV32ID-NEXT:    #NO_APP941; RV32ID-NEXT:    fld fa5, 8(sp) # 8-byte Folded Reload942; RV32ID-NEXT:    fsd fa5, 16(sp)943; RV32ID-NEXT:    lw a0, 16(sp)944; RV32ID-NEXT:    lw a1, 20(sp)945; RV32ID-NEXT:    lw ra, 172(sp) # 4-byte Folded Reload946; RV32ID-NEXT:    lw s0, 168(sp) # 4-byte Folded Reload947; RV32ID-NEXT:    lw s1, 164(sp) # 4-byte Folded Reload948; RV32ID-NEXT:    lw s2, 160(sp) # 4-byte Folded Reload949; RV32ID-NEXT:    lw s3, 156(sp) # 4-byte Folded Reload950; RV32ID-NEXT:    lw s4, 152(sp) # 4-byte Folded Reload951; RV32ID-NEXT:    lw s5, 148(sp) # 4-byte Folded Reload952; RV32ID-NEXT:    lw s6, 144(sp) # 4-byte Folded Reload953; RV32ID-NEXT:    lw s7, 140(sp) # 4-byte Folded Reload954; RV32ID-NEXT:    lw s8, 136(sp) # 4-byte Folded Reload955; RV32ID-NEXT:    lw s9, 132(sp) # 4-byte Folded Reload956; RV32ID-NEXT:    lw s10, 128(sp) # 4-byte Folded Reload957; RV32ID-NEXT:    lw s11, 124(sp) # 4-byte Folded Reload958; RV32ID-NEXT:    fld fs0, 112(sp) # 8-byte Folded Reload959; RV32ID-NEXT:    fld fs1, 104(sp) # 8-byte Folded Reload960; RV32ID-NEXT:    fld fs2, 96(sp) # 8-byte Folded Reload961; RV32ID-NEXT:    fld fs3, 88(sp) # 8-byte Folded Reload962; RV32ID-NEXT:    fld fs4, 80(sp) # 8-byte Folded Reload963; RV32ID-NEXT:    fld fs5, 72(sp) # 8-byte Folded Reload964; RV32ID-NEXT:    fld fs6, 64(sp) # 8-byte Folded Reload965; RV32ID-NEXT:    fld fs7, 56(sp) # 8-byte Folded Reload966; RV32ID-NEXT:    fld fs8, 48(sp) # 8-byte Folded Reload967; RV32ID-NEXT:    fld fs9, 40(sp) # 8-byte Folded Reload968; RV32ID-NEXT:    fld fs10, 32(sp) # 8-byte Folded Reload969; RV32ID-NEXT:    fld fs11, 24(sp) # 8-byte Folded Reload970; RV32ID-NEXT:    addi sp, sp, 176971; RV32ID-NEXT:    ret972;973; RV64ID-LABEL: fill_double_to_i64:974; RV64ID:       # %bb.0:975; RV64ID-NEXT:    addi sp, sp, -208976; RV64ID-NEXT:    sd ra, 200(sp) # 8-byte Folded Spill977; RV64ID-NEXT:    sd s0, 192(sp) # 8-byte Folded Spill978; RV64ID-NEXT:    sd s1, 184(sp) # 8-byte Folded Spill979; RV64ID-NEXT:    sd s2, 176(sp) # 8-byte Folded Spill980; RV64ID-NEXT:    sd s3, 168(sp) # 8-byte Folded Spill981; RV64ID-NEXT:    sd s4, 160(sp) # 8-byte Folded Spill982; RV64ID-NEXT:    sd s5, 152(sp) # 8-byte Folded Spill983; RV64ID-NEXT:    sd s6, 144(sp) # 8-byte Folded Spill984; RV64ID-NEXT:    sd s7, 136(sp) # 8-byte Folded Spill985; RV64ID-NEXT:    sd s8, 128(sp) # 8-byte Folded Spill986; RV64ID-NEXT:    sd s9, 120(sp) # 8-byte Folded Spill987; RV64ID-NEXT:    sd s10, 112(sp) # 8-byte Folded Spill988; RV64ID-NEXT:    sd s11, 104(sp) # 8-byte Folded Spill989; RV64ID-NEXT:    fsd fs0, 96(sp) # 8-byte Folded Spill990; RV64ID-NEXT:    fsd fs1, 88(sp) # 8-byte Folded Spill991; RV64ID-NEXT:    fsd fs2, 80(sp) # 8-byte Folded Spill992; RV64ID-NEXT:    fsd fs3, 72(sp) # 8-byte Folded Spill993; RV64ID-NEXT:    fsd fs4, 64(sp) # 8-byte Folded Spill994; RV64ID-NEXT:    fsd fs5, 56(sp) # 8-byte Folded Spill995; RV64ID-NEXT:    fsd fs6, 48(sp) # 8-byte Folded Spill996; RV64ID-NEXT:    fsd fs7, 40(sp) # 8-byte Folded Spill997; RV64ID-NEXT:    fsd fs8, 32(sp) # 8-byte Folded Spill998; RV64ID-NEXT:    fsd fs9, 24(sp) # 8-byte Folded Spill999; RV64ID-NEXT:    fsd fs10, 16(sp) # 8-byte Folded Spill1000; RV64ID-NEXT:    fsd fs11, 8(sp) # 8-byte Folded Spill1001; RV64ID-NEXT:    fsd fa0, 0(sp) # 8-byte Folded Spill1002; RV64ID-NEXT:    #APP1003; RV64ID-NEXT:    #NO_APP1004; RV64ID-NEXT:    fld fa5, 0(sp) # 8-byte Folded Reload1005; RV64ID-NEXT:    fmv.x.d a0, fa51006; RV64ID-NEXT:    ld ra, 200(sp) # 8-byte Folded Reload1007; RV64ID-NEXT:    ld s0, 192(sp) # 8-byte Folded Reload1008; RV64ID-NEXT:    ld s1, 184(sp) # 8-byte Folded Reload1009; RV64ID-NEXT:    ld s2, 176(sp) # 8-byte Folded Reload1010; RV64ID-NEXT:    ld s3, 168(sp) # 8-byte Folded Reload1011; RV64ID-NEXT:    ld s4, 160(sp) # 8-byte Folded Reload1012; RV64ID-NEXT:    ld s5, 152(sp) # 8-byte Folded Reload1013; RV64ID-NEXT:    ld s6, 144(sp) # 8-byte Folded Reload1014; RV64ID-NEXT:    ld s7, 136(sp) # 8-byte Folded Reload1015; RV64ID-NEXT:    ld s8, 128(sp) # 8-byte Folded Reload1016; RV64ID-NEXT:    ld s9, 120(sp) # 8-byte Folded Reload1017; RV64ID-NEXT:    ld s10, 112(sp) # 8-byte Folded Reload1018; RV64ID-NEXT:    ld s11, 104(sp) # 8-byte Folded Reload1019; RV64ID-NEXT:    fld fs0, 96(sp) # 8-byte Folded Reload1020; RV64ID-NEXT:    fld fs1, 88(sp) # 8-byte Folded Reload1021; RV64ID-NEXT:    fld fs2, 80(sp) # 8-byte Folded Reload1022; RV64ID-NEXT:    fld fs3, 72(sp) # 8-byte Folded Reload1023; RV64ID-NEXT:    fld fs4, 64(sp) # 8-byte Folded Reload1024; RV64ID-NEXT:    fld fs5, 56(sp) # 8-byte Folded Reload1025; RV64ID-NEXT:    fld fs6, 48(sp) # 8-byte Folded Reload1026; RV64ID-NEXT:    fld fs7, 40(sp) # 8-byte Folded Reload1027; RV64ID-NEXT:    fld fs8, 32(sp) # 8-byte Folded Reload1028; RV64ID-NEXT:    fld fs9, 24(sp) # 8-byte Folded Reload1029; RV64ID-NEXT:    fld fs10, 16(sp) # 8-byte Folded Reload1030; RV64ID-NEXT:    fld fs11, 8(sp) # 8-byte Folded Reload1031; RV64ID-NEXT:    addi sp, sp, 2081032; RV64ID-NEXT:    ret1033  call void asm sideeffect "", "~{x0},~{x1},~{x2},~{x3},~{x4},~{x5},~{x6},~{x7},~{x8},~{x9},~{x10},~{x11},~{x12},~{x13},~{x14},~{x15},~{x16},~{x17},~{x18},~{x19},~{x20},~{x21},~{x22},~{x23},~{x24},~{x25},~{x26},~{x27},~{x28},~{x29},~{x30},~{x31},~{f0_d},~{f1_d},~{f2_d},~{f3_d},~{f4_d},~{f5_d},~{f6_d},~{f7_d},~{f8_d},~{f9_d},~{f10_d},~{f11_d},~{f12_d},~{f13_d},~{f14_d},~{f15_d},~{f16_d},~{f17_d},~{f18_d},~{f19_d},~{f20_d},~{f21_d},~{f22_d},~{f23_d},~{f24_d},~{f25_d},~{f26_d},~{f27_d},~{f28_d},~{f29_d},~{f30_d},~{f31_d}"() nounwind1034  %1 = bitcast double %a to i641035  ret i64 %11036}1037