brintos

brintos / llvm-project-archived public Read only

0
0
Text · 149.7 KiB · 8db4c71 Raw
3454 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2; RUN: llc -mtriple=riscv32 -verify-machineinstrs < %s \3; RUN:   | FileCheck %s -check-prefix=RV32I4; RUN: llc -mtriple=riscv32 -target-abi ilp32e -verify-machineinstrs < %s \5; RUN:   | FileCheck %s -check-prefix=RV32I-ILP32E6; RUN: llc -mtriple=riscv32 -mattr=+f -target-abi ilp32f -verify-machineinstrs < %s \7; RUN:   | FileCheck %s -check-prefix=RV32I8; RUN: llc -mtriple=riscv32 -mattr=+d -target-abi ilp32f -verify-machineinstrs < %s \9; RUN:   | FileCheck %s -check-prefix=RV32I10; RUN: llc -mtriple=riscv32 -mattr=+d -target-abi ilp32d -verify-machineinstrs < %s \11; RUN:   | FileCheck %s -check-prefix=RV32I12; RUN: llc -mtriple=riscv32 -verify-machineinstrs -frame-pointer=all < %s \13; RUN:   | FileCheck %s -check-prefix=RV32I-WITH-FP14; RUN: llc -mtriple=riscv32 -mattr=+zcmp -verify-machineinstrs < %s \15; RUN: | FileCheck %s -check-prefixes=RV32IZCMP16; RUN: llc -mtriple=riscv32 -mattr=+zcmp -verify-machineinstrs \17; RUN:  -frame-pointer=all < %s | FileCheck %s -check-prefixes=RV32IZCMP-WITH-FP18; RUN: llc -mtriple=riscv64 -verify-machineinstrs < %s \19; RUN:   | FileCheck %s -check-prefix=RV64I20; RUN: llc -mtriple=riscv64 -target-abi lp64e -verify-machineinstrs < %s \21; RUN:   | FileCheck %s -check-prefix=RV64I-LP64E22; RUN: llc -mtriple=riscv64 -mattr=+f -target-abi lp64f -verify-machineinstrs < %s \23; RUN:   | FileCheck %s -check-prefix=RV64I24; RUN: llc -mtriple=riscv64 -mattr=+d -target-abi lp64f -verify-machineinstrs < %s \25; RUN:   | FileCheck %s -check-prefix=RV64I26; RUN: llc -mtriple=riscv64 -mattr=+d -target-abi lp64d -verify-machineinstrs < %s \27; RUN:   | FileCheck %s -check-prefix=RV64I28; RUN: llc -mtriple=riscv64 -verify-machineinstrs -frame-pointer=all < %s \29; RUN:   | FileCheck %s -check-prefix=RV64I-WITH-FP30; RUN: llc -mtriple=riscv64 -mattr=+zcmp -verify-machineinstrs < %s \31; RUN: | FileCheck %s -check-prefixes=RV64IZCMP32; RUN: llc -mtriple=riscv64 -mattr=+zcmp -verify-machineinstrs \33; RUN:  -frame-pointer=all < %s | FileCheck %s -check-prefixes=RV64IZCMP-WITH-FP34 35@var = global [32 x i32] zeroinitializer36 37; This function tests that RISCVRegisterInfo::getCalleeSavedRegs returns38; something appropriate.39 40define void @callee() {41; RV32I-LABEL: callee:42; RV32I:       # %bb.0:43; RV32I-NEXT:    addi sp, sp, -8044; RV32I-NEXT:    .cfi_def_cfa_offset 8045; RV32I-NEXT:    sw ra, 76(sp) # 4-byte Folded Spill46; RV32I-NEXT:    sw s0, 72(sp) # 4-byte Folded Spill47; RV32I-NEXT:    sw s1, 68(sp) # 4-byte Folded Spill48; RV32I-NEXT:    sw s2, 64(sp) # 4-byte Folded Spill49; RV32I-NEXT:    sw s3, 60(sp) # 4-byte Folded Spill50; RV32I-NEXT:    sw s4, 56(sp) # 4-byte Folded Spill51; RV32I-NEXT:    sw s5, 52(sp) # 4-byte Folded Spill52; RV32I-NEXT:    sw s6, 48(sp) # 4-byte Folded Spill53; RV32I-NEXT:    sw s7, 44(sp) # 4-byte Folded Spill54; RV32I-NEXT:    sw s8, 40(sp) # 4-byte Folded Spill55; RV32I-NEXT:    sw s9, 36(sp) # 4-byte Folded Spill56; RV32I-NEXT:    sw s10, 32(sp) # 4-byte Folded Spill57; RV32I-NEXT:    sw s11, 28(sp) # 4-byte Folded Spill58; RV32I-NEXT:    .cfi_offset ra, -459; RV32I-NEXT:    .cfi_offset s0, -860; RV32I-NEXT:    .cfi_offset s1, -1261; RV32I-NEXT:    .cfi_offset s2, -1662; RV32I-NEXT:    .cfi_offset s3, -2063; RV32I-NEXT:    .cfi_offset s4, -2464; RV32I-NEXT:    .cfi_offset s5, -2865; RV32I-NEXT:    .cfi_offset s6, -3266; RV32I-NEXT:    .cfi_offset s7, -3667; RV32I-NEXT:    .cfi_offset s8, -4068; RV32I-NEXT:    .cfi_offset s9, -4469; RV32I-NEXT:    .cfi_offset s10, -4870; RV32I-NEXT:    .cfi_offset s11, -5271; RV32I-NEXT:    lui a0, %hi(var)72; RV32I-NEXT:    addi a0, a0, %lo(var)73; RV32I-NEXT:    lw a1, 0(a0)74; RV32I-NEXT:    sw a1, 24(sp) # 4-byte Folded Spill75; RV32I-NEXT:    lw a1, 4(a0)76; RV32I-NEXT:    sw a1, 20(sp) # 4-byte Folded Spill77; RV32I-NEXT:    lw a1, 8(a0)78; RV32I-NEXT:    sw a1, 16(sp) # 4-byte Folded Spill79; RV32I-NEXT:    lw a1, 12(a0)80; RV32I-NEXT:    sw a1, 12(sp) # 4-byte Folded Spill81; RV32I-NEXT:    lw a1, 16(a0)82; RV32I-NEXT:    sw a1, 8(sp) # 4-byte Folded Spill83; RV32I-NEXT:    lw a6, 20(a0)84; RV32I-NEXT:    lw a7, 24(a0)85; RV32I-NEXT:    lw t0, 28(a0)86; RV32I-NEXT:    lw t1, 32(a0)87; RV32I-NEXT:    lw t2, 36(a0)88; RV32I-NEXT:    lw t3, 40(a0)89; RV32I-NEXT:    lw t4, 44(a0)90; RV32I-NEXT:    lw t5, 48(a0)91; RV32I-NEXT:    lw t6, 52(a0)92; RV32I-NEXT:    lw s0, 56(a0)93; RV32I-NEXT:    lw s1, 60(a0)94; RV32I-NEXT:    lw s2, 64(a0)95; RV32I-NEXT:    lw s3, 68(a0)96; RV32I-NEXT:    lw s4, 72(a0)97; RV32I-NEXT:    lw s5, 76(a0)98; RV32I-NEXT:    lw s6, 80(a0)99; RV32I-NEXT:    lw s7, 84(a0)100; RV32I-NEXT:    lw s8, 88(a0)101; RV32I-NEXT:    lw s9, 92(a0)102; RV32I-NEXT:    lw s10, 112(a0)103; RV32I-NEXT:    lw s11, 116(a0)104; RV32I-NEXT:    lw ra, 120(a0)105; RV32I-NEXT:    lw a1, 124(a0)106; RV32I-NEXT:    lw a5, 96(a0)107; RV32I-NEXT:    lw a4, 100(a0)108; RV32I-NEXT:    lw a3, 104(a0)109; RV32I-NEXT:    lw a2, 108(a0)110; RV32I-NEXT:    sw a1, 124(a0)111; RV32I-NEXT:    sw ra, 120(a0)112; RV32I-NEXT:    sw s11, 116(a0)113; RV32I-NEXT:    sw s10, 112(a0)114; RV32I-NEXT:    sw a2, 108(a0)115; RV32I-NEXT:    sw a3, 104(a0)116; RV32I-NEXT:    sw a4, 100(a0)117; RV32I-NEXT:    sw a5, 96(a0)118; RV32I-NEXT:    sw s9, 92(a0)119; RV32I-NEXT:    sw s8, 88(a0)120; RV32I-NEXT:    sw s7, 84(a0)121; RV32I-NEXT:    sw s6, 80(a0)122; RV32I-NEXT:    sw s5, 76(a0)123; RV32I-NEXT:    sw s4, 72(a0)124; RV32I-NEXT:    sw s3, 68(a0)125; RV32I-NEXT:    sw s2, 64(a0)126; RV32I-NEXT:    sw s1, 60(a0)127; RV32I-NEXT:    sw s0, 56(a0)128; RV32I-NEXT:    sw t6, 52(a0)129; RV32I-NEXT:    sw t5, 48(a0)130; RV32I-NEXT:    sw t4, 44(a0)131; RV32I-NEXT:    sw t3, 40(a0)132; RV32I-NEXT:    sw t2, 36(a0)133; RV32I-NEXT:    sw t1, 32(a0)134; RV32I-NEXT:    sw t0, 28(a0)135; RV32I-NEXT:    sw a7, 24(a0)136; RV32I-NEXT:    sw a6, 20(a0)137; RV32I-NEXT:    lw a1, 8(sp) # 4-byte Folded Reload138; RV32I-NEXT:    sw a1, 16(a0)139; RV32I-NEXT:    lw a1, 12(sp) # 4-byte Folded Reload140; RV32I-NEXT:    sw a1, 12(a0)141; RV32I-NEXT:    lw a1, 16(sp) # 4-byte Folded Reload142; RV32I-NEXT:    sw a1, 8(a0)143; RV32I-NEXT:    lw a1, 20(sp) # 4-byte Folded Reload144; RV32I-NEXT:    sw a1, 4(a0)145; RV32I-NEXT:    lw a1, 24(sp) # 4-byte Folded Reload146; RV32I-NEXT:    sw a1, 0(a0)147; RV32I-NEXT:    lw ra, 76(sp) # 4-byte Folded Reload148; RV32I-NEXT:    lw s0, 72(sp) # 4-byte Folded Reload149; RV32I-NEXT:    lw s1, 68(sp) # 4-byte Folded Reload150; RV32I-NEXT:    lw s2, 64(sp) # 4-byte Folded Reload151; RV32I-NEXT:    lw s3, 60(sp) # 4-byte Folded Reload152; RV32I-NEXT:    lw s4, 56(sp) # 4-byte Folded Reload153; RV32I-NEXT:    lw s5, 52(sp) # 4-byte Folded Reload154; RV32I-NEXT:    lw s6, 48(sp) # 4-byte Folded Reload155; RV32I-NEXT:    lw s7, 44(sp) # 4-byte Folded Reload156; RV32I-NEXT:    lw s8, 40(sp) # 4-byte Folded Reload157; RV32I-NEXT:    lw s9, 36(sp) # 4-byte Folded Reload158; RV32I-NEXT:    lw s10, 32(sp) # 4-byte Folded Reload159; RV32I-NEXT:    lw s11, 28(sp) # 4-byte Folded Reload160; RV32I-NEXT:    .cfi_restore ra161; RV32I-NEXT:    .cfi_restore s0162; RV32I-NEXT:    .cfi_restore s1163; RV32I-NEXT:    .cfi_restore s2164; RV32I-NEXT:    .cfi_restore s3165; RV32I-NEXT:    .cfi_restore s4166; RV32I-NEXT:    .cfi_restore s5167; RV32I-NEXT:    .cfi_restore s6168; RV32I-NEXT:    .cfi_restore s7169; RV32I-NEXT:    .cfi_restore s8170; RV32I-NEXT:    .cfi_restore s9171; RV32I-NEXT:    .cfi_restore s10172; RV32I-NEXT:    .cfi_restore s11173; RV32I-NEXT:    addi sp, sp, 80174; RV32I-NEXT:    .cfi_def_cfa_offset 0175; RV32I-NEXT:    ret176;177; RV32I-ILP32E-LABEL: callee:178; RV32I-ILP32E:       # %bb.0:179; RV32I-ILP32E-NEXT:    addi sp, sp, -32180; RV32I-ILP32E-NEXT:    .cfi_def_cfa_offset 32181; RV32I-ILP32E-NEXT:    sw ra, 28(sp) # 4-byte Folded Spill182; RV32I-ILP32E-NEXT:    sw s0, 24(sp) # 4-byte Folded Spill183; RV32I-ILP32E-NEXT:    sw s1, 20(sp) # 4-byte Folded Spill184; RV32I-ILP32E-NEXT:    .cfi_offset ra, -4185; RV32I-ILP32E-NEXT:    .cfi_offset s0, -8186; RV32I-ILP32E-NEXT:    .cfi_offset s1, -12187; RV32I-ILP32E-NEXT:    lui a0, %hi(var)188; RV32I-ILP32E-NEXT:    addi a0, a0, %lo(var)189; RV32I-ILP32E-NEXT:    lw a1, 0(a0)190; RV32I-ILP32E-NEXT:    sw a1, 16(sp) # 4-byte Folded Spill191; RV32I-ILP32E-NEXT:    lw a1, 4(a0)192; RV32I-ILP32E-NEXT:    sw a1, 12(sp) # 4-byte Folded Spill193; RV32I-ILP32E-NEXT:    lw a1, 8(a0)194; RV32I-ILP32E-NEXT:    sw a1, 8(sp) # 4-byte Folded Spill195; RV32I-ILP32E-NEXT:    lw a1, 12(a0)196; RV32I-ILP32E-NEXT:    sw a1, 4(sp) # 4-byte Folded Spill197; RV32I-ILP32E-NEXT:    lw a1, 16(a0)198; RV32I-ILP32E-NEXT:    sw a1, 0(sp) # 4-byte Folded Spill199; RV32I-ILP32E-NEXT:    lw a6, 20(a0)200; RV32I-ILP32E-NEXT:    lw a7, 24(a0)201; RV32I-ILP32E-NEXT:    lw t0, 28(a0)202; RV32I-ILP32E-NEXT:    lw t1, 32(a0)203; RV32I-ILP32E-NEXT:    lw t2, 36(a0)204; RV32I-ILP32E-NEXT:    lw t3, 40(a0)205; RV32I-ILP32E-NEXT:    lw t4, 44(a0)206; RV32I-ILP32E-NEXT:    lw t5, 48(a0)207; RV32I-ILP32E-NEXT:    lw t6, 52(a0)208; RV32I-ILP32E-NEXT:    lw s2, 56(a0)209; RV32I-ILP32E-NEXT:    lw s3, 60(a0)210; RV32I-ILP32E-NEXT:    lw s4, 64(a0)211; RV32I-ILP32E-NEXT:    lw s5, 68(a0)212; RV32I-ILP32E-NEXT:    lw s6, 72(a0)213; RV32I-ILP32E-NEXT:    lw s7, 76(a0)214; RV32I-ILP32E-NEXT:    lw s8, 80(a0)215; RV32I-ILP32E-NEXT:    lw s9, 84(a0)216; RV32I-ILP32E-NEXT:    lw s10, 88(a0)217; RV32I-ILP32E-NEXT:    lw s11, 92(a0)218; RV32I-ILP32E-NEXT:    lw s0, 112(a0)219; RV32I-ILP32E-NEXT:    lw s1, 116(a0)220; RV32I-ILP32E-NEXT:    lw ra, 120(a0)221; RV32I-ILP32E-NEXT:    lw a1, 124(a0)222; RV32I-ILP32E-NEXT:    lw a5, 96(a0)223; RV32I-ILP32E-NEXT:    lw a4, 100(a0)224; RV32I-ILP32E-NEXT:    lw a3, 104(a0)225; RV32I-ILP32E-NEXT:    lw a2, 108(a0)226; RV32I-ILP32E-NEXT:    sw a1, 124(a0)227; RV32I-ILP32E-NEXT:    sw ra, 120(a0)228; RV32I-ILP32E-NEXT:    sw s1, 116(a0)229; RV32I-ILP32E-NEXT:    sw s0, 112(a0)230; RV32I-ILP32E-NEXT:    sw a2, 108(a0)231; RV32I-ILP32E-NEXT:    sw a3, 104(a0)232; RV32I-ILP32E-NEXT:    sw a4, 100(a0)233; RV32I-ILP32E-NEXT:    sw a5, 96(a0)234; RV32I-ILP32E-NEXT:    sw s11, 92(a0)235; RV32I-ILP32E-NEXT:    sw s10, 88(a0)236; RV32I-ILP32E-NEXT:    sw s9, 84(a0)237; RV32I-ILP32E-NEXT:    sw s8, 80(a0)238; RV32I-ILP32E-NEXT:    sw s7, 76(a0)239; RV32I-ILP32E-NEXT:    sw s6, 72(a0)240; RV32I-ILP32E-NEXT:    sw s5, 68(a0)241; RV32I-ILP32E-NEXT:    sw s4, 64(a0)242; RV32I-ILP32E-NEXT:    sw s3, 60(a0)243; RV32I-ILP32E-NEXT:    sw s2, 56(a0)244; RV32I-ILP32E-NEXT:    sw t6, 52(a0)245; RV32I-ILP32E-NEXT:    sw t5, 48(a0)246; RV32I-ILP32E-NEXT:    sw t4, 44(a0)247; RV32I-ILP32E-NEXT:    sw t3, 40(a0)248; RV32I-ILP32E-NEXT:    sw t2, 36(a0)249; RV32I-ILP32E-NEXT:    sw t1, 32(a0)250; RV32I-ILP32E-NEXT:    sw t0, 28(a0)251; RV32I-ILP32E-NEXT:    sw a7, 24(a0)252; RV32I-ILP32E-NEXT:    sw a6, 20(a0)253; RV32I-ILP32E-NEXT:    lw a1, 0(sp) # 4-byte Folded Reload254; RV32I-ILP32E-NEXT:    sw a1, 16(a0)255; RV32I-ILP32E-NEXT:    lw a1, 4(sp) # 4-byte Folded Reload256; RV32I-ILP32E-NEXT:    sw a1, 12(a0)257; RV32I-ILP32E-NEXT:    lw a1, 8(sp) # 4-byte Folded Reload258; RV32I-ILP32E-NEXT:    sw a1, 8(a0)259; RV32I-ILP32E-NEXT:    lw a1, 12(sp) # 4-byte Folded Reload260; RV32I-ILP32E-NEXT:    sw a1, 4(a0)261; RV32I-ILP32E-NEXT:    lw a1, 16(sp) # 4-byte Folded Reload262; RV32I-ILP32E-NEXT:    sw a1, 0(a0)263; RV32I-ILP32E-NEXT:    lw ra, 28(sp) # 4-byte Folded Reload264; RV32I-ILP32E-NEXT:    lw s0, 24(sp) # 4-byte Folded Reload265; RV32I-ILP32E-NEXT:    lw s1, 20(sp) # 4-byte Folded Reload266; RV32I-ILP32E-NEXT:    .cfi_restore ra267; RV32I-ILP32E-NEXT:    .cfi_restore s0268; RV32I-ILP32E-NEXT:    .cfi_restore s1269; RV32I-ILP32E-NEXT:    addi sp, sp, 32270; RV32I-ILP32E-NEXT:    .cfi_def_cfa_offset 0271; RV32I-ILP32E-NEXT:    ret272;273; RV32I-WITH-FP-LABEL: callee:274; RV32I-WITH-FP:       # %bb.0:275; RV32I-WITH-FP-NEXT:    addi sp, sp, -80276; RV32I-WITH-FP-NEXT:    .cfi_def_cfa_offset 80277; RV32I-WITH-FP-NEXT:    sw ra, 76(sp) # 4-byte Folded Spill278; RV32I-WITH-FP-NEXT:    sw s0, 72(sp) # 4-byte Folded Spill279; RV32I-WITH-FP-NEXT:    sw s1, 68(sp) # 4-byte Folded Spill280; RV32I-WITH-FP-NEXT:    sw s2, 64(sp) # 4-byte Folded Spill281; RV32I-WITH-FP-NEXT:    sw s3, 60(sp) # 4-byte Folded Spill282; RV32I-WITH-FP-NEXT:    sw s4, 56(sp) # 4-byte Folded Spill283; RV32I-WITH-FP-NEXT:    sw s5, 52(sp) # 4-byte Folded Spill284; RV32I-WITH-FP-NEXT:    sw s6, 48(sp) # 4-byte Folded Spill285; RV32I-WITH-FP-NEXT:    sw s7, 44(sp) # 4-byte Folded Spill286; RV32I-WITH-FP-NEXT:    sw s8, 40(sp) # 4-byte Folded Spill287; RV32I-WITH-FP-NEXT:    sw s9, 36(sp) # 4-byte Folded Spill288; RV32I-WITH-FP-NEXT:    sw s10, 32(sp) # 4-byte Folded Spill289; RV32I-WITH-FP-NEXT:    sw s11, 28(sp) # 4-byte Folded Spill290; RV32I-WITH-FP-NEXT:    .cfi_offset ra, -4291; RV32I-WITH-FP-NEXT:    .cfi_offset s0, -8292; RV32I-WITH-FP-NEXT:    .cfi_offset s1, -12293; RV32I-WITH-FP-NEXT:    .cfi_offset s2, -16294; RV32I-WITH-FP-NEXT:    .cfi_offset s3, -20295; RV32I-WITH-FP-NEXT:    .cfi_offset s4, -24296; RV32I-WITH-FP-NEXT:    .cfi_offset s5, -28297; RV32I-WITH-FP-NEXT:    .cfi_offset s6, -32298; RV32I-WITH-FP-NEXT:    .cfi_offset s7, -36299; RV32I-WITH-FP-NEXT:    .cfi_offset s8, -40300; RV32I-WITH-FP-NEXT:    .cfi_offset s9, -44301; RV32I-WITH-FP-NEXT:    .cfi_offset s10, -48302; RV32I-WITH-FP-NEXT:    .cfi_offset s11, -52303; RV32I-WITH-FP-NEXT:    addi s0, sp, 80304; RV32I-WITH-FP-NEXT:    .cfi_def_cfa s0, 0305; RV32I-WITH-FP-NEXT:    lui a0, %hi(var)306; RV32I-WITH-FP-NEXT:    addi a0, a0, %lo(var)307; RV32I-WITH-FP-NEXT:    lw a1, 0(a0)308; RV32I-WITH-FP-NEXT:    sw a1, -56(s0) # 4-byte Folded Spill309; RV32I-WITH-FP-NEXT:    lw a1, 4(a0)310; RV32I-WITH-FP-NEXT:    sw a1, -60(s0) # 4-byte Folded Spill311; RV32I-WITH-FP-NEXT:    lw a1, 8(a0)312; RV32I-WITH-FP-NEXT:    sw a1, -64(s0) # 4-byte Folded Spill313; RV32I-WITH-FP-NEXT:    lw a1, 12(a0)314; RV32I-WITH-FP-NEXT:    sw a1, -68(s0) # 4-byte Folded Spill315; RV32I-WITH-FP-NEXT:    lw a1, 16(a0)316; RV32I-WITH-FP-NEXT:    sw a1, -72(s0) # 4-byte Folded Spill317; RV32I-WITH-FP-NEXT:    lw a1, 20(a0)318; RV32I-WITH-FP-NEXT:    sw a1, -76(s0) # 4-byte Folded Spill319; RV32I-WITH-FP-NEXT:    lw a7, 24(a0)320; RV32I-WITH-FP-NEXT:    lw t0, 28(a0)321; RV32I-WITH-FP-NEXT:    lw t1, 32(a0)322; RV32I-WITH-FP-NEXT:    lw t2, 36(a0)323; RV32I-WITH-FP-NEXT:    lw t3, 40(a0)324; RV32I-WITH-FP-NEXT:    lw t4, 44(a0)325; RV32I-WITH-FP-NEXT:    lw t5, 48(a0)326; RV32I-WITH-FP-NEXT:    lw t6, 52(a0)327; RV32I-WITH-FP-NEXT:    lw s1, 56(a0)328; RV32I-WITH-FP-NEXT:    lw s2, 60(a0)329; RV32I-WITH-FP-NEXT:    lw s3, 64(a0)330; RV32I-WITH-FP-NEXT:    lw s4, 68(a0)331; RV32I-WITH-FP-NEXT:    lw s5, 72(a0)332; RV32I-WITH-FP-NEXT:    lw s6, 76(a0)333; RV32I-WITH-FP-NEXT:    lw s7, 80(a0)334; RV32I-WITH-FP-NEXT:    lw s8, 84(a0)335; RV32I-WITH-FP-NEXT:    lw s9, 88(a0)336; RV32I-WITH-FP-NEXT:    lw s10, 92(a0)337; RV32I-WITH-FP-NEXT:    lw s11, 112(a0)338; RV32I-WITH-FP-NEXT:    lw ra, 116(a0)339; RV32I-WITH-FP-NEXT:    lw a4, 120(a0)340; RV32I-WITH-FP-NEXT:    lw a1, 124(a0)341; RV32I-WITH-FP-NEXT:    lw a6, 96(a0)342; RV32I-WITH-FP-NEXT:    lw a5, 100(a0)343; RV32I-WITH-FP-NEXT:    lw a3, 104(a0)344; RV32I-WITH-FP-NEXT:    lw a2, 108(a0)345; RV32I-WITH-FP-NEXT:    sw a1, 124(a0)346; RV32I-WITH-FP-NEXT:    sw a4, 120(a0)347; RV32I-WITH-FP-NEXT:    sw ra, 116(a0)348; RV32I-WITH-FP-NEXT:    sw s11, 112(a0)349; RV32I-WITH-FP-NEXT:    sw a2, 108(a0)350; RV32I-WITH-FP-NEXT:    sw a3, 104(a0)351; RV32I-WITH-FP-NEXT:    sw a5, 100(a0)352; RV32I-WITH-FP-NEXT:    sw a6, 96(a0)353; RV32I-WITH-FP-NEXT:    sw s10, 92(a0)354; RV32I-WITH-FP-NEXT:    sw s9, 88(a0)355; RV32I-WITH-FP-NEXT:    sw s8, 84(a0)356; RV32I-WITH-FP-NEXT:    sw s7, 80(a0)357; RV32I-WITH-FP-NEXT:    sw s6, 76(a0)358; RV32I-WITH-FP-NEXT:    sw s5, 72(a0)359; RV32I-WITH-FP-NEXT:    sw s4, 68(a0)360; RV32I-WITH-FP-NEXT:    sw s3, 64(a0)361; RV32I-WITH-FP-NEXT:    sw s2, 60(a0)362; RV32I-WITH-FP-NEXT:    sw s1, 56(a0)363; RV32I-WITH-FP-NEXT:    sw t6, 52(a0)364; RV32I-WITH-FP-NEXT:    sw t5, 48(a0)365; RV32I-WITH-FP-NEXT:    sw t4, 44(a0)366; RV32I-WITH-FP-NEXT:    sw t3, 40(a0)367; RV32I-WITH-FP-NEXT:    sw t2, 36(a0)368; RV32I-WITH-FP-NEXT:    sw t1, 32(a0)369; RV32I-WITH-FP-NEXT:    sw t0, 28(a0)370; RV32I-WITH-FP-NEXT:    sw a7, 24(a0)371; RV32I-WITH-FP-NEXT:    lw a1, -76(s0) # 4-byte Folded Reload372; RV32I-WITH-FP-NEXT:    sw a1, 20(a0)373; RV32I-WITH-FP-NEXT:    lw a1, -72(s0) # 4-byte Folded Reload374; RV32I-WITH-FP-NEXT:    sw a1, 16(a0)375; RV32I-WITH-FP-NEXT:    lw a1, -68(s0) # 4-byte Folded Reload376; RV32I-WITH-FP-NEXT:    sw a1, 12(a0)377; RV32I-WITH-FP-NEXT:    lw a1, -64(s0) # 4-byte Folded Reload378; RV32I-WITH-FP-NEXT:    sw a1, 8(a0)379; RV32I-WITH-FP-NEXT:    lw a1, -60(s0) # 4-byte Folded Reload380; RV32I-WITH-FP-NEXT:    sw a1, 4(a0)381; RV32I-WITH-FP-NEXT:    lw a1, -56(s0) # 4-byte Folded Reload382; RV32I-WITH-FP-NEXT:    sw a1, 0(a0)383; RV32I-WITH-FP-NEXT:    .cfi_def_cfa sp, 80384; RV32I-WITH-FP-NEXT:    lw ra, 76(sp) # 4-byte Folded Reload385; RV32I-WITH-FP-NEXT:    lw s0, 72(sp) # 4-byte Folded Reload386; RV32I-WITH-FP-NEXT:    lw s1, 68(sp) # 4-byte Folded Reload387; RV32I-WITH-FP-NEXT:    lw s2, 64(sp) # 4-byte Folded Reload388; RV32I-WITH-FP-NEXT:    lw s3, 60(sp) # 4-byte Folded Reload389; RV32I-WITH-FP-NEXT:    lw s4, 56(sp) # 4-byte Folded Reload390; RV32I-WITH-FP-NEXT:    lw s5, 52(sp) # 4-byte Folded Reload391; RV32I-WITH-FP-NEXT:    lw s6, 48(sp) # 4-byte Folded Reload392; RV32I-WITH-FP-NEXT:    lw s7, 44(sp) # 4-byte Folded Reload393; RV32I-WITH-FP-NEXT:    lw s8, 40(sp) # 4-byte Folded Reload394; RV32I-WITH-FP-NEXT:    lw s9, 36(sp) # 4-byte Folded Reload395; RV32I-WITH-FP-NEXT:    lw s10, 32(sp) # 4-byte Folded Reload396; RV32I-WITH-FP-NEXT:    lw s11, 28(sp) # 4-byte Folded Reload397; RV32I-WITH-FP-NEXT:    .cfi_restore ra398; RV32I-WITH-FP-NEXT:    .cfi_restore s0399; RV32I-WITH-FP-NEXT:    .cfi_restore s1400; RV32I-WITH-FP-NEXT:    .cfi_restore s2401; RV32I-WITH-FP-NEXT:    .cfi_restore s3402; RV32I-WITH-FP-NEXT:    .cfi_restore s4403; RV32I-WITH-FP-NEXT:    .cfi_restore s5404; RV32I-WITH-FP-NEXT:    .cfi_restore s6405; RV32I-WITH-FP-NEXT:    .cfi_restore s7406; RV32I-WITH-FP-NEXT:    .cfi_restore s8407; RV32I-WITH-FP-NEXT:    .cfi_restore s9408; RV32I-WITH-FP-NEXT:    .cfi_restore s10409; RV32I-WITH-FP-NEXT:    .cfi_restore s11410; RV32I-WITH-FP-NEXT:    addi sp, sp, 80411; RV32I-WITH-FP-NEXT:    .cfi_def_cfa_offset 0412; RV32I-WITH-FP-NEXT:    ret413;414; RV32IZCMP-LABEL: callee:415; RV32IZCMP:       # %bb.0:416; RV32IZCMP-NEXT:    cm.push {ra, s0-s11}, -96417; RV32IZCMP-NEXT:    .cfi_def_cfa_offset 96418; RV32IZCMP-NEXT:    .cfi_offset ra, -52419; RV32IZCMP-NEXT:    .cfi_offset s0, -48420; RV32IZCMP-NEXT:    .cfi_offset s1, -44421; RV32IZCMP-NEXT:    .cfi_offset s2, -40422; RV32IZCMP-NEXT:    .cfi_offset s3, -36423; RV32IZCMP-NEXT:    .cfi_offset s4, -32424; RV32IZCMP-NEXT:    .cfi_offset s5, -28425; RV32IZCMP-NEXT:    .cfi_offset s6, -24426; RV32IZCMP-NEXT:    .cfi_offset s7, -20427; RV32IZCMP-NEXT:    .cfi_offset s8, -16428; RV32IZCMP-NEXT:    .cfi_offset s9, -12429; RV32IZCMP-NEXT:    .cfi_offset s10, -8430; RV32IZCMP-NEXT:    .cfi_offset s11, -4431; RV32IZCMP-NEXT:    lui a0, %hi(var)432; RV32IZCMP-NEXT:    addi a0, a0, %lo(var)433; RV32IZCMP-NEXT:    lw a1, 0(a0)434; RV32IZCMP-NEXT:    sw a1, 28(sp) # 4-byte Folded Spill435; RV32IZCMP-NEXT:    lw a1, 4(a0)436; RV32IZCMP-NEXT:    sw a1, 24(sp) # 4-byte Folded Spill437; RV32IZCMP-NEXT:    lw a1, 8(a0)438; RV32IZCMP-NEXT:    sw a1, 20(sp) # 4-byte Folded Spill439; RV32IZCMP-NEXT:    lw a1, 12(a0)440; RV32IZCMP-NEXT:    sw a1, 16(sp) # 4-byte Folded Spill441; RV32IZCMP-NEXT:    lw a1, 16(a0)442; RV32IZCMP-NEXT:    sw a1, 12(sp) # 4-byte Folded Spill443; RV32IZCMP-NEXT:    lw t3, 20(a0)444; RV32IZCMP-NEXT:    lw t4, 24(a0)445; RV32IZCMP-NEXT:    lw t5, 28(a0)446; RV32IZCMP-NEXT:    lw t6, 32(a0)447; RV32IZCMP-NEXT:    lw s2, 36(a0)448; RV32IZCMP-NEXT:    lw s3, 40(a0)449; RV32IZCMP-NEXT:    lw s4, 44(a0)450; RV32IZCMP-NEXT:    lw s5, 48(a0)451; RV32IZCMP-NEXT:    lw s6, 52(a0)452; RV32IZCMP-NEXT:    lw s7, 56(a0)453; RV32IZCMP-NEXT:    lw s8, 60(a0)454; RV32IZCMP-NEXT:    lw s9, 64(a0)455; RV32IZCMP-NEXT:    lw s10, 68(a0)456; RV32IZCMP-NEXT:    lw s11, 72(a0)457; RV32IZCMP-NEXT:    lw ra, 76(a0)458; RV32IZCMP-NEXT:    lw t2, 80(a0)459; RV32IZCMP-NEXT:    lw s0, 84(a0)460; RV32IZCMP-NEXT:    lw s1, 88(a0)461; RV32IZCMP-NEXT:    lw t1, 92(a0)462; RV32IZCMP-NEXT:    lw t0, 112(a0)463; RV32IZCMP-NEXT:    lw a5, 116(a0)464; RV32IZCMP-NEXT:    lw a3, 120(a0)465; RV32IZCMP-NEXT:    lw a1, 124(a0)466; RV32IZCMP-NEXT:    lw a7, 96(a0)467; RV32IZCMP-NEXT:    lw a6, 100(a0)468; RV32IZCMP-NEXT:    lw a4, 104(a0)469; RV32IZCMP-NEXT:    lw a2, 108(a0)470; RV32IZCMP-NEXT:    sw a1, 124(a0)471; RV32IZCMP-NEXT:    sw a3, 120(a0)472; RV32IZCMP-NEXT:    sw a5, 116(a0)473; RV32IZCMP-NEXT:    sw t0, 112(a0)474; RV32IZCMP-NEXT:    sw a2, 108(a0)475; RV32IZCMP-NEXT:    sw a4, 104(a0)476; RV32IZCMP-NEXT:    sw a6, 100(a0)477; RV32IZCMP-NEXT:    sw a7, 96(a0)478; RV32IZCMP-NEXT:    sw t1, 92(a0)479; RV32IZCMP-NEXT:    sw s1, 88(a0)480; RV32IZCMP-NEXT:    sw s0, 84(a0)481; RV32IZCMP-NEXT:    sw t2, 80(a0)482; RV32IZCMP-NEXT:    sw ra, 76(a0)483; RV32IZCMP-NEXT:    sw s11, 72(a0)484; RV32IZCMP-NEXT:    sw s10, 68(a0)485; RV32IZCMP-NEXT:    sw s9, 64(a0)486; RV32IZCMP-NEXT:    sw s8, 60(a0)487; RV32IZCMP-NEXT:    sw s7, 56(a0)488; RV32IZCMP-NEXT:    sw s6, 52(a0)489; RV32IZCMP-NEXT:    sw s5, 48(a0)490; RV32IZCMP-NEXT:    sw s4, 44(a0)491; RV32IZCMP-NEXT:    sw s3, 40(a0)492; RV32IZCMP-NEXT:    sw s2, 36(a0)493; RV32IZCMP-NEXT:    sw t6, 32(a0)494; RV32IZCMP-NEXT:    sw t5, 28(a0)495; RV32IZCMP-NEXT:    sw t4, 24(a0)496; RV32IZCMP-NEXT:    sw t3, 20(a0)497; RV32IZCMP-NEXT:    lw a1, 12(sp) # 4-byte Folded Reload498; RV32IZCMP-NEXT:    sw a1, 16(a0)499; RV32IZCMP-NEXT:    lw a1, 16(sp) # 4-byte Folded Reload500; RV32IZCMP-NEXT:    sw a1, 12(a0)501; RV32IZCMP-NEXT:    lw a1, 20(sp) # 4-byte Folded Reload502; RV32IZCMP-NEXT:    sw a1, 8(a0)503; RV32IZCMP-NEXT:    lw a1, 24(sp) # 4-byte Folded Reload504; RV32IZCMP-NEXT:    sw a1, 4(a0)505; RV32IZCMP-NEXT:    lw a1, 28(sp) # 4-byte Folded Reload506; RV32IZCMP-NEXT:    sw a1, 0(a0)507; RV32IZCMP-NEXT:    cm.popret {ra, s0-s11}, 96508;509; RV32IZCMP-WITH-FP-LABEL: callee:510; RV32IZCMP-WITH-FP:       # %bb.0:511; RV32IZCMP-WITH-FP-NEXT:    addi sp, sp, -80512; RV32IZCMP-WITH-FP-NEXT:    .cfi_def_cfa_offset 80513; RV32IZCMP-WITH-FP-NEXT:    sw ra, 76(sp) # 4-byte Folded Spill514; RV32IZCMP-WITH-FP-NEXT:    sw s0, 72(sp) # 4-byte Folded Spill515; RV32IZCMP-WITH-FP-NEXT:    sw s1, 68(sp) # 4-byte Folded Spill516; RV32IZCMP-WITH-FP-NEXT:    sw s2, 64(sp) # 4-byte Folded Spill517; RV32IZCMP-WITH-FP-NEXT:    sw s3, 60(sp) # 4-byte Folded Spill518; RV32IZCMP-WITH-FP-NEXT:    sw s4, 56(sp) # 4-byte Folded Spill519; RV32IZCMP-WITH-FP-NEXT:    sw s5, 52(sp) # 4-byte Folded Spill520; RV32IZCMP-WITH-FP-NEXT:    sw s6, 48(sp) # 4-byte Folded Spill521; RV32IZCMP-WITH-FP-NEXT:    sw s7, 44(sp) # 4-byte Folded Spill522; RV32IZCMP-WITH-FP-NEXT:    sw s8, 40(sp) # 4-byte Folded Spill523; RV32IZCMP-WITH-FP-NEXT:    sw s9, 36(sp) # 4-byte Folded Spill524; RV32IZCMP-WITH-FP-NEXT:    sw s10, 32(sp) # 4-byte Folded Spill525; RV32IZCMP-WITH-FP-NEXT:    sw s11, 28(sp) # 4-byte Folded Spill526; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset ra, -4527; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset s0, -8528; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset s1, -12529; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset s2, -16530; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset s3, -20531; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset s4, -24532; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset s5, -28533; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset s6, -32534; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset s7, -36535; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset s8, -40536; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset s9, -44537; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset s10, -48538; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset s11, -52539; RV32IZCMP-WITH-FP-NEXT:    addi s0, sp, 80540; RV32IZCMP-WITH-FP-NEXT:    .cfi_def_cfa s0, 0541; RV32IZCMP-WITH-FP-NEXT:    lui a0, %hi(var)542; RV32IZCMP-WITH-FP-NEXT:    addi a0, a0, %lo(var)543; RV32IZCMP-WITH-FP-NEXT:    lw a1, 0(a0)544; RV32IZCMP-WITH-FP-NEXT:    sw a1, -56(s0) # 4-byte Folded Spill545; RV32IZCMP-WITH-FP-NEXT:    lw a1, 4(a0)546; RV32IZCMP-WITH-FP-NEXT:    sw a1, -60(s0) # 4-byte Folded Spill547; RV32IZCMP-WITH-FP-NEXT:    lw a1, 8(a0)548; RV32IZCMP-WITH-FP-NEXT:    sw a1, -64(s0) # 4-byte Folded Spill549; RV32IZCMP-WITH-FP-NEXT:    lw a1, 12(a0)550; RV32IZCMP-WITH-FP-NEXT:    sw a1, -68(s0) # 4-byte Folded Spill551; RV32IZCMP-WITH-FP-NEXT:    lw a1, 16(a0)552; RV32IZCMP-WITH-FP-NEXT:    sw a1, -72(s0) # 4-byte Folded Spill553; RV32IZCMP-WITH-FP-NEXT:    lw a1, 20(a0)554; RV32IZCMP-WITH-FP-NEXT:    sw a1, -76(s0) # 4-byte Folded Spill555; RV32IZCMP-WITH-FP-NEXT:    lw t4, 24(a0)556; RV32IZCMP-WITH-FP-NEXT:    lw t5, 28(a0)557; RV32IZCMP-WITH-FP-NEXT:    lw t6, 32(a0)558; RV32IZCMP-WITH-FP-NEXT:    lw s2, 36(a0)559; RV32IZCMP-WITH-FP-NEXT:    lw s3, 40(a0)560; RV32IZCMP-WITH-FP-NEXT:    lw s4, 44(a0)561; RV32IZCMP-WITH-FP-NEXT:    lw s5, 48(a0)562; RV32IZCMP-WITH-FP-NEXT:    lw s6, 52(a0)563; RV32IZCMP-WITH-FP-NEXT:    lw s7, 56(a0)564; RV32IZCMP-WITH-FP-NEXT:    lw s8, 60(a0)565; RV32IZCMP-WITH-FP-NEXT:    lw s9, 64(a0)566; RV32IZCMP-WITH-FP-NEXT:    lw s10, 68(a0)567; RV32IZCMP-WITH-FP-NEXT:    lw s11, 72(a0)568; RV32IZCMP-WITH-FP-NEXT:    lw ra, 76(a0)569; RV32IZCMP-WITH-FP-NEXT:    lw s1, 80(a0)570; RV32IZCMP-WITH-FP-NEXT:    lw t3, 84(a0)571; RV32IZCMP-WITH-FP-NEXT:    lw t2, 88(a0)572; RV32IZCMP-WITH-FP-NEXT:    lw t1, 92(a0)573; RV32IZCMP-WITH-FP-NEXT:    lw t0, 112(a0)574; RV32IZCMP-WITH-FP-NEXT:    lw a6, 116(a0)575; RV32IZCMP-WITH-FP-NEXT:    lw a4, 120(a0)576; RV32IZCMP-WITH-FP-NEXT:    lw a1, 124(a0)577; RV32IZCMP-WITH-FP-NEXT:    lw a7, 96(a0)578; RV32IZCMP-WITH-FP-NEXT:    lw a5, 100(a0)579; RV32IZCMP-WITH-FP-NEXT:    lw a3, 104(a0)580; RV32IZCMP-WITH-FP-NEXT:    lw a2, 108(a0)581; RV32IZCMP-WITH-FP-NEXT:    sw a1, 124(a0)582; RV32IZCMP-WITH-FP-NEXT:    sw a4, 120(a0)583; RV32IZCMP-WITH-FP-NEXT:    sw a6, 116(a0)584; RV32IZCMP-WITH-FP-NEXT:    sw t0, 112(a0)585; RV32IZCMP-WITH-FP-NEXT:    sw a2, 108(a0)586; RV32IZCMP-WITH-FP-NEXT:    sw a3, 104(a0)587; RV32IZCMP-WITH-FP-NEXT:    sw a5, 100(a0)588; RV32IZCMP-WITH-FP-NEXT:    sw a7, 96(a0)589; RV32IZCMP-WITH-FP-NEXT:    sw t1, 92(a0)590; RV32IZCMP-WITH-FP-NEXT:    sw t2, 88(a0)591; RV32IZCMP-WITH-FP-NEXT:    sw t3, 84(a0)592; RV32IZCMP-WITH-FP-NEXT:    sw s1, 80(a0)593; RV32IZCMP-WITH-FP-NEXT:    sw ra, 76(a0)594; RV32IZCMP-WITH-FP-NEXT:    sw s11, 72(a0)595; RV32IZCMP-WITH-FP-NEXT:    sw s10, 68(a0)596; RV32IZCMP-WITH-FP-NEXT:    sw s9, 64(a0)597; RV32IZCMP-WITH-FP-NEXT:    sw s8, 60(a0)598; RV32IZCMP-WITH-FP-NEXT:    sw s7, 56(a0)599; RV32IZCMP-WITH-FP-NEXT:    sw s6, 52(a0)600; RV32IZCMP-WITH-FP-NEXT:    sw s5, 48(a0)601; RV32IZCMP-WITH-FP-NEXT:    sw s4, 44(a0)602; RV32IZCMP-WITH-FP-NEXT:    sw s3, 40(a0)603; RV32IZCMP-WITH-FP-NEXT:    sw s2, 36(a0)604; RV32IZCMP-WITH-FP-NEXT:    sw t6, 32(a0)605; RV32IZCMP-WITH-FP-NEXT:    sw t5, 28(a0)606; RV32IZCMP-WITH-FP-NEXT:    sw t4, 24(a0)607; RV32IZCMP-WITH-FP-NEXT:    lw a1, -76(s0) # 4-byte Folded Reload608; RV32IZCMP-WITH-FP-NEXT:    sw a1, 20(a0)609; RV32IZCMP-WITH-FP-NEXT:    lw a1, -72(s0) # 4-byte Folded Reload610; RV32IZCMP-WITH-FP-NEXT:    sw a1, 16(a0)611; RV32IZCMP-WITH-FP-NEXT:    lw a1, -68(s0) # 4-byte Folded Reload612; RV32IZCMP-WITH-FP-NEXT:    sw a1, 12(a0)613; RV32IZCMP-WITH-FP-NEXT:    lw a1, -64(s0) # 4-byte Folded Reload614; RV32IZCMP-WITH-FP-NEXT:    sw a1, 8(a0)615; RV32IZCMP-WITH-FP-NEXT:    lw a1, -60(s0) # 4-byte Folded Reload616; RV32IZCMP-WITH-FP-NEXT:    sw a1, 4(a0)617; RV32IZCMP-WITH-FP-NEXT:    lw a1, -56(s0) # 4-byte Folded Reload618; RV32IZCMP-WITH-FP-NEXT:    sw a1, 0(a0)619; RV32IZCMP-WITH-FP-NEXT:    .cfi_def_cfa sp, 80620; RV32IZCMP-WITH-FP-NEXT:    lw ra, 76(sp) # 4-byte Folded Reload621; RV32IZCMP-WITH-FP-NEXT:    lw s0, 72(sp) # 4-byte Folded Reload622; RV32IZCMP-WITH-FP-NEXT:    lw s1, 68(sp) # 4-byte Folded Reload623; RV32IZCMP-WITH-FP-NEXT:    lw s2, 64(sp) # 4-byte Folded Reload624; RV32IZCMP-WITH-FP-NEXT:    lw s3, 60(sp) # 4-byte Folded Reload625; RV32IZCMP-WITH-FP-NEXT:    lw s4, 56(sp) # 4-byte Folded Reload626; RV32IZCMP-WITH-FP-NEXT:    lw s5, 52(sp) # 4-byte Folded Reload627; RV32IZCMP-WITH-FP-NEXT:    lw s6, 48(sp) # 4-byte Folded Reload628; RV32IZCMP-WITH-FP-NEXT:    lw s7, 44(sp) # 4-byte Folded Reload629; RV32IZCMP-WITH-FP-NEXT:    lw s8, 40(sp) # 4-byte Folded Reload630; RV32IZCMP-WITH-FP-NEXT:    lw s9, 36(sp) # 4-byte Folded Reload631; RV32IZCMP-WITH-FP-NEXT:    lw s10, 32(sp) # 4-byte Folded Reload632; RV32IZCMP-WITH-FP-NEXT:    lw s11, 28(sp) # 4-byte Folded Reload633; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore ra634; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore s0635; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore s1636; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore s2637; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore s3638; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore s4639; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore s5640; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore s6641; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore s7642; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore s8643; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore s9644; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore s10645; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore s11646; RV32IZCMP-WITH-FP-NEXT:    addi sp, sp, 80647; RV32IZCMP-WITH-FP-NEXT:    .cfi_def_cfa_offset 0648; RV32IZCMP-WITH-FP-NEXT:    ret649;650; RV64I-LABEL: callee:651; RV64I:       # %bb.0:652; RV64I-NEXT:    addi sp, sp, -144653; RV64I-NEXT:    .cfi_def_cfa_offset 144654; RV64I-NEXT:    sd ra, 136(sp) # 8-byte Folded Spill655; RV64I-NEXT:    sd s0, 128(sp) # 8-byte Folded Spill656; RV64I-NEXT:    sd s1, 120(sp) # 8-byte Folded Spill657; RV64I-NEXT:    sd s2, 112(sp) # 8-byte Folded Spill658; RV64I-NEXT:    sd s3, 104(sp) # 8-byte Folded Spill659; RV64I-NEXT:    sd s4, 96(sp) # 8-byte Folded Spill660; RV64I-NEXT:    sd s5, 88(sp) # 8-byte Folded Spill661; RV64I-NEXT:    sd s6, 80(sp) # 8-byte Folded Spill662; RV64I-NEXT:    sd s7, 72(sp) # 8-byte Folded Spill663; RV64I-NEXT:    sd s8, 64(sp) # 8-byte Folded Spill664; RV64I-NEXT:    sd s9, 56(sp) # 8-byte Folded Spill665; RV64I-NEXT:    sd s10, 48(sp) # 8-byte Folded Spill666; RV64I-NEXT:    sd s11, 40(sp) # 8-byte Folded Spill667; RV64I-NEXT:    .cfi_offset ra, -8668; RV64I-NEXT:    .cfi_offset s0, -16669; RV64I-NEXT:    .cfi_offset s1, -24670; RV64I-NEXT:    .cfi_offset s2, -32671; RV64I-NEXT:    .cfi_offset s3, -40672; RV64I-NEXT:    .cfi_offset s4, -48673; RV64I-NEXT:    .cfi_offset s5, -56674; RV64I-NEXT:    .cfi_offset s6, -64675; RV64I-NEXT:    .cfi_offset s7, -72676; RV64I-NEXT:    .cfi_offset s8, -80677; RV64I-NEXT:    .cfi_offset s9, -88678; RV64I-NEXT:    .cfi_offset s10, -96679; RV64I-NEXT:    .cfi_offset s11, -104680; RV64I-NEXT:    lui a0, %hi(var)681; RV64I-NEXT:    addi a0, a0, %lo(var)682; RV64I-NEXT:    lw a1, 0(a0)683; RV64I-NEXT:    sd a1, 32(sp) # 8-byte Folded Spill684; RV64I-NEXT:    lw a1, 4(a0)685; RV64I-NEXT:    sd a1, 24(sp) # 8-byte Folded Spill686; RV64I-NEXT:    lw a1, 8(a0)687; RV64I-NEXT:    sd a1, 16(sp) # 8-byte Folded Spill688; RV64I-NEXT:    lw a1, 12(a0)689; RV64I-NEXT:    sd a1, 8(sp) # 8-byte Folded Spill690; RV64I-NEXT:    lw a1, 16(a0)691; RV64I-NEXT:    sd a1, 0(sp) # 8-byte Folded Spill692; RV64I-NEXT:    lw a6, 20(a0)693; RV64I-NEXT:    lw a7, 24(a0)694; RV64I-NEXT:    lw t0, 28(a0)695; RV64I-NEXT:    lw t1, 32(a0)696; RV64I-NEXT:    lw t2, 36(a0)697; RV64I-NEXT:    lw t3, 40(a0)698; RV64I-NEXT:    lw t4, 44(a0)699; RV64I-NEXT:    lw t5, 48(a0)700; RV64I-NEXT:    lw t6, 52(a0)701; RV64I-NEXT:    lw s0, 56(a0)702; RV64I-NEXT:    lw s1, 60(a0)703; RV64I-NEXT:    lw s2, 64(a0)704; RV64I-NEXT:    lw s3, 68(a0)705; RV64I-NEXT:    lw s4, 72(a0)706; RV64I-NEXT:    lw s5, 76(a0)707; RV64I-NEXT:    lw s6, 80(a0)708; RV64I-NEXT:    lw s7, 84(a0)709; RV64I-NEXT:    lw s8, 88(a0)710; RV64I-NEXT:    lw s9, 92(a0)711; RV64I-NEXT:    lw s10, 112(a0)712; RV64I-NEXT:    lw s11, 116(a0)713; RV64I-NEXT:    lw ra, 120(a0)714; RV64I-NEXT:    lw a1, 124(a0)715; RV64I-NEXT:    lw a5, 96(a0)716; RV64I-NEXT:    lw a4, 100(a0)717; RV64I-NEXT:    lw a3, 104(a0)718; RV64I-NEXT:    lw a2, 108(a0)719; RV64I-NEXT:    sw a1, 124(a0)720; RV64I-NEXT:    sw ra, 120(a0)721; RV64I-NEXT:    sw s11, 116(a0)722; RV64I-NEXT:    sw s10, 112(a0)723; RV64I-NEXT:    sw a2, 108(a0)724; RV64I-NEXT:    sw a3, 104(a0)725; RV64I-NEXT:    sw a4, 100(a0)726; RV64I-NEXT:    sw a5, 96(a0)727; RV64I-NEXT:    sw s9, 92(a0)728; RV64I-NEXT:    sw s8, 88(a0)729; RV64I-NEXT:    sw s7, 84(a0)730; RV64I-NEXT:    sw s6, 80(a0)731; RV64I-NEXT:    sw s5, 76(a0)732; RV64I-NEXT:    sw s4, 72(a0)733; RV64I-NEXT:    sw s3, 68(a0)734; RV64I-NEXT:    sw s2, 64(a0)735; RV64I-NEXT:    sw s1, 60(a0)736; RV64I-NEXT:    sw s0, 56(a0)737; RV64I-NEXT:    sw t6, 52(a0)738; RV64I-NEXT:    sw t5, 48(a0)739; RV64I-NEXT:    sw t4, 44(a0)740; RV64I-NEXT:    sw t3, 40(a0)741; RV64I-NEXT:    sw t2, 36(a0)742; RV64I-NEXT:    sw t1, 32(a0)743; RV64I-NEXT:    sw t0, 28(a0)744; RV64I-NEXT:    sw a7, 24(a0)745; RV64I-NEXT:    sw a6, 20(a0)746; RV64I-NEXT:    ld a1, 0(sp) # 8-byte Folded Reload747; RV64I-NEXT:    sw a1, 16(a0)748; RV64I-NEXT:    ld a1, 8(sp) # 8-byte Folded Reload749; RV64I-NEXT:    sw a1, 12(a0)750; RV64I-NEXT:    ld a1, 16(sp) # 8-byte Folded Reload751; RV64I-NEXT:    sw a1, 8(a0)752; RV64I-NEXT:    ld a1, 24(sp) # 8-byte Folded Reload753; RV64I-NEXT:    sw a1, 4(a0)754; RV64I-NEXT:    ld a1, 32(sp) # 8-byte Folded Reload755; RV64I-NEXT:    sw a1, 0(a0)756; RV64I-NEXT:    ld ra, 136(sp) # 8-byte Folded Reload757; RV64I-NEXT:    ld s0, 128(sp) # 8-byte Folded Reload758; RV64I-NEXT:    ld s1, 120(sp) # 8-byte Folded Reload759; RV64I-NEXT:    ld s2, 112(sp) # 8-byte Folded Reload760; RV64I-NEXT:    ld s3, 104(sp) # 8-byte Folded Reload761; RV64I-NEXT:    ld s4, 96(sp) # 8-byte Folded Reload762; RV64I-NEXT:    ld s5, 88(sp) # 8-byte Folded Reload763; RV64I-NEXT:    ld s6, 80(sp) # 8-byte Folded Reload764; RV64I-NEXT:    ld s7, 72(sp) # 8-byte Folded Reload765; RV64I-NEXT:    ld s8, 64(sp) # 8-byte Folded Reload766; RV64I-NEXT:    ld s9, 56(sp) # 8-byte Folded Reload767; RV64I-NEXT:    ld s10, 48(sp) # 8-byte Folded Reload768; RV64I-NEXT:    ld s11, 40(sp) # 8-byte Folded Reload769; RV64I-NEXT:    .cfi_restore ra770; RV64I-NEXT:    .cfi_restore s0771; RV64I-NEXT:    .cfi_restore s1772; RV64I-NEXT:    .cfi_restore s2773; RV64I-NEXT:    .cfi_restore s3774; RV64I-NEXT:    .cfi_restore s4775; RV64I-NEXT:    .cfi_restore s5776; RV64I-NEXT:    .cfi_restore s6777; RV64I-NEXT:    .cfi_restore s7778; RV64I-NEXT:    .cfi_restore s8779; RV64I-NEXT:    .cfi_restore s9780; RV64I-NEXT:    .cfi_restore s10781; RV64I-NEXT:    .cfi_restore s11782; RV64I-NEXT:    addi sp, sp, 144783; RV64I-NEXT:    .cfi_def_cfa_offset 0784; RV64I-NEXT:    ret785;786; RV64I-LP64E-LABEL: callee:787; RV64I-LP64E:       # %bb.0:788; RV64I-LP64E-NEXT:    addi sp, sp, -64789; RV64I-LP64E-NEXT:    .cfi_def_cfa_offset 64790; RV64I-LP64E-NEXT:    sd ra, 56(sp) # 8-byte Folded Spill791; RV64I-LP64E-NEXT:    sd s0, 48(sp) # 8-byte Folded Spill792; RV64I-LP64E-NEXT:    sd s1, 40(sp) # 8-byte Folded Spill793; RV64I-LP64E-NEXT:    .cfi_offset ra, -8794; RV64I-LP64E-NEXT:    .cfi_offset s0, -16795; RV64I-LP64E-NEXT:    .cfi_offset s1, -24796; RV64I-LP64E-NEXT:    lui a0, %hi(var)797; RV64I-LP64E-NEXT:    addi a0, a0, %lo(var)798; RV64I-LP64E-NEXT:    lw a1, 0(a0)799; RV64I-LP64E-NEXT:    sd a1, 32(sp) # 8-byte Folded Spill800; RV64I-LP64E-NEXT:    lw a1, 4(a0)801; RV64I-LP64E-NEXT:    sd a1, 24(sp) # 8-byte Folded Spill802; RV64I-LP64E-NEXT:    lw a1, 8(a0)803; RV64I-LP64E-NEXT:    sd a1, 16(sp) # 8-byte Folded Spill804; RV64I-LP64E-NEXT:    lw a1, 12(a0)805; RV64I-LP64E-NEXT:    sd a1, 8(sp) # 8-byte Folded Spill806; RV64I-LP64E-NEXT:    lw a1, 16(a0)807; RV64I-LP64E-NEXT:    sd a1, 0(sp) # 8-byte Folded Spill808; RV64I-LP64E-NEXT:    lw a6, 20(a0)809; RV64I-LP64E-NEXT:    lw a7, 24(a0)810; RV64I-LP64E-NEXT:    lw t0, 28(a0)811; RV64I-LP64E-NEXT:    lw t1, 32(a0)812; RV64I-LP64E-NEXT:    lw t2, 36(a0)813; RV64I-LP64E-NEXT:    lw t3, 40(a0)814; RV64I-LP64E-NEXT:    lw t4, 44(a0)815; RV64I-LP64E-NEXT:    lw t5, 48(a0)816; RV64I-LP64E-NEXT:    lw t6, 52(a0)817; RV64I-LP64E-NEXT:    lw s2, 56(a0)818; RV64I-LP64E-NEXT:    lw s3, 60(a0)819; RV64I-LP64E-NEXT:    lw s4, 64(a0)820; RV64I-LP64E-NEXT:    lw s5, 68(a0)821; RV64I-LP64E-NEXT:    lw s6, 72(a0)822; RV64I-LP64E-NEXT:    lw s7, 76(a0)823; RV64I-LP64E-NEXT:    lw s8, 80(a0)824; RV64I-LP64E-NEXT:    lw s9, 84(a0)825; RV64I-LP64E-NEXT:    lw s10, 88(a0)826; RV64I-LP64E-NEXT:    lw s11, 92(a0)827; RV64I-LP64E-NEXT:    lw s0, 112(a0)828; RV64I-LP64E-NEXT:    lw s1, 116(a0)829; RV64I-LP64E-NEXT:    lw ra, 120(a0)830; RV64I-LP64E-NEXT:    lw a1, 124(a0)831; RV64I-LP64E-NEXT:    lw a5, 96(a0)832; RV64I-LP64E-NEXT:    lw a4, 100(a0)833; RV64I-LP64E-NEXT:    lw a3, 104(a0)834; RV64I-LP64E-NEXT:    lw a2, 108(a0)835; RV64I-LP64E-NEXT:    sw a1, 124(a0)836; RV64I-LP64E-NEXT:    sw ra, 120(a0)837; RV64I-LP64E-NEXT:    sw s1, 116(a0)838; RV64I-LP64E-NEXT:    sw s0, 112(a0)839; RV64I-LP64E-NEXT:    sw a2, 108(a0)840; RV64I-LP64E-NEXT:    sw a3, 104(a0)841; RV64I-LP64E-NEXT:    sw a4, 100(a0)842; RV64I-LP64E-NEXT:    sw a5, 96(a0)843; RV64I-LP64E-NEXT:    sw s11, 92(a0)844; RV64I-LP64E-NEXT:    sw s10, 88(a0)845; RV64I-LP64E-NEXT:    sw s9, 84(a0)846; RV64I-LP64E-NEXT:    sw s8, 80(a0)847; RV64I-LP64E-NEXT:    sw s7, 76(a0)848; RV64I-LP64E-NEXT:    sw s6, 72(a0)849; RV64I-LP64E-NEXT:    sw s5, 68(a0)850; RV64I-LP64E-NEXT:    sw s4, 64(a0)851; RV64I-LP64E-NEXT:    sw s3, 60(a0)852; RV64I-LP64E-NEXT:    sw s2, 56(a0)853; RV64I-LP64E-NEXT:    sw t6, 52(a0)854; RV64I-LP64E-NEXT:    sw t5, 48(a0)855; RV64I-LP64E-NEXT:    sw t4, 44(a0)856; RV64I-LP64E-NEXT:    sw t3, 40(a0)857; RV64I-LP64E-NEXT:    sw t2, 36(a0)858; RV64I-LP64E-NEXT:    sw t1, 32(a0)859; RV64I-LP64E-NEXT:    sw t0, 28(a0)860; RV64I-LP64E-NEXT:    sw a7, 24(a0)861; RV64I-LP64E-NEXT:    sw a6, 20(a0)862; RV64I-LP64E-NEXT:    ld a1, 0(sp) # 8-byte Folded Reload863; RV64I-LP64E-NEXT:    sw a1, 16(a0)864; RV64I-LP64E-NEXT:    ld a1, 8(sp) # 8-byte Folded Reload865; RV64I-LP64E-NEXT:    sw a1, 12(a0)866; RV64I-LP64E-NEXT:    ld a1, 16(sp) # 8-byte Folded Reload867; RV64I-LP64E-NEXT:    sw a1, 8(a0)868; RV64I-LP64E-NEXT:    ld a1, 24(sp) # 8-byte Folded Reload869; RV64I-LP64E-NEXT:    sw a1, 4(a0)870; RV64I-LP64E-NEXT:    ld a1, 32(sp) # 8-byte Folded Reload871; RV64I-LP64E-NEXT:    sw a1, 0(a0)872; RV64I-LP64E-NEXT:    ld ra, 56(sp) # 8-byte Folded Reload873; RV64I-LP64E-NEXT:    ld s0, 48(sp) # 8-byte Folded Reload874; RV64I-LP64E-NEXT:    ld s1, 40(sp) # 8-byte Folded Reload875; RV64I-LP64E-NEXT:    .cfi_restore ra876; RV64I-LP64E-NEXT:    .cfi_restore s0877; RV64I-LP64E-NEXT:    .cfi_restore s1878; RV64I-LP64E-NEXT:    addi sp, sp, 64879; RV64I-LP64E-NEXT:    .cfi_def_cfa_offset 0880; RV64I-LP64E-NEXT:    ret881;882; RV64I-WITH-FP-LABEL: callee:883; RV64I-WITH-FP:       # %bb.0:884; RV64I-WITH-FP-NEXT:    addi sp, sp, -160885; RV64I-WITH-FP-NEXT:    .cfi_def_cfa_offset 160886; RV64I-WITH-FP-NEXT:    sd ra, 152(sp) # 8-byte Folded Spill887; RV64I-WITH-FP-NEXT:    sd s0, 144(sp) # 8-byte Folded Spill888; RV64I-WITH-FP-NEXT:    sd s1, 136(sp) # 8-byte Folded Spill889; RV64I-WITH-FP-NEXT:    sd s2, 128(sp) # 8-byte Folded Spill890; RV64I-WITH-FP-NEXT:    sd s3, 120(sp) # 8-byte Folded Spill891; RV64I-WITH-FP-NEXT:    sd s4, 112(sp) # 8-byte Folded Spill892; RV64I-WITH-FP-NEXT:    sd s5, 104(sp) # 8-byte Folded Spill893; RV64I-WITH-FP-NEXT:    sd s6, 96(sp) # 8-byte Folded Spill894; RV64I-WITH-FP-NEXT:    sd s7, 88(sp) # 8-byte Folded Spill895; RV64I-WITH-FP-NEXT:    sd s8, 80(sp) # 8-byte Folded Spill896; RV64I-WITH-FP-NEXT:    sd s9, 72(sp) # 8-byte Folded Spill897; RV64I-WITH-FP-NEXT:    sd s10, 64(sp) # 8-byte Folded Spill898; RV64I-WITH-FP-NEXT:    sd s11, 56(sp) # 8-byte Folded Spill899; RV64I-WITH-FP-NEXT:    .cfi_offset ra, -8900; RV64I-WITH-FP-NEXT:    .cfi_offset s0, -16901; RV64I-WITH-FP-NEXT:    .cfi_offset s1, -24902; RV64I-WITH-FP-NEXT:    .cfi_offset s2, -32903; RV64I-WITH-FP-NEXT:    .cfi_offset s3, -40904; RV64I-WITH-FP-NEXT:    .cfi_offset s4, -48905; RV64I-WITH-FP-NEXT:    .cfi_offset s5, -56906; RV64I-WITH-FP-NEXT:    .cfi_offset s6, -64907; RV64I-WITH-FP-NEXT:    .cfi_offset s7, -72908; RV64I-WITH-FP-NEXT:    .cfi_offset s8, -80909; RV64I-WITH-FP-NEXT:    .cfi_offset s9, -88910; RV64I-WITH-FP-NEXT:    .cfi_offset s10, -96911; RV64I-WITH-FP-NEXT:    .cfi_offset s11, -104912; RV64I-WITH-FP-NEXT:    addi s0, sp, 160913; RV64I-WITH-FP-NEXT:    .cfi_def_cfa s0, 0914; RV64I-WITH-FP-NEXT:    lui a0, %hi(var)915; RV64I-WITH-FP-NEXT:    addi a0, a0, %lo(var)916; RV64I-WITH-FP-NEXT:    lw a1, 0(a0)917; RV64I-WITH-FP-NEXT:    sd a1, -112(s0) # 8-byte Folded Spill918; RV64I-WITH-FP-NEXT:    lw a1, 4(a0)919; RV64I-WITH-FP-NEXT:    sd a1, -120(s0) # 8-byte Folded Spill920; RV64I-WITH-FP-NEXT:    lw a1, 8(a0)921; RV64I-WITH-FP-NEXT:    sd a1, -128(s0) # 8-byte Folded Spill922; RV64I-WITH-FP-NEXT:    lw a1, 12(a0)923; RV64I-WITH-FP-NEXT:    sd a1, -136(s0) # 8-byte Folded Spill924; RV64I-WITH-FP-NEXT:    lw a1, 16(a0)925; RV64I-WITH-FP-NEXT:    sd a1, -144(s0) # 8-byte Folded Spill926; RV64I-WITH-FP-NEXT:    lw a1, 20(a0)927; RV64I-WITH-FP-NEXT:    sd a1, -152(s0) # 8-byte Folded Spill928; RV64I-WITH-FP-NEXT:    lw a7, 24(a0)929; RV64I-WITH-FP-NEXT:    lw t0, 28(a0)930; RV64I-WITH-FP-NEXT:    lw t1, 32(a0)931; RV64I-WITH-FP-NEXT:    lw t2, 36(a0)932; RV64I-WITH-FP-NEXT:    lw t3, 40(a0)933; RV64I-WITH-FP-NEXT:    lw t4, 44(a0)934; RV64I-WITH-FP-NEXT:    lw t5, 48(a0)935; RV64I-WITH-FP-NEXT:    lw t6, 52(a0)936; RV64I-WITH-FP-NEXT:    lw s1, 56(a0)937; RV64I-WITH-FP-NEXT:    lw s2, 60(a0)938; RV64I-WITH-FP-NEXT:    lw s3, 64(a0)939; RV64I-WITH-FP-NEXT:    lw s4, 68(a0)940; RV64I-WITH-FP-NEXT:    lw s5, 72(a0)941; RV64I-WITH-FP-NEXT:    lw s6, 76(a0)942; RV64I-WITH-FP-NEXT:    lw s7, 80(a0)943; RV64I-WITH-FP-NEXT:    lw s8, 84(a0)944; RV64I-WITH-FP-NEXT:    lw s9, 88(a0)945; RV64I-WITH-FP-NEXT:    lw s10, 92(a0)946; RV64I-WITH-FP-NEXT:    lw s11, 112(a0)947; RV64I-WITH-FP-NEXT:    lw ra, 116(a0)948; RV64I-WITH-FP-NEXT:    lw a4, 120(a0)949; RV64I-WITH-FP-NEXT:    lw a1, 124(a0)950; RV64I-WITH-FP-NEXT:    lw a6, 96(a0)951; RV64I-WITH-FP-NEXT:    lw a5, 100(a0)952; RV64I-WITH-FP-NEXT:    lw a3, 104(a0)953; RV64I-WITH-FP-NEXT:    lw a2, 108(a0)954; RV64I-WITH-FP-NEXT:    sw a1, 124(a0)955; RV64I-WITH-FP-NEXT:    sw a4, 120(a0)956; RV64I-WITH-FP-NEXT:    sw ra, 116(a0)957; RV64I-WITH-FP-NEXT:    sw s11, 112(a0)958; RV64I-WITH-FP-NEXT:    sw a2, 108(a0)959; RV64I-WITH-FP-NEXT:    sw a3, 104(a0)960; RV64I-WITH-FP-NEXT:    sw a5, 100(a0)961; RV64I-WITH-FP-NEXT:    sw a6, 96(a0)962; RV64I-WITH-FP-NEXT:    sw s10, 92(a0)963; RV64I-WITH-FP-NEXT:    sw s9, 88(a0)964; RV64I-WITH-FP-NEXT:    sw s8, 84(a0)965; RV64I-WITH-FP-NEXT:    sw s7, 80(a0)966; RV64I-WITH-FP-NEXT:    sw s6, 76(a0)967; RV64I-WITH-FP-NEXT:    sw s5, 72(a0)968; RV64I-WITH-FP-NEXT:    sw s4, 68(a0)969; RV64I-WITH-FP-NEXT:    sw s3, 64(a0)970; RV64I-WITH-FP-NEXT:    sw s2, 60(a0)971; RV64I-WITH-FP-NEXT:    sw s1, 56(a0)972; RV64I-WITH-FP-NEXT:    sw t6, 52(a0)973; RV64I-WITH-FP-NEXT:    sw t5, 48(a0)974; RV64I-WITH-FP-NEXT:    sw t4, 44(a0)975; RV64I-WITH-FP-NEXT:    sw t3, 40(a0)976; RV64I-WITH-FP-NEXT:    sw t2, 36(a0)977; RV64I-WITH-FP-NEXT:    sw t1, 32(a0)978; RV64I-WITH-FP-NEXT:    sw t0, 28(a0)979; RV64I-WITH-FP-NEXT:    sw a7, 24(a0)980; RV64I-WITH-FP-NEXT:    ld a1, -152(s0) # 8-byte Folded Reload981; RV64I-WITH-FP-NEXT:    sw a1, 20(a0)982; RV64I-WITH-FP-NEXT:    ld a1, -144(s0) # 8-byte Folded Reload983; RV64I-WITH-FP-NEXT:    sw a1, 16(a0)984; RV64I-WITH-FP-NEXT:    ld a1, -136(s0) # 8-byte Folded Reload985; RV64I-WITH-FP-NEXT:    sw a1, 12(a0)986; RV64I-WITH-FP-NEXT:    ld a1, -128(s0) # 8-byte Folded Reload987; RV64I-WITH-FP-NEXT:    sw a1, 8(a0)988; RV64I-WITH-FP-NEXT:    ld a1, -120(s0) # 8-byte Folded Reload989; RV64I-WITH-FP-NEXT:    sw a1, 4(a0)990; RV64I-WITH-FP-NEXT:    ld a1, -112(s0) # 8-byte Folded Reload991; RV64I-WITH-FP-NEXT:    sw a1, 0(a0)992; RV64I-WITH-FP-NEXT:    .cfi_def_cfa sp, 160993; RV64I-WITH-FP-NEXT:    ld ra, 152(sp) # 8-byte Folded Reload994; RV64I-WITH-FP-NEXT:    ld s0, 144(sp) # 8-byte Folded Reload995; RV64I-WITH-FP-NEXT:    ld s1, 136(sp) # 8-byte Folded Reload996; RV64I-WITH-FP-NEXT:    ld s2, 128(sp) # 8-byte Folded Reload997; RV64I-WITH-FP-NEXT:    ld s3, 120(sp) # 8-byte Folded Reload998; RV64I-WITH-FP-NEXT:    ld s4, 112(sp) # 8-byte Folded Reload999; RV64I-WITH-FP-NEXT:    ld s5, 104(sp) # 8-byte Folded Reload1000; RV64I-WITH-FP-NEXT:    ld s6, 96(sp) # 8-byte Folded Reload1001; RV64I-WITH-FP-NEXT:    ld s7, 88(sp) # 8-byte Folded Reload1002; RV64I-WITH-FP-NEXT:    ld s8, 80(sp) # 8-byte Folded Reload1003; RV64I-WITH-FP-NEXT:    ld s9, 72(sp) # 8-byte Folded Reload1004; RV64I-WITH-FP-NEXT:    ld s10, 64(sp) # 8-byte Folded Reload1005; RV64I-WITH-FP-NEXT:    ld s11, 56(sp) # 8-byte Folded Reload1006; RV64I-WITH-FP-NEXT:    .cfi_restore ra1007; RV64I-WITH-FP-NEXT:    .cfi_restore s01008; RV64I-WITH-FP-NEXT:    .cfi_restore s11009; RV64I-WITH-FP-NEXT:    .cfi_restore s21010; RV64I-WITH-FP-NEXT:    .cfi_restore s31011; RV64I-WITH-FP-NEXT:    .cfi_restore s41012; RV64I-WITH-FP-NEXT:    .cfi_restore s51013; RV64I-WITH-FP-NEXT:    .cfi_restore s61014; RV64I-WITH-FP-NEXT:    .cfi_restore s71015; RV64I-WITH-FP-NEXT:    .cfi_restore s81016; RV64I-WITH-FP-NEXT:    .cfi_restore s91017; RV64I-WITH-FP-NEXT:    .cfi_restore s101018; RV64I-WITH-FP-NEXT:    .cfi_restore s111019; RV64I-WITH-FP-NEXT:    addi sp, sp, 1601020; RV64I-WITH-FP-NEXT:    .cfi_def_cfa_offset 01021; RV64I-WITH-FP-NEXT:    ret1022;1023; RV64IZCMP-LABEL: callee:1024; RV64IZCMP:       # %bb.0:1025; RV64IZCMP-NEXT:    cm.push {ra, s0-s11}, -1601026; RV64IZCMP-NEXT:    .cfi_def_cfa_offset 1601027; RV64IZCMP-NEXT:    .cfi_offset ra, -1041028; RV64IZCMP-NEXT:    .cfi_offset s0, -961029; RV64IZCMP-NEXT:    .cfi_offset s1, -881030; RV64IZCMP-NEXT:    .cfi_offset s2, -801031; RV64IZCMP-NEXT:    .cfi_offset s3, -721032; RV64IZCMP-NEXT:    .cfi_offset s4, -641033; RV64IZCMP-NEXT:    .cfi_offset s5, -561034; RV64IZCMP-NEXT:    .cfi_offset s6, -481035; RV64IZCMP-NEXT:    .cfi_offset s7, -401036; RV64IZCMP-NEXT:    .cfi_offset s8, -321037; RV64IZCMP-NEXT:    .cfi_offset s9, -241038; RV64IZCMP-NEXT:    .cfi_offset s10, -161039; RV64IZCMP-NEXT:    .cfi_offset s11, -81040; RV64IZCMP-NEXT:    lui a0, %hi(var)1041; RV64IZCMP-NEXT:    addi a0, a0, %lo(var)1042; RV64IZCMP-NEXT:    lw a1, 0(a0)1043; RV64IZCMP-NEXT:    sd a1, 40(sp) # 8-byte Folded Spill1044; RV64IZCMP-NEXT:    lw a1, 4(a0)1045; RV64IZCMP-NEXT:    sd a1, 32(sp) # 8-byte Folded Spill1046; RV64IZCMP-NEXT:    lw a1, 8(a0)1047; RV64IZCMP-NEXT:    sd a1, 24(sp) # 8-byte Folded Spill1048; RV64IZCMP-NEXT:    lw a1, 12(a0)1049; RV64IZCMP-NEXT:    sd a1, 16(sp) # 8-byte Folded Spill1050; RV64IZCMP-NEXT:    lw a1, 16(a0)1051; RV64IZCMP-NEXT:    sd a1, 8(sp) # 8-byte Folded Spill1052; RV64IZCMP-NEXT:    lw t3, 20(a0)1053; RV64IZCMP-NEXT:    lw t4, 24(a0)1054; RV64IZCMP-NEXT:    lw t5, 28(a0)1055; RV64IZCMP-NEXT:    lw t6, 32(a0)1056; RV64IZCMP-NEXT:    lw s2, 36(a0)1057; RV64IZCMP-NEXT:    lw s3, 40(a0)1058; RV64IZCMP-NEXT:    lw s4, 44(a0)1059; RV64IZCMP-NEXT:    lw s5, 48(a0)1060; RV64IZCMP-NEXT:    lw s6, 52(a0)1061; RV64IZCMP-NEXT:    lw s7, 56(a0)1062; RV64IZCMP-NEXT:    lw s8, 60(a0)1063; RV64IZCMP-NEXT:    lw s9, 64(a0)1064; RV64IZCMP-NEXT:    lw s10, 68(a0)1065; RV64IZCMP-NEXT:    lw s11, 72(a0)1066; RV64IZCMP-NEXT:    lw ra, 76(a0)1067; RV64IZCMP-NEXT:    lw t2, 80(a0)1068; RV64IZCMP-NEXT:    lw s0, 84(a0)1069; RV64IZCMP-NEXT:    lw s1, 88(a0)1070; RV64IZCMP-NEXT:    lw t1, 92(a0)1071; RV64IZCMP-NEXT:    lw t0, 112(a0)1072; RV64IZCMP-NEXT:    lw a5, 116(a0)1073; RV64IZCMP-NEXT:    lw a3, 120(a0)1074; RV64IZCMP-NEXT:    lw a1, 124(a0)1075; RV64IZCMP-NEXT:    lw a7, 96(a0)1076; RV64IZCMP-NEXT:    lw a6, 100(a0)1077; RV64IZCMP-NEXT:    lw a4, 104(a0)1078; RV64IZCMP-NEXT:    lw a2, 108(a0)1079; RV64IZCMP-NEXT:    sw a1, 124(a0)1080; RV64IZCMP-NEXT:    sw a3, 120(a0)1081; RV64IZCMP-NEXT:    sw a5, 116(a0)1082; RV64IZCMP-NEXT:    sw t0, 112(a0)1083; RV64IZCMP-NEXT:    sw a2, 108(a0)1084; RV64IZCMP-NEXT:    sw a4, 104(a0)1085; RV64IZCMP-NEXT:    sw a6, 100(a0)1086; RV64IZCMP-NEXT:    sw a7, 96(a0)1087; RV64IZCMP-NEXT:    sw t1, 92(a0)1088; RV64IZCMP-NEXT:    sw s1, 88(a0)1089; RV64IZCMP-NEXT:    sw s0, 84(a0)1090; RV64IZCMP-NEXT:    sw t2, 80(a0)1091; RV64IZCMP-NEXT:    sw ra, 76(a0)1092; RV64IZCMP-NEXT:    sw s11, 72(a0)1093; RV64IZCMP-NEXT:    sw s10, 68(a0)1094; RV64IZCMP-NEXT:    sw s9, 64(a0)1095; RV64IZCMP-NEXT:    sw s8, 60(a0)1096; RV64IZCMP-NEXT:    sw s7, 56(a0)1097; RV64IZCMP-NEXT:    sw s6, 52(a0)1098; RV64IZCMP-NEXT:    sw s5, 48(a0)1099; RV64IZCMP-NEXT:    sw s4, 44(a0)1100; RV64IZCMP-NEXT:    sw s3, 40(a0)1101; RV64IZCMP-NEXT:    sw s2, 36(a0)1102; RV64IZCMP-NEXT:    sw t6, 32(a0)1103; RV64IZCMP-NEXT:    sw t5, 28(a0)1104; RV64IZCMP-NEXT:    sw t4, 24(a0)1105; RV64IZCMP-NEXT:    sw t3, 20(a0)1106; RV64IZCMP-NEXT:    ld a1, 8(sp) # 8-byte Folded Reload1107; RV64IZCMP-NEXT:    sw a1, 16(a0)1108; RV64IZCMP-NEXT:    ld a1, 16(sp) # 8-byte Folded Reload1109; RV64IZCMP-NEXT:    sw a1, 12(a0)1110; RV64IZCMP-NEXT:    ld a1, 24(sp) # 8-byte Folded Reload1111; RV64IZCMP-NEXT:    sw a1, 8(a0)1112; RV64IZCMP-NEXT:    ld a1, 32(sp) # 8-byte Folded Reload1113; RV64IZCMP-NEXT:    sw a1, 4(a0)1114; RV64IZCMP-NEXT:    ld a1, 40(sp) # 8-byte Folded Reload1115; RV64IZCMP-NEXT:    sw a1, 0(a0)1116; RV64IZCMP-NEXT:    cm.popret {ra, s0-s11}, 1601117;1118; RV64IZCMP-WITH-FP-LABEL: callee:1119; RV64IZCMP-WITH-FP:       # %bb.0:1120; RV64IZCMP-WITH-FP-NEXT:    addi sp, sp, -1601121; RV64IZCMP-WITH-FP-NEXT:    .cfi_def_cfa_offset 1601122; RV64IZCMP-WITH-FP-NEXT:    sd ra, 152(sp) # 8-byte Folded Spill1123; RV64IZCMP-WITH-FP-NEXT:    sd s0, 144(sp) # 8-byte Folded Spill1124; RV64IZCMP-WITH-FP-NEXT:    sd s1, 136(sp) # 8-byte Folded Spill1125; RV64IZCMP-WITH-FP-NEXT:    sd s2, 128(sp) # 8-byte Folded Spill1126; RV64IZCMP-WITH-FP-NEXT:    sd s3, 120(sp) # 8-byte Folded Spill1127; RV64IZCMP-WITH-FP-NEXT:    sd s4, 112(sp) # 8-byte Folded Spill1128; RV64IZCMP-WITH-FP-NEXT:    sd s5, 104(sp) # 8-byte Folded Spill1129; RV64IZCMP-WITH-FP-NEXT:    sd s6, 96(sp) # 8-byte Folded Spill1130; RV64IZCMP-WITH-FP-NEXT:    sd s7, 88(sp) # 8-byte Folded Spill1131; RV64IZCMP-WITH-FP-NEXT:    sd s8, 80(sp) # 8-byte Folded Spill1132; RV64IZCMP-WITH-FP-NEXT:    sd s9, 72(sp) # 8-byte Folded Spill1133; RV64IZCMP-WITH-FP-NEXT:    sd s10, 64(sp) # 8-byte Folded Spill1134; RV64IZCMP-WITH-FP-NEXT:    sd s11, 56(sp) # 8-byte Folded Spill1135; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset ra, -81136; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset s0, -161137; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset s1, -241138; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset s2, -321139; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset s3, -401140; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset s4, -481141; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset s5, -561142; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset s6, -641143; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset s7, -721144; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset s8, -801145; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset s9, -881146; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset s10, -961147; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset s11, -1041148; RV64IZCMP-WITH-FP-NEXT:    addi s0, sp, 1601149; RV64IZCMP-WITH-FP-NEXT:    .cfi_def_cfa s0, 01150; RV64IZCMP-WITH-FP-NEXT:    lui a0, %hi(var)1151; RV64IZCMP-WITH-FP-NEXT:    addi a0, a0, %lo(var)1152; RV64IZCMP-WITH-FP-NEXT:    lw a1, 0(a0)1153; RV64IZCMP-WITH-FP-NEXT:    sd a1, -112(s0) # 8-byte Folded Spill1154; RV64IZCMP-WITH-FP-NEXT:    lw a1, 4(a0)1155; RV64IZCMP-WITH-FP-NEXT:    sd a1, -120(s0) # 8-byte Folded Spill1156; RV64IZCMP-WITH-FP-NEXT:    lw a1, 8(a0)1157; RV64IZCMP-WITH-FP-NEXT:    sd a1, -128(s0) # 8-byte Folded Spill1158; RV64IZCMP-WITH-FP-NEXT:    lw a1, 12(a0)1159; RV64IZCMP-WITH-FP-NEXT:    sd a1, -136(s0) # 8-byte Folded Spill1160; RV64IZCMP-WITH-FP-NEXT:    lw a1, 16(a0)1161; RV64IZCMP-WITH-FP-NEXT:    sd a1, -144(s0) # 8-byte Folded Spill1162; RV64IZCMP-WITH-FP-NEXT:    lw a1, 20(a0)1163; RV64IZCMP-WITH-FP-NEXT:    sd a1, -152(s0) # 8-byte Folded Spill1164; RV64IZCMP-WITH-FP-NEXT:    lw t4, 24(a0)1165; RV64IZCMP-WITH-FP-NEXT:    lw t5, 28(a0)1166; RV64IZCMP-WITH-FP-NEXT:    lw t6, 32(a0)1167; RV64IZCMP-WITH-FP-NEXT:    lw s2, 36(a0)1168; RV64IZCMP-WITH-FP-NEXT:    lw s3, 40(a0)1169; RV64IZCMP-WITH-FP-NEXT:    lw s4, 44(a0)1170; RV64IZCMP-WITH-FP-NEXT:    lw s5, 48(a0)1171; RV64IZCMP-WITH-FP-NEXT:    lw s6, 52(a0)1172; RV64IZCMP-WITH-FP-NEXT:    lw s7, 56(a0)1173; RV64IZCMP-WITH-FP-NEXT:    lw s8, 60(a0)1174; RV64IZCMP-WITH-FP-NEXT:    lw s9, 64(a0)1175; RV64IZCMP-WITH-FP-NEXT:    lw s10, 68(a0)1176; RV64IZCMP-WITH-FP-NEXT:    lw s11, 72(a0)1177; RV64IZCMP-WITH-FP-NEXT:    lw ra, 76(a0)1178; RV64IZCMP-WITH-FP-NEXT:    lw s1, 80(a0)1179; RV64IZCMP-WITH-FP-NEXT:    lw t3, 84(a0)1180; RV64IZCMP-WITH-FP-NEXT:    lw t2, 88(a0)1181; RV64IZCMP-WITH-FP-NEXT:    lw t1, 92(a0)1182; RV64IZCMP-WITH-FP-NEXT:    lw t0, 112(a0)1183; RV64IZCMP-WITH-FP-NEXT:    lw a6, 116(a0)1184; RV64IZCMP-WITH-FP-NEXT:    lw a4, 120(a0)1185; RV64IZCMP-WITH-FP-NEXT:    lw a1, 124(a0)1186; RV64IZCMP-WITH-FP-NEXT:    lw a7, 96(a0)1187; RV64IZCMP-WITH-FP-NEXT:    lw a5, 100(a0)1188; RV64IZCMP-WITH-FP-NEXT:    lw a3, 104(a0)1189; RV64IZCMP-WITH-FP-NEXT:    lw a2, 108(a0)1190; RV64IZCMP-WITH-FP-NEXT:    sw a1, 124(a0)1191; RV64IZCMP-WITH-FP-NEXT:    sw a4, 120(a0)1192; RV64IZCMP-WITH-FP-NEXT:    sw a6, 116(a0)1193; RV64IZCMP-WITH-FP-NEXT:    sw t0, 112(a0)1194; RV64IZCMP-WITH-FP-NEXT:    sw a2, 108(a0)1195; RV64IZCMP-WITH-FP-NEXT:    sw a3, 104(a0)1196; RV64IZCMP-WITH-FP-NEXT:    sw a5, 100(a0)1197; RV64IZCMP-WITH-FP-NEXT:    sw a7, 96(a0)1198; RV64IZCMP-WITH-FP-NEXT:    sw t1, 92(a0)1199; RV64IZCMP-WITH-FP-NEXT:    sw t2, 88(a0)1200; RV64IZCMP-WITH-FP-NEXT:    sw t3, 84(a0)1201; RV64IZCMP-WITH-FP-NEXT:    sw s1, 80(a0)1202; RV64IZCMP-WITH-FP-NEXT:    sw ra, 76(a0)1203; RV64IZCMP-WITH-FP-NEXT:    sw s11, 72(a0)1204; RV64IZCMP-WITH-FP-NEXT:    sw s10, 68(a0)1205; RV64IZCMP-WITH-FP-NEXT:    sw s9, 64(a0)1206; RV64IZCMP-WITH-FP-NEXT:    sw s8, 60(a0)1207; RV64IZCMP-WITH-FP-NEXT:    sw s7, 56(a0)1208; RV64IZCMP-WITH-FP-NEXT:    sw s6, 52(a0)1209; RV64IZCMP-WITH-FP-NEXT:    sw s5, 48(a0)1210; RV64IZCMP-WITH-FP-NEXT:    sw s4, 44(a0)1211; RV64IZCMP-WITH-FP-NEXT:    sw s3, 40(a0)1212; RV64IZCMP-WITH-FP-NEXT:    sw s2, 36(a0)1213; RV64IZCMP-WITH-FP-NEXT:    sw t6, 32(a0)1214; RV64IZCMP-WITH-FP-NEXT:    sw t5, 28(a0)1215; RV64IZCMP-WITH-FP-NEXT:    sw t4, 24(a0)1216; RV64IZCMP-WITH-FP-NEXT:    ld a1, -152(s0) # 8-byte Folded Reload1217; RV64IZCMP-WITH-FP-NEXT:    sw a1, 20(a0)1218; RV64IZCMP-WITH-FP-NEXT:    ld a1, -144(s0) # 8-byte Folded Reload1219; RV64IZCMP-WITH-FP-NEXT:    sw a1, 16(a0)1220; RV64IZCMP-WITH-FP-NEXT:    ld a1, -136(s0) # 8-byte Folded Reload1221; RV64IZCMP-WITH-FP-NEXT:    sw a1, 12(a0)1222; RV64IZCMP-WITH-FP-NEXT:    ld a1, -128(s0) # 8-byte Folded Reload1223; RV64IZCMP-WITH-FP-NEXT:    sw a1, 8(a0)1224; RV64IZCMP-WITH-FP-NEXT:    ld a1, -120(s0) # 8-byte Folded Reload1225; RV64IZCMP-WITH-FP-NEXT:    sw a1, 4(a0)1226; RV64IZCMP-WITH-FP-NEXT:    ld a1, -112(s0) # 8-byte Folded Reload1227; RV64IZCMP-WITH-FP-NEXT:    sw a1, 0(a0)1228; RV64IZCMP-WITH-FP-NEXT:    .cfi_def_cfa sp, 1601229; RV64IZCMP-WITH-FP-NEXT:    ld ra, 152(sp) # 8-byte Folded Reload1230; RV64IZCMP-WITH-FP-NEXT:    ld s0, 144(sp) # 8-byte Folded Reload1231; RV64IZCMP-WITH-FP-NEXT:    ld s1, 136(sp) # 8-byte Folded Reload1232; RV64IZCMP-WITH-FP-NEXT:    ld s2, 128(sp) # 8-byte Folded Reload1233; RV64IZCMP-WITH-FP-NEXT:    ld s3, 120(sp) # 8-byte Folded Reload1234; RV64IZCMP-WITH-FP-NEXT:    ld s4, 112(sp) # 8-byte Folded Reload1235; RV64IZCMP-WITH-FP-NEXT:    ld s5, 104(sp) # 8-byte Folded Reload1236; RV64IZCMP-WITH-FP-NEXT:    ld s6, 96(sp) # 8-byte Folded Reload1237; RV64IZCMP-WITH-FP-NEXT:    ld s7, 88(sp) # 8-byte Folded Reload1238; RV64IZCMP-WITH-FP-NEXT:    ld s8, 80(sp) # 8-byte Folded Reload1239; RV64IZCMP-WITH-FP-NEXT:    ld s9, 72(sp) # 8-byte Folded Reload1240; RV64IZCMP-WITH-FP-NEXT:    ld s10, 64(sp) # 8-byte Folded Reload1241; RV64IZCMP-WITH-FP-NEXT:    ld s11, 56(sp) # 8-byte Folded Reload1242; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore ra1243; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore s01244; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore s11245; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore s21246; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore s31247; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore s41248; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore s51249; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore s61250; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore s71251; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore s81252; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore s91253; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore s101254; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore s111255; RV64IZCMP-WITH-FP-NEXT:    addi sp, sp, 1601256; RV64IZCMP-WITH-FP-NEXT:    .cfi_def_cfa_offset 01257; RV64IZCMP-WITH-FP-NEXT:    ret1258  %val = load [32 x i32], ptr @var1259  store volatile [32 x i32] %val, ptr @var1260  ret void1261}1262 1263; This function tests that RISCVRegisterInfo::getCallPreservedMask returns1264; something appropriate.1265 1266define void @caller() {1267; RV32I-LABEL: caller:1268; RV32I:       # %bb.0:1269; RV32I-NEXT:    addi sp, sp, -1441270; RV32I-NEXT:    .cfi_def_cfa_offset 1441271; RV32I-NEXT:    sw ra, 140(sp) # 4-byte Folded Spill1272; RV32I-NEXT:    sw s0, 136(sp) # 4-byte Folded Spill1273; RV32I-NEXT:    sw s1, 132(sp) # 4-byte Folded Spill1274; RV32I-NEXT:    sw s2, 128(sp) # 4-byte Folded Spill1275; RV32I-NEXT:    sw s3, 124(sp) # 4-byte Folded Spill1276; RV32I-NEXT:    sw s4, 120(sp) # 4-byte Folded Spill1277; RV32I-NEXT:    sw s5, 116(sp) # 4-byte Folded Spill1278; RV32I-NEXT:    sw s6, 112(sp) # 4-byte Folded Spill1279; RV32I-NEXT:    sw s7, 108(sp) # 4-byte Folded Spill1280; RV32I-NEXT:    sw s8, 104(sp) # 4-byte Folded Spill1281; RV32I-NEXT:    sw s9, 100(sp) # 4-byte Folded Spill1282; RV32I-NEXT:    sw s10, 96(sp) # 4-byte Folded Spill1283; RV32I-NEXT:    sw s11, 92(sp) # 4-byte Folded Spill1284; RV32I-NEXT:    .cfi_offset ra, -41285; RV32I-NEXT:    .cfi_offset s0, -81286; RV32I-NEXT:    .cfi_offset s1, -121287; RV32I-NEXT:    .cfi_offset s2, -161288; RV32I-NEXT:    .cfi_offset s3, -201289; RV32I-NEXT:    .cfi_offset s4, -241290; RV32I-NEXT:    .cfi_offset s5, -281291; RV32I-NEXT:    .cfi_offset s6, -321292; RV32I-NEXT:    .cfi_offset s7, -361293; RV32I-NEXT:    .cfi_offset s8, -401294; RV32I-NEXT:    .cfi_offset s9, -441295; RV32I-NEXT:    .cfi_offset s10, -481296; RV32I-NEXT:    .cfi_offset s11, -521297; RV32I-NEXT:    lui s0, %hi(var)1298; RV32I-NEXT:    addi s0, s0, %lo(var)1299; RV32I-NEXT:    lw a0, 0(s0)1300; RV32I-NEXT:    sw a0, 88(sp) # 4-byte Folded Spill1301; RV32I-NEXT:    lw a0, 4(s0)1302; RV32I-NEXT:    sw a0, 84(sp) # 4-byte Folded Spill1303; RV32I-NEXT:    lw a0, 8(s0)1304; RV32I-NEXT:    sw a0, 80(sp) # 4-byte Folded Spill1305; RV32I-NEXT:    lw a0, 12(s0)1306; RV32I-NEXT:    sw a0, 76(sp) # 4-byte Folded Spill1307; RV32I-NEXT:    lw a0, 16(s0)1308; RV32I-NEXT:    sw a0, 72(sp) # 4-byte Folded Spill1309; RV32I-NEXT:    lw a0, 20(s0)1310; RV32I-NEXT:    sw a0, 68(sp) # 4-byte Folded Spill1311; RV32I-NEXT:    lw a0, 24(s0)1312; RV32I-NEXT:    sw a0, 64(sp) # 4-byte Folded Spill1313; RV32I-NEXT:    lw a0, 28(s0)1314; RV32I-NEXT:    sw a0, 60(sp) # 4-byte Folded Spill1315; RV32I-NEXT:    lw a0, 32(s0)1316; RV32I-NEXT:    sw a0, 56(sp) # 4-byte Folded Spill1317; RV32I-NEXT:    lw a0, 36(s0)1318; RV32I-NEXT:    sw a0, 52(sp) # 4-byte Folded Spill1319; RV32I-NEXT:    lw a0, 40(s0)1320; RV32I-NEXT:    sw a0, 48(sp) # 4-byte Folded Spill1321; RV32I-NEXT:    lw a0, 44(s0)1322; RV32I-NEXT:    sw a0, 44(sp) # 4-byte Folded Spill1323; RV32I-NEXT:    lw a0, 48(s0)1324; RV32I-NEXT:    sw a0, 40(sp) # 4-byte Folded Spill1325; RV32I-NEXT:    lw a0, 52(s0)1326; RV32I-NEXT:    sw a0, 36(sp) # 4-byte Folded Spill1327; RV32I-NEXT:    lw a0, 56(s0)1328; RV32I-NEXT:    sw a0, 32(sp) # 4-byte Folded Spill1329; RV32I-NEXT:    lw a0, 60(s0)1330; RV32I-NEXT:    sw a0, 28(sp) # 4-byte Folded Spill1331; RV32I-NEXT:    lw a0, 64(s0)1332; RV32I-NEXT:    sw a0, 24(sp) # 4-byte Folded Spill1333; RV32I-NEXT:    lw a0, 68(s0)1334; RV32I-NEXT:    sw a0, 20(sp) # 4-byte Folded Spill1335; RV32I-NEXT:    lw a0, 72(s0)1336; RV32I-NEXT:    sw a0, 16(sp) # 4-byte Folded Spill1337; RV32I-NEXT:    lw a0, 76(s0)1338; RV32I-NEXT:    sw a0, 12(sp) # 4-byte Folded Spill1339; RV32I-NEXT:    lw a0, 80(s0)1340; RV32I-NEXT:    sw a0, 8(sp) # 4-byte Folded Spill1341; RV32I-NEXT:    lw s11, 84(s0)1342; RV32I-NEXT:    lw s1, 88(s0)1343; RV32I-NEXT:    lw s2, 92(s0)1344; RV32I-NEXT:    lw s3, 96(s0)1345; RV32I-NEXT:    lw s4, 100(s0)1346; RV32I-NEXT:    lw s5, 104(s0)1347; RV32I-NEXT:    lw s6, 108(s0)1348; RV32I-NEXT:    lw s7, 112(s0)1349; RV32I-NEXT:    lw s8, 116(s0)1350; RV32I-NEXT:    lw s9, 120(s0)1351; RV32I-NEXT:    lw s10, 124(s0)1352; RV32I-NEXT:    call callee1353; RV32I-NEXT:    sw s10, 124(s0)1354; RV32I-NEXT:    sw s9, 120(s0)1355; RV32I-NEXT:    sw s8, 116(s0)1356; RV32I-NEXT:    sw s7, 112(s0)1357; RV32I-NEXT:    sw s6, 108(s0)1358; RV32I-NEXT:    sw s5, 104(s0)1359; RV32I-NEXT:    sw s4, 100(s0)1360; RV32I-NEXT:    sw s3, 96(s0)1361; RV32I-NEXT:    sw s2, 92(s0)1362; RV32I-NEXT:    sw s1, 88(s0)1363; RV32I-NEXT:    sw s11, 84(s0)1364; RV32I-NEXT:    lw a0, 8(sp) # 4-byte Folded Reload1365; RV32I-NEXT:    sw a0, 80(s0)1366; RV32I-NEXT:    lw a0, 12(sp) # 4-byte Folded Reload1367; RV32I-NEXT:    sw a0, 76(s0)1368; RV32I-NEXT:    lw a0, 16(sp) # 4-byte Folded Reload1369; RV32I-NEXT:    sw a0, 72(s0)1370; RV32I-NEXT:    lw a0, 20(sp) # 4-byte Folded Reload1371; RV32I-NEXT:    sw a0, 68(s0)1372; RV32I-NEXT:    lw a0, 24(sp) # 4-byte Folded Reload1373; RV32I-NEXT:    sw a0, 64(s0)1374; RV32I-NEXT:    lw a0, 28(sp) # 4-byte Folded Reload1375; RV32I-NEXT:    sw a0, 60(s0)1376; RV32I-NEXT:    lw a0, 32(sp) # 4-byte Folded Reload1377; RV32I-NEXT:    sw a0, 56(s0)1378; RV32I-NEXT:    lw a0, 36(sp) # 4-byte Folded Reload1379; RV32I-NEXT:    sw a0, 52(s0)1380; RV32I-NEXT:    lw a0, 40(sp) # 4-byte Folded Reload1381; RV32I-NEXT:    sw a0, 48(s0)1382; RV32I-NEXT:    lw a0, 44(sp) # 4-byte Folded Reload1383; RV32I-NEXT:    sw a0, 44(s0)1384; RV32I-NEXT:    lw a0, 48(sp) # 4-byte Folded Reload1385; RV32I-NEXT:    sw a0, 40(s0)1386; RV32I-NEXT:    lw a0, 52(sp) # 4-byte Folded Reload1387; RV32I-NEXT:    sw a0, 36(s0)1388; RV32I-NEXT:    lw a0, 56(sp) # 4-byte Folded Reload1389; RV32I-NEXT:    sw a0, 32(s0)1390; RV32I-NEXT:    lw a0, 60(sp) # 4-byte Folded Reload1391; RV32I-NEXT:    sw a0, 28(s0)1392; RV32I-NEXT:    lw a0, 64(sp) # 4-byte Folded Reload1393; RV32I-NEXT:    sw a0, 24(s0)1394; RV32I-NEXT:    lw a0, 68(sp) # 4-byte Folded Reload1395; RV32I-NEXT:    sw a0, 20(s0)1396; RV32I-NEXT:    lw a0, 72(sp) # 4-byte Folded Reload1397; RV32I-NEXT:    sw a0, 16(s0)1398; RV32I-NEXT:    lw a0, 76(sp) # 4-byte Folded Reload1399; RV32I-NEXT:    sw a0, 12(s0)1400; RV32I-NEXT:    lw a0, 80(sp) # 4-byte Folded Reload1401; RV32I-NEXT:    sw a0, 8(s0)1402; RV32I-NEXT:    lw a0, 84(sp) # 4-byte Folded Reload1403; RV32I-NEXT:    sw a0, 4(s0)1404; RV32I-NEXT:    lw a0, 88(sp) # 4-byte Folded Reload1405; RV32I-NEXT:    sw a0, 0(s0)1406; RV32I-NEXT:    lw ra, 140(sp) # 4-byte Folded Reload1407; RV32I-NEXT:    lw s0, 136(sp) # 4-byte Folded Reload1408; RV32I-NEXT:    lw s1, 132(sp) # 4-byte Folded Reload1409; RV32I-NEXT:    lw s2, 128(sp) # 4-byte Folded Reload1410; RV32I-NEXT:    lw s3, 124(sp) # 4-byte Folded Reload1411; RV32I-NEXT:    lw s4, 120(sp) # 4-byte Folded Reload1412; RV32I-NEXT:    lw s5, 116(sp) # 4-byte Folded Reload1413; RV32I-NEXT:    lw s6, 112(sp) # 4-byte Folded Reload1414; RV32I-NEXT:    lw s7, 108(sp) # 4-byte Folded Reload1415; RV32I-NEXT:    lw s8, 104(sp) # 4-byte Folded Reload1416; RV32I-NEXT:    lw s9, 100(sp) # 4-byte Folded Reload1417; RV32I-NEXT:    lw s10, 96(sp) # 4-byte Folded Reload1418; RV32I-NEXT:    lw s11, 92(sp) # 4-byte Folded Reload1419; RV32I-NEXT:    .cfi_restore ra1420; RV32I-NEXT:    .cfi_restore s01421; RV32I-NEXT:    .cfi_restore s11422; RV32I-NEXT:    .cfi_restore s21423; RV32I-NEXT:    .cfi_restore s31424; RV32I-NEXT:    .cfi_restore s41425; RV32I-NEXT:    .cfi_restore s51426; RV32I-NEXT:    .cfi_restore s61427; RV32I-NEXT:    .cfi_restore s71428; RV32I-NEXT:    .cfi_restore s81429; RV32I-NEXT:    .cfi_restore s91430; RV32I-NEXT:    .cfi_restore s101431; RV32I-NEXT:    .cfi_restore s111432; RV32I-NEXT:    addi sp, sp, 1441433; RV32I-NEXT:    .cfi_def_cfa_offset 01434; RV32I-NEXT:    ret1435;1436; RV32I-ILP32E-LABEL: caller:1437; RV32I-ILP32E:       # %bb.0:1438; RV32I-ILP32E-NEXT:    addi sp, sp, -1361439; RV32I-ILP32E-NEXT:    .cfi_def_cfa_offset 1361440; RV32I-ILP32E-NEXT:    sw ra, 132(sp) # 4-byte Folded Spill1441; RV32I-ILP32E-NEXT:    sw s0, 128(sp) # 4-byte Folded Spill1442; RV32I-ILP32E-NEXT:    sw s1, 124(sp) # 4-byte Folded Spill1443; RV32I-ILP32E-NEXT:    .cfi_offset ra, -41444; RV32I-ILP32E-NEXT:    .cfi_offset s0, -81445; RV32I-ILP32E-NEXT:    .cfi_offset s1, -121446; RV32I-ILP32E-NEXT:    lui s0, %hi(var)1447; RV32I-ILP32E-NEXT:    addi s0, s0, %lo(var)1448; RV32I-ILP32E-NEXT:    lw a0, 0(s0)1449; RV32I-ILP32E-NEXT:    sw a0, 120(sp) # 4-byte Folded Spill1450; RV32I-ILP32E-NEXT:    lw a0, 4(s0)1451; RV32I-ILP32E-NEXT:    sw a0, 116(sp) # 4-byte Folded Spill1452; RV32I-ILP32E-NEXT:    lw a0, 8(s0)1453; RV32I-ILP32E-NEXT:    sw a0, 112(sp) # 4-byte Folded Spill1454; RV32I-ILP32E-NEXT:    lw a0, 12(s0)1455; RV32I-ILP32E-NEXT:    sw a0, 108(sp) # 4-byte Folded Spill1456; RV32I-ILP32E-NEXT:    lw a0, 16(s0)1457; RV32I-ILP32E-NEXT:    sw a0, 104(sp) # 4-byte Folded Spill1458; RV32I-ILP32E-NEXT:    lw a0, 20(s0)1459; RV32I-ILP32E-NEXT:    sw a0, 100(sp) # 4-byte Folded Spill1460; RV32I-ILP32E-NEXT:    lw a0, 24(s0)1461; RV32I-ILP32E-NEXT:    sw a0, 96(sp) # 4-byte Folded Spill1462; RV32I-ILP32E-NEXT:    lw a0, 28(s0)1463; RV32I-ILP32E-NEXT:    sw a0, 92(sp) # 4-byte Folded Spill1464; RV32I-ILP32E-NEXT:    lw a0, 32(s0)1465; RV32I-ILP32E-NEXT:    sw a0, 88(sp) # 4-byte Folded Spill1466; RV32I-ILP32E-NEXT:    lw a0, 36(s0)1467; RV32I-ILP32E-NEXT:    sw a0, 84(sp) # 4-byte Folded Spill1468; RV32I-ILP32E-NEXT:    lw a0, 40(s0)1469; RV32I-ILP32E-NEXT:    sw a0, 80(sp) # 4-byte Folded Spill1470; RV32I-ILP32E-NEXT:    lw a0, 44(s0)1471; RV32I-ILP32E-NEXT:    sw a0, 76(sp) # 4-byte Folded Spill1472; RV32I-ILP32E-NEXT:    lw a0, 48(s0)1473; RV32I-ILP32E-NEXT:    sw a0, 72(sp) # 4-byte Folded Spill1474; RV32I-ILP32E-NEXT:    lw a0, 52(s0)1475; RV32I-ILP32E-NEXT:    sw a0, 68(sp) # 4-byte Folded Spill1476; RV32I-ILP32E-NEXT:    lw a0, 56(s0)1477; RV32I-ILP32E-NEXT:    sw a0, 64(sp) # 4-byte Folded Spill1478; RV32I-ILP32E-NEXT:    lw a0, 60(s0)1479; RV32I-ILP32E-NEXT:    sw a0, 60(sp) # 4-byte Folded Spill1480; RV32I-ILP32E-NEXT:    lw a0, 64(s0)1481; RV32I-ILP32E-NEXT:    sw a0, 56(sp) # 4-byte Folded Spill1482; RV32I-ILP32E-NEXT:    lw a0, 68(s0)1483; RV32I-ILP32E-NEXT:    sw a0, 52(sp) # 4-byte Folded Spill1484; RV32I-ILP32E-NEXT:    lw a0, 72(s0)1485; RV32I-ILP32E-NEXT:    sw a0, 48(sp) # 4-byte Folded Spill1486; RV32I-ILP32E-NEXT:    lw a0, 76(s0)1487; RV32I-ILP32E-NEXT:    sw a0, 44(sp) # 4-byte Folded Spill1488; RV32I-ILP32E-NEXT:    lw a0, 80(s0)1489; RV32I-ILP32E-NEXT:    sw a0, 40(sp) # 4-byte Folded Spill1490; RV32I-ILP32E-NEXT:    lw a0, 84(s0)1491; RV32I-ILP32E-NEXT:    sw a0, 36(sp) # 4-byte Folded Spill1492; RV32I-ILP32E-NEXT:    lw a0, 88(s0)1493; RV32I-ILP32E-NEXT:    sw a0, 32(sp) # 4-byte Folded Spill1494; RV32I-ILP32E-NEXT:    lw a0, 92(s0)1495; RV32I-ILP32E-NEXT:    sw a0, 28(sp) # 4-byte Folded Spill1496; RV32I-ILP32E-NEXT:    lw a0, 96(s0)1497; RV32I-ILP32E-NEXT:    sw a0, 24(sp) # 4-byte Folded Spill1498; RV32I-ILP32E-NEXT:    lw a0, 100(s0)1499; RV32I-ILP32E-NEXT:    sw a0, 20(sp) # 4-byte Folded Spill1500; RV32I-ILP32E-NEXT:    lw a0, 104(s0)1501; RV32I-ILP32E-NEXT:    sw a0, 16(sp) # 4-byte Folded Spill1502; RV32I-ILP32E-NEXT:    lw a0, 108(s0)1503; RV32I-ILP32E-NEXT:    sw a0, 12(sp) # 4-byte Folded Spill1504; RV32I-ILP32E-NEXT:    lw a0, 112(s0)1505; RV32I-ILP32E-NEXT:    sw a0, 8(sp) # 4-byte Folded Spill1506; RV32I-ILP32E-NEXT:    lw a0, 116(s0)1507; RV32I-ILP32E-NEXT:    sw a0, 4(sp) # 4-byte Folded Spill1508; RV32I-ILP32E-NEXT:    lw a0, 120(s0)1509; RV32I-ILP32E-NEXT:    sw a0, 0(sp) # 4-byte Folded Spill1510; RV32I-ILP32E-NEXT:    lw s1, 124(s0)1511; RV32I-ILP32E-NEXT:    call callee1512; RV32I-ILP32E-NEXT:    sw s1, 124(s0)1513; RV32I-ILP32E-NEXT:    lw a0, 0(sp) # 4-byte Folded Reload1514; RV32I-ILP32E-NEXT:    sw a0, 120(s0)1515; RV32I-ILP32E-NEXT:    lw a0, 4(sp) # 4-byte Folded Reload1516; RV32I-ILP32E-NEXT:    sw a0, 116(s0)1517; RV32I-ILP32E-NEXT:    lw a0, 8(sp) # 4-byte Folded Reload1518; RV32I-ILP32E-NEXT:    sw a0, 112(s0)1519; RV32I-ILP32E-NEXT:    lw a0, 12(sp) # 4-byte Folded Reload1520; RV32I-ILP32E-NEXT:    sw a0, 108(s0)1521; RV32I-ILP32E-NEXT:    lw a0, 16(sp) # 4-byte Folded Reload1522; RV32I-ILP32E-NEXT:    sw a0, 104(s0)1523; RV32I-ILP32E-NEXT:    lw a0, 20(sp) # 4-byte Folded Reload1524; RV32I-ILP32E-NEXT:    sw a0, 100(s0)1525; RV32I-ILP32E-NEXT:    lw a0, 24(sp) # 4-byte Folded Reload1526; RV32I-ILP32E-NEXT:    sw a0, 96(s0)1527; RV32I-ILP32E-NEXT:    lw a0, 28(sp) # 4-byte Folded Reload1528; RV32I-ILP32E-NEXT:    sw a0, 92(s0)1529; RV32I-ILP32E-NEXT:    lw a0, 32(sp) # 4-byte Folded Reload1530; RV32I-ILP32E-NEXT:    sw a0, 88(s0)1531; RV32I-ILP32E-NEXT:    lw a0, 36(sp) # 4-byte Folded Reload1532; RV32I-ILP32E-NEXT:    sw a0, 84(s0)1533; RV32I-ILP32E-NEXT:    lw a0, 40(sp) # 4-byte Folded Reload1534; RV32I-ILP32E-NEXT:    sw a0, 80(s0)1535; RV32I-ILP32E-NEXT:    lw a0, 44(sp) # 4-byte Folded Reload1536; RV32I-ILP32E-NEXT:    sw a0, 76(s0)1537; RV32I-ILP32E-NEXT:    lw a0, 48(sp) # 4-byte Folded Reload1538; RV32I-ILP32E-NEXT:    sw a0, 72(s0)1539; RV32I-ILP32E-NEXT:    lw a0, 52(sp) # 4-byte Folded Reload1540; RV32I-ILP32E-NEXT:    sw a0, 68(s0)1541; RV32I-ILP32E-NEXT:    lw a0, 56(sp) # 4-byte Folded Reload1542; RV32I-ILP32E-NEXT:    sw a0, 64(s0)1543; RV32I-ILP32E-NEXT:    lw a0, 60(sp) # 4-byte Folded Reload1544; RV32I-ILP32E-NEXT:    sw a0, 60(s0)1545; RV32I-ILP32E-NEXT:    lw a0, 64(sp) # 4-byte Folded Reload1546; RV32I-ILP32E-NEXT:    sw a0, 56(s0)1547; RV32I-ILP32E-NEXT:    lw a0, 68(sp) # 4-byte Folded Reload1548; RV32I-ILP32E-NEXT:    sw a0, 52(s0)1549; RV32I-ILP32E-NEXT:    lw a0, 72(sp) # 4-byte Folded Reload1550; RV32I-ILP32E-NEXT:    sw a0, 48(s0)1551; RV32I-ILP32E-NEXT:    lw a0, 76(sp) # 4-byte Folded Reload1552; RV32I-ILP32E-NEXT:    sw a0, 44(s0)1553; RV32I-ILP32E-NEXT:    lw a0, 80(sp) # 4-byte Folded Reload1554; RV32I-ILP32E-NEXT:    sw a0, 40(s0)1555; RV32I-ILP32E-NEXT:    lw a0, 84(sp) # 4-byte Folded Reload1556; RV32I-ILP32E-NEXT:    sw a0, 36(s0)1557; RV32I-ILP32E-NEXT:    lw a0, 88(sp) # 4-byte Folded Reload1558; RV32I-ILP32E-NEXT:    sw a0, 32(s0)1559; RV32I-ILP32E-NEXT:    lw a0, 92(sp) # 4-byte Folded Reload1560; RV32I-ILP32E-NEXT:    sw a0, 28(s0)1561; RV32I-ILP32E-NEXT:    lw a0, 96(sp) # 4-byte Folded Reload1562; RV32I-ILP32E-NEXT:    sw a0, 24(s0)1563; RV32I-ILP32E-NEXT:    lw a0, 100(sp) # 4-byte Folded Reload1564; RV32I-ILP32E-NEXT:    sw a0, 20(s0)1565; RV32I-ILP32E-NEXT:    lw a0, 104(sp) # 4-byte Folded Reload1566; RV32I-ILP32E-NEXT:    sw a0, 16(s0)1567; RV32I-ILP32E-NEXT:    lw a0, 108(sp) # 4-byte Folded Reload1568; RV32I-ILP32E-NEXT:    sw a0, 12(s0)1569; RV32I-ILP32E-NEXT:    lw a0, 112(sp) # 4-byte Folded Reload1570; RV32I-ILP32E-NEXT:    sw a0, 8(s0)1571; RV32I-ILP32E-NEXT:    lw a0, 116(sp) # 4-byte Folded Reload1572; RV32I-ILP32E-NEXT:    sw a0, 4(s0)1573; RV32I-ILP32E-NEXT:    lw a0, 120(sp) # 4-byte Folded Reload1574; RV32I-ILP32E-NEXT:    sw a0, 0(s0)1575; RV32I-ILP32E-NEXT:    lw ra, 132(sp) # 4-byte Folded Reload1576; RV32I-ILP32E-NEXT:    lw s0, 128(sp) # 4-byte Folded Reload1577; RV32I-ILP32E-NEXT:    lw s1, 124(sp) # 4-byte Folded Reload1578; RV32I-ILP32E-NEXT:    .cfi_restore ra1579; RV32I-ILP32E-NEXT:    .cfi_restore s01580; RV32I-ILP32E-NEXT:    .cfi_restore s11581; RV32I-ILP32E-NEXT:    addi sp, sp, 1361582; RV32I-ILP32E-NEXT:    .cfi_def_cfa_offset 01583; RV32I-ILP32E-NEXT:    ret1584;1585; RV32I-WITH-FP-LABEL: caller:1586; RV32I-WITH-FP:       # %bb.0:1587; RV32I-WITH-FP-NEXT:    addi sp, sp, -1441588; RV32I-WITH-FP-NEXT:    .cfi_def_cfa_offset 1441589; RV32I-WITH-FP-NEXT:    sw ra, 140(sp) # 4-byte Folded Spill1590; RV32I-WITH-FP-NEXT:    sw s0, 136(sp) # 4-byte Folded Spill1591; RV32I-WITH-FP-NEXT:    sw s1, 132(sp) # 4-byte Folded Spill1592; RV32I-WITH-FP-NEXT:    sw s2, 128(sp) # 4-byte Folded Spill1593; RV32I-WITH-FP-NEXT:    sw s3, 124(sp) # 4-byte Folded Spill1594; RV32I-WITH-FP-NEXT:    sw s4, 120(sp) # 4-byte Folded Spill1595; RV32I-WITH-FP-NEXT:    sw s5, 116(sp) # 4-byte Folded Spill1596; RV32I-WITH-FP-NEXT:    sw s6, 112(sp) # 4-byte Folded Spill1597; RV32I-WITH-FP-NEXT:    sw s7, 108(sp) # 4-byte Folded Spill1598; RV32I-WITH-FP-NEXT:    sw s8, 104(sp) # 4-byte Folded Spill1599; RV32I-WITH-FP-NEXT:    sw s9, 100(sp) # 4-byte Folded Spill1600; RV32I-WITH-FP-NEXT:    sw s10, 96(sp) # 4-byte Folded Spill1601; RV32I-WITH-FP-NEXT:    sw s11, 92(sp) # 4-byte Folded Spill1602; RV32I-WITH-FP-NEXT:    .cfi_offset ra, -41603; RV32I-WITH-FP-NEXT:    .cfi_offset s0, -81604; RV32I-WITH-FP-NEXT:    .cfi_offset s1, -121605; RV32I-WITH-FP-NEXT:    .cfi_offset s2, -161606; RV32I-WITH-FP-NEXT:    .cfi_offset s3, -201607; RV32I-WITH-FP-NEXT:    .cfi_offset s4, -241608; RV32I-WITH-FP-NEXT:    .cfi_offset s5, -281609; RV32I-WITH-FP-NEXT:    .cfi_offset s6, -321610; RV32I-WITH-FP-NEXT:    .cfi_offset s7, -361611; RV32I-WITH-FP-NEXT:    .cfi_offset s8, -401612; RV32I-WITH-FP-NEXT:    .cfi_offset s9, -441613; RV32I-WITH-FP-NEXT:    .cfi_offset s10, -481614; RV32I-WITH-FP-NEXT:    .cfi_offset s11, -521615; RV32I-WITH-FP-NEXT:    addi s0, sp, 1441616; RV32I-WITH-FP-NEXT:    .cfi_def_cfa s0, 01617; RV32I-WITH-FP-NEXT:    lui s1, %hi(var)1618; RV32I-WITH-FP-NEXT:    addi s1, s1, %lo(var)1619; RV32I-WITH-FP-NEXT:    lw a0, 0(s1)1620; RV32I-WITH-FP-NEXT:    sw a0, -56(s0) # 4-byte Folded Spill1621; RV32I-WITH-FP-NEXT:    lw a0, 4(s1)1622; RV32I-WITH-FP-NEXT:    sw a0, -60(s0) # 4-byte Folded Spill1623; RV32I-WITH-FP-NEXT:    lw a0, 8(s1)1624; RV32I-WITH-FP-NEXT:    sw a0, -64(s0) # 4-byte Folded Spill1625; RV32I-WITH-FP-NEXT:    lw a0, 12(s1)1626; RV32I-WITH-FP-NEXT:    sw a0, -68(s0) # 4-byte Folded Spill1627; RV32I-WITH-FP-NEXT:    lw a0, 16(s1)1628; RV32I-WITH-FP-NEXT:    sw a0, -72(s0) # 4-byte Folded Spill1629; RV32I-WITH-FP-NEXT:    lw a0, 20(s1)1630; RV32I-WITH-FP-NEXT:    sw a0, -76(s0) # 4-byte Folded Spill1631; RV32I-WITH-FP-NEXT:    lw a0, 24(s1)1632; RV32I-WITH-FP-NEXT:    sw a0, -80(s0) # 4-byte Folded Spill1633; RV32I-WITH-FP-NEXT:    lw a0, 28(s1)1634; RV32I-WITH-FP-NEXT:    sw a0, -84(s0) # 4-byte Folded Spill1635; RV32I-WITH-FP-NEXT:    lw a0, 32(s1)1636; RV32I-WITH-FP-NEXT:    sw a0, -88(s0) # 4-byte Folded Spill1637; RV32I-WITH-FP-NEXT:    lw a0, 36(s1)1638; RV32I-WITH-FP-NEXT:    sw a0, -92(s0) # 4-byte Folded Spill1639; RV32I-WITH-FP-NEXT:    lw a0, 40(s1)1640; RV32I-WITH-FP-NEXT:    sw a0, -96(s0) # 4-byte Folded Spill1641; RV32I-WITH-FP-NEXT:    lw a0, 44(s1)1642; RV32I-WITH-FP-NEXT:    sw a0, -100(s0) # 4-byte Folded Spill1643; RV32I-WITH-FP-NEXT:    lw a0, 48(s1)1644; RV32I-WITH-FP-NEXT:    sw a0, -104(s0) # 4-byte Folded Spill1645; RV32I-WITH-FP-NEXT:    lw a0, 52(s1)1646; RV32I-WITH-FP-NEXT:    sw a0, -108(s0) # 4-byte Folded Spill1647; RV32I-WITH-FP-NEXT:    lw a0, 56(s1)1648; RV32I-WITH-FP-NEXT:    sw a0, -112(s0) # 4-byte Folded Spill1649; RV32I-WITH-FP-NEXT:    lw a0, 60(s1)1650; RV32I-WITH-FP-NEXT:    sw a0, -116(s0) # 4-byte Folded Spill1651; RV32I-WITH-FP-NEXT:    lw a0, 64(s1)1652; RV32I-WITH-FP-NEXT:    sw a0, -120(s0) # 4-byte Folded Spill1653; RV32I-WITH-FP-NEXT:    lw a0, 68(s1)1654; RV32I-WITH-FP-NEXT:    sw a0, -124(s0) # 4-byte Folded Spill1655; RV32I-WITH-FP-NEXT:    lw a0, 72(s1)1656; RV32I-WITH-FP-NEXT:    sw a0, -128(s0) # 4-byte Folded Spill1657; RV32I-WITH-FP-NEXT:    lw a0, 76(s1)1658; RV32I-WITH-FP-NEXT:    sw a0, -132(s0) # 4-byte Folded Spill1659; RV32I-WITH-FP-NEXT:    lw a0, 80(s1)1660; RV32I-WITH-FP-NEXT:    sw a0, -136(s0) # 4-byte Folded Spill1661; RV32I-WITH-FP-NEXT:    lw a0, 84(s1)1662; RV32I-WITH-FP-NEXT:    sw a0, -140(s0) # 4-byte Folded Spill1663; RV32I-WITH-FP-NEXT:    lw s4, 88(s1)1664; RV32I-WITH-FP-NEXT:    lw s5, 92(s1)1665; RV32I-WITH-FP-NEXT:    lw s6, 96(s1)1666; RV32I-WITH-FP-NEXT:    lw s7, 100(s1)1667; RV32I-WITH-FP-NEXT:    lw s8, 104(s1)1668; RV32I-WITH-FP-NEXT:    lw s9, 108(s1)1669; RV32I-WITH-FP-NEXT:    lw s10, 112(s1)1670; RV32I-WITH-FP-NEXT:    lw s11, 116(s1)1671; RV32I-WITH-FP-NEXT:    lw s2, 120(s1)1672; RV32I-WITH-FP-NEXT:    lw s3, 124(s1)1673; RV32I-WITH-FP-NEXT:    call callee1674; RV32I-WITH-FP-NEXT:    sw s3, 124(s1)1675; RV32I-WITH-FP-NEXT:    sw s2, 120(s1)1676; RV32I-WITH-FP-NEXT:    sw s11, 116(s1)1677; RV32I-WITH-FP-NEXT:    sw s10, 112(s1)1678; RV32I-WITH-FP-NEXT:    sw s9, 108(s1)1679; RV32I-WITH-FP-NEXT:    sw s8, 104(s1)1680; RV32I-WITH-FP-NEXT:    sw s7, 100(s1)1681; RV32I-WITH-FP-NEXT:    sw s6, 96(s1)1682; RV32I-WITH-FP-NEXT:    sw s5, 92(s1)1683; RV32I-WITH-FP-NEXT:    sw s4, 88(s1)1684; RV32I-WITH-FP-NEXT:    lw a0, -140(s0) # 4-byte Folded Reload1685; RV32I-WITH-FP-NEXT:    sw a0, 84(s1)1686; RV32I-WITH-FP-NEXT:    lw a0, -136(s0) # 4-byte Folded Reload1687; RV32I-WITH-FP-NEXT:    sw a0, 80(s1)1688; RV32I-WITH-FP-NEXT:    lw a0, -132(s0) # 4-byte Folded Reload1689; RV32I-WITH-FP-NEXT:    sw a0, 76(s1)1690; RV32I-WITH-FP-NEXT:    lw a0, -128(s0) # 4-byte Folded Reload1691; RV32I-WITH-FP-NEXT:    sw a0, 72(s1)1692; RV32I-WITH-FP-NEXT:    lw a0, -124(s0) # 4-byte Folded Reload1693; RV32I-WITH-FP-NEXT:    sw a0, 68(s1)1694; RV32I-WITH-FP-NEXT:    lw a0, -120(s0) # 4-byte Folded Reload1695; RV32I-WITH-FP-NEXT:    sw a0, 64(s1)1696; RV32I-WITH-FP-NEXT:    lw a0, -116(s0) # 4-byte Folded Reload1697; RV32I-WITH-FP-NEXT:    sw a0, 60(s1)1698; RV32I-WITH-FP-NEXT:    lw a0, -112(s0) # 4-byte Folded Reload1699; RV32I-WITH-FP-NEXT:    sw a0, 56(s1)1700; RV32I-WITH-FP-NEXT:    lw a0, -108(s0) # 4-byte Folded Reload1701; RV32I-WITH-FP-NEXT:    sw a0, 52(s1)1702; RV32I-WITH-FP-NEXT:    lw a0, -104(s0) # 4-byte Folded Reload1703; RV32I-WITH-FP-NEXT:    sw a0, 48(s1)1704; RV32I-WITH-FP-NEXT:    lw a0, -100(s0) # 4-byte Folded Reload1705; RV32I-WITH-FP-NEXT:    sw a0, 44(s1)1706; RV32I-WITH-FP-NEXT:    lw a0, -96(s0) # 4-byte Folded Reload1707; RV32I-WITH-FP-NEXT:    sw a0, 40(s1)1708; RV32I-WITH-FP-NEXT:    lw a0, -92(s0) # 4-byte Folded Reload1709; RV32I-WITH-FP-NEXT:    sw a0, 36(s1)1710; RV32I-WITH-FP-NEXT:    lw a0, -88(s0) # 4-byte Folded Reload1711; RV32I-WITH-FP-NEXT:    sw a0, 32(s1)1712; RV32I-WITH-FP-NEXT:    lw a0, -84(s0) # 4-byte Folded Reload1713; RV32I-WITH-FP-NEXT:    sw a0, 28(s1)1714; RV32I-WITH-FP-NEXT:    lw a0, -80(s0) # 4-byte Folded Reload1715; RV32I-WITH-FP-NEXT:    sw a0, 24(s1)1716; RV32I-WITH-FP-NEXT:    lw a0, -76(s0) # 4-byte Folded Reload1717; RV32I-WITH-FP-NEXT:    sw a0, 20(s1)1718; RV32I-WITH-FP-NEXT:    lw a0, -72(s0) # 4-byte Folded Reload1719; RV32I-WITH-FP-NEXT:    sw a0, 16(s1)1720; RV32I-WITH-FP-NEXT:    lw a0, -68(s0) # 4-byte Folded Reload1721; RV32I-WITH-FP-NEXT:    sw a0, 12(s1)1722; RV32I-WITH-FP-NEXT:    lw a0, -64(s0) # 4-byte Folded Reload1723; RV32I-WITH-FP-NEXT:    sw a0, 8(s1)1724; RV32I-WITH-FP-NEXT:    lw a0, -60(s0) # 4-byte Folded Reload1725; RV32I-WITH-FP-NEXT:    sw a0, 4(s1)1726; RV32I-WITH-FP-NEXT:    lw a0, -56(s0) # 4-byte Folded Reload1727; RV32I-WITH-FP-NEXT:    sw a0, 0(s1)1728; RV32I-WITH-FP-NEXT:    .cfi_def_cfa sp, 1441729; RV32I-WITH-FP-NEXT:    lw ra, 140(sp) # 4-byte Folded Reload1730; RV32I-WITH-FP-NEXT:    lw s0, 136(sp) # 4-byte Folded Reload1731; RV32I-WITH-FP-NEXT:    lw s1, 132(sp) # 4-byte Folded Reload1732; RV32I-WITH-FP-NEXT:    lw s2, 128(sp) # 4-byte Folded Reload1733; RV32I-WITH-FP-NEXT:    lw s3, 124(sp) # 4-byte Folded Reload1734; RV32I-WITH-FP-NEXT:    lw s4, 120(sp) # 4-byte Folded Reload1735; RV32I-WITH-FP-NEXT:    lw s5, 116(sp) # 4-byte Folded Reload1736; RV32I-WITH-FP-NEXT:    lw s6, 112(sp) # 4-byte Folded Reload1737; RV32I-WITH-FP-NEXT:    lw s7, 108(sp) # 4-byte Folded Reload1738; RV32I-WITH-FP-NEXT:    lw s8, 104(sp) # 4-byte Folded Reload1739; RV32I-WITH-FP-NEXT:    lw s9, 100(sp) # 4-byte Folded Reload1740; RV32I-WITH-FP-NEXT:    lw s10, 96(sp) # 4-byte Folded Reload1741; RV32I-WITH-FP-NEXT:    lw s11, 92(sp) # 4-byte Folded Reload1742; RV32I-WITH-FP-NEXT:    .cfi_restore ra1743; RV32I-WITH-FP-NEXT:    .cfi_restore s01744; RV32I-WITH-FP-NEXT:    .cfi_restore s11745; RV32I-WITH-FP-NEXT:    .cfi_restore s21746; RV32I-WITH-FP-NEXT:    .cfi_restore s31747; RV32I-WITH-FP-NEXT:    .cfi_restore s41748; RV32I-WITH-FP-NEXT:    .cfi_restore s51749; RV32I-WITH-FP-NEXT:    .cfi_restore s61750; RV32I-WITH-FP-NEXT:    .cfi_restore s71751; RV32I-WITH-FP-NEXT:    .cfi_restore s81752; RV32I-WITH-FP-NEXT:    .cfi_restore s91753; RV32I-WITH-FP-NEXT:    .cfi_restore s101754; RV32I-WITH-FP-NEXT:    .cfi_restore s111755; RV32I-WITH-FP-NEXT:    addi sp, sp, 1441756; RV32I-WITH-FP-NEXT:    .cfi_def_cfa_offset 01757; RV32I-WITH-FP-NEXT:    ret1758;1759; RV32IZCMP-LABEL: caller:1760; RV32IZCMP:       # %bb.0:1761; RV32IZCMP-NEXT:    cm.push {ra, s0-s11}, -1121762; RV32IZCMP-NEXT:    .cfi_def_cfa_offset 1121763; RV32IZCMP-NEXT:    .cfi_offset ra, -521764; RV32IZCMP-NEXT:    .cfi_offset s0, -481765; RV32IZCMP-NEXT:    .cfi_offset s1, -441766; RV32IZCMP-NEXT:    .cfi_offset s2, -401767; RV32IZCMP-NEXT:    .cfi_offset s3, -361768; RV32IZCMP-NEXT:    .cfi_offset s4, -321769; RV32IZCMP-NEXT:    .cfi_offset s5, -281770; RV32IZCMP-NEXT:    .cfi_offset s6, -241771; RV32IZCMP-NEXT:    .cfi_offset s7, -201772; RV32IZCMP-NEXT:    .cfi_offset s8, -161773; RV32IZCMP-NEXT:    .cfi_offset s9, -121774; RV32IZCMP-NEXT:    .cfi_offset s10, -81775; RV32IZCMP-NEXT:    .cfi_offset s11, -41776; RV32IZCMP-NEXT:    addi sp, sp, -481777; RV32IZCMP-NEXT:    .cfi_def_cfa_offset 1601778; RV32IZCMP-NEXT:    lui s0, %hi(var)1779; RV32IZCMP-NEXT:    addi s0, s0, %lo(var)1780; RV32IZCMP-NEXT:    lw a0, 0(s0)1781; RV32IZCMP-NEXT:    sw a0, 92(sp) # 4-byte Folded Spill1782; RV32IZCMP-NEXT:    lw a0, 4(s0)1783; RV32IZCMP-NEXT:    sw a0, 88(sp) # 4-byte Folded Spill1784; RV32IZCMP-NEXT:    lw a0, 8(s0)1785; RV32IZCMP-NEXT:    sw a0, 84(sp) # 4-byte Folded Spill1786; RV32IZCMP-NEXT:    lw a0, 12(s0)1787; RV32IZCMP-NEXT:    sw a0, 80(sp) # 4-byte Folded Spill1788; RV32IZCMP-NEXT:    lw a0, 16(s0)1789; RV32IZCMP-NEXT:    sw a0, 76(sp) # 4-byte Folded Spill1790; RV32IZCMP-NEXT:    lw a0, 20(s0)1791; RV32IZCMP-NEXT:    sw a0, 72(sp) # 4-byte Folded Spill1792; RV32IZCMP-NEXT:    lw a0, 24(s0)1793; RV32IZCMP-NEXT:    sw a0, 68(sp) # 4-byte Folded Spill1794; RV32IZCMP-NEXT:    lw a0, 28(s0)1795; RV32IZCMP-NEXT:    sw a0, 64(sp) # 4-byte Folded Spill1796; RV32IZCMP-NEXT:    lw a0, 32(s0)1797; RV32IZCMP-NEXT:    sw a0, 60(sp) # 4-byte Folded Spill1798; RV32IZCMP-NEXT:    lw a0, 36(s0)1799; RV32IZCMP-NEXT:    sw a0, 56(sp) # 4-byte Folded Spill1800; RV32IZCMP-NEXT:    lw a0, 40(s0)1801; RV32IZCMP-NEXT:    sw a0, 52(sp) # 4-byte Folded Spill1802; RV32IZCMP-NEXT:    lw a0, 44(s0)1803; RV32IZCMP-NEXT:    sw a0, 48(sp) # 4-byte Folded Spill1804; RV32IZCMP-NEXT:    lw a0, 48(s0)1805; RV32IZCMP-NEXT:    sw a0, 44(sp) # 4-byte Folded Spill1806; RV32IZCMP-NEXT:    lw a0, 52(s0)1807; RV32IZCMP-NEXT:    sw a0, 40(sp) # 4-byte Folded Spill1808; RV32IZCMP-NEXT:    lw a0, 56(s0)1809; RV32IZCMP-NEXT:    sw a0, 36(sp) # 4-byte Folded Spill1810; RV32IZCMP-NEXT:    lw a0, 60(s0)1811; RV32IZCMP-NEXT:    sw a0, 32(sp) # 4-byte Folded Spill1812; RV32IZCMP-NEXT:    lw a0, 64(s0)1813; RV32IZCMP-NEXT:    sw a0, 28(sp) # 4-byte Folded Spill1814; RV32IZCMP-NEXT:    lw a0, 68(s0)1815; RV32IZCMP-NEXT:    sw a0, 24(sp) # 4-byte Folded Spill1816; RV32IZCMP-NEXT:    lw a0, 72(s0)1817; RV32IZCMP-NEXT:    sw a0, 20(sp) # 4-byte Folded Spill1818; RV32IZCMP-NEXT:    lw a0, 76(s0)1819; RV32IZCMP-NEXT:    sw a0, 16(sp) # 4-byte Folded Spill1820; RV32IZCMP-NEXT:    lw a0, 80(s0)1821; RV32IZCMP-NEXT:    sw a0, 12(sp) # 4-byte Folded Spill1822; RV32IZCMP-NEXT:    lw s1, 84(s0)1823; RV32IZCMP-NEXT:    lw s2, 88(s0)1824; RV32IZCMP-NEXT:    lw s3, 92(s0)1825; RV32IZCMP-NEXT:    lw s4, 96(s0)1826; RV32IZCMP-NEXT:    lw s5, 100(s0)1827; RV32IZCMP-NEXT:    lw s6, 104(s0)1828; RV32IZCMP-NEXT:    lw s7, 108(s0)1829; RV32IZCMP-NEXT:    lw s8, 112(s0)1830; RV32IZCMP-NEXT:    lw s9, 116(s0)1831; RV32IZCMP-NEXT:    lw s10, 120(s0)1832; RV32IZCMP-NEXT:    lw s11, 124(s0)1833; RV32IZCMP-NEXT:    call callee1834; RV32IZCMP-NEXT:    sw s11, 124(s0)1835; RV32IZCMP-NEXT:    sw s10, 120(s0)1836; RV32IZCMP-NEXT:    sw s9, 116(s0)1837; RV32IZCMP-NEXT:    sw s8, 112(s0)1838; RV32IZCMP-NEXT:    sw s7, 108(s0)1839; RV32IZCMP-NEXT:    sw s6, 104(s0)1840; RV32IZCMP-NEXT:    sw s5, 100(s0)1841; RV32IZCMP-NEXT:    sw s4, 96(s0)1842; RV32IZCMP-NEXT:    sw s3, 92(s0)1843; RV32IZCMP-NEXT:    sw s2, 88(s0)1844; RV32IZCMP-NEXT:    sw s1, 84(s0)1845; RV32IZCMP-NEXT:    lw a0, 12(sp) # 4-byte Folded Reload1846; RV32IZCMP-NEXT:    sw a0, 80(s0)1847; RV32IZCMP-NEXT:    lw a0, 16(sp) # 4-byte Folded Reload1848; RV32IZCMP-NEXT:    sw a0, 76(s0)1849; RV32IZCMP-NEXT:    lw a0, 20(sp) # 4-byte Folded Reload1850; RV32IZCMP-NEXT:    sw a0, 72(s0)1851; RV32IZCMP-NEXT:    lw a0, 24(sp) # 4-byte Folded Reload1852; RV32IZCMP-NEXT:    sw a0, 68(s0)1853; RV32IZCMP-NEXT:    lw a0, 28(sp) # 4-byte Folded Reload1854; RV32IZCMP-NEXT:    sw a0, 64(s0)1855; RV32IZCMP-NEXT:    lw a0, 32(sp) # 4-byte Folded Reload1856; RV32IZCMP-NEXT:    sw a0, 60(s0)1857; RV32IZCMP-NEXT:    lw a0, 36(sp) # 4-byte Folded Reload1858; RV32IZCMP-NEXT:    sw a0, 56(s0)1859; RV32IZCMP-NEXT:    lw a0, 40(sp) # 4-byte Folded Reload1860; RV32IZCMP-NEXT:    sw a0, 52(s0)1861; RV32IZCMP-NEXT:    lw a0, 44(sp) # 4-byte Folded Reload1862; RV32IZCMP-NEXT:    sw a0, 48(s0)1863; RV32IZCMP-NEXT:    lw a0, 48(sp) # 4-byte Folded Reload1864; RV32IZCMP-NEXT:    sw a0, 44(s0)1865; RV32IZCMP-NEXT:    lw a0, 52(sp) # 4-byte Folded Reload1866; RV32IZCMP-NEXT:    sw a0, 40(s0)1867; RV32IZCMP-NEXT:    lw a0, 56(sp) # 4-byte Folded Reload1868; RV32IZCMP-NEXT:    sw a0, 36(s0)1869; RV32IZCMP-NEXT:    lw a0, 60(sp) # 4-byte Folded Reload1870; RV32IZCMP-NEXT:    sw a0, 32(s0)1871; RV32IZCMP-NEXT:    lw a0, 64(sp) # 4-byte Folded Reload1872; RV32IZCMP-NEXT:    sw a0, 28(s0)1873; RV32IZCMP-NEXT:    lw a0, 68(sp) # 4-byte Folded Reload1874; RV32IZCMP-NEXT:    sw a0, 24(s0)1875; RV32IZCMP-NEXT:    lw a0, 72(sp) # 4-byte Folded Reload1876; RV32IZCMP-NEXT:    sw a0, 20(s0)1877; RV32IZCMP-NEXT:    lw a0, 76(sp) # 4-byte Folded Reload1878; RV32IZCMP-NEXT:    sw a0, 16(s0)1879; RV32IZCMP-NEXT:    lw a0, 80(sp) # 4-byte Folded Reload1880; RV32IZCMP-NEXT:    sw a0, 12(s0)1881; RV32IZCMP-NEXT:    lw a0, 84(sp) # 4-byte Folded Reload1882; RV32IZCMP-NEXT:    sw a0, 8(s0)1883; RV32IZCMP-NEXT:    lw a0, 88(sp) # 4-byte Folded Reload1884; RV32IZCMP-NEXT:    sw a0, 4(s0)1885; RV32IZCMP-NEXT:    lw a0, 92(sp) # 4-byte Folded Reload1886; RV32IZCMP-NEXT:    sw a0, 0(s0)1887; RV32IZCMP-NEXT:    addi sp, sp, 481888; RV32IZCMP-NEXT:    .cfi_def_cfa_offset 1121889; RV32IZCMP-NEXT:    cm.popret {ra, s0-s11}, 1121890;1891; RV32IZCMP-WITH-FP-LABEL: caller:1892; RV32IZCMP-WITH-FP:       # %bb.0:1893; RV32IZCMP-WITH-FP-NEXT:    addi sp, sp, -1441894; RV32IZCMP-WITH-FP-NEXT:    .cfi_def_cfa_offset 1441895; RV32IZCMP-WITH-FP-NEXT:    sw ra, 140(sp) # 4-byte Folded Spill1896; RV32IZCMP-WITH-FP-NEXT:    sw s0, 136(sp) # 4-byte Folded Spill1897; RV32IZCMP-WITH-FP-NEXT:    sw s1, 132(sp) # 4-byte Folded Spill1898; RV32IZCMP-WITH-FP-NEXT:    sw s2, 128(sp) # 4-byte Folded Spill1899; RV32IZCMP-WITH-FP-NEXT:    sw s3, 124(sp) # 4-byte Folded Spill1900; RV32IZCMP-WITH-FP-NEXT:    sw s4, 120(sp) # 4-byte Folded Spill1901; RV32IZCMP-WITH-FP-NEXT:    sw s5, 116(sp) # 4-byte Folded Spill1902; RV32IZCMP-WITH-FP-NEXT:    sw s6, 112(sp) # 4-byte Folded Spill1903; RV32IZCMP-WITH-FP-NEXT:    sw s7, 108(sp) # 4-byte Folded Spill1904; RV32IZCMP-WITH-FP-NEXT:    sw s8, 104(sp) # 4-byte Folded Spill1905; RV32IZCMP-WITH-FP-NEXT:    sw s9, 100(sp) # 4-byte Folded Spill1906; RV32IZCMP-WITH-FP-NEXT:    sw s10, 96(sp) # 4-byte Folded Spill1907; RV32IZCMP-WITH-FP-NEXT:    sw s11, 92(sp) # 4-byte Folded Spill1908; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset ra, -41909; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset s0, -81910; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset s1, -121911; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset s2, -161912; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset s3, -201913; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset s4, -241914; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset s5, -281915; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset s6, -321916; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset s7, -361917; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset s8, -401918; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset s9, -441919; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset s10, -481920; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset s11, -521921; RV32IZCMP-WITH-FP-NEXT:    addi s0, sp, 1441922; RV32IZCMP-WITH-FP-NEXT:    .cfi_def_cfa s0, 01923; RV32IZCMP-WITH-FP-NEXT:    lui s1, %hi(var)1924; RV32IZCMP-WITH-FP-NEXT:    addi s1, s1, %lo(var)1925; RV32IZCMP-WITH-FP-NEXT:    lw a0, 0(s1)1926; RV32IZCMP-WITH-FP-NEXT:    sw a0, -56(s0) # 4-byte Folded Spill1927; RV32IZCMP-WITH-FP-NEXT:    lw a0, 4(s1)1928; RV32IZCMP-WITH-FP-NEXT:    sw a0, -60(s0) # 4-byte Folded Spill1929; RV32IZCMP-WITH-FP-NEXT:    lw a0, 8(s1)1930; RV32IZCMP-WITH-FP-NEXT:    sw a0, -64(s0) # 4-byte Folded Spill1931; RV32IZCMP-WITH-FP-NEXT:    lw a0, 12(s1)1932; RV32IZCMP-WITH-FP-NEXT:    sw a0, -68(s0) # 4-byte Folded Spill1933; RV32IZCMP-WITH-FP-NEXT:    lw a0, 16(s1)1934; RV32IZCMP-WITH-FP-NEXT:    sw a0, -72(s0) # 4-byte Folded Spill1935; RV32IZCMP-WITH-FP-NEXT:    lw a0, 20(s1)1936; RV32IZCMP-WITH-FP-NEXT:    sw a0, -76(s0) # 4-byte Folded Spill1937; RV32IZCMP-WITH-FP-NEXT:    lw a0, 24(s1)1938; RV32IZCMP-WITH-FP-NEXT:    sw a0, -80(s0) # 4-byte Folded Spill1939; RV32IZCMP-WITH-FP-NEXT:    lw a0, 28(s1)1940; RV32IZCMP-WITH-FP-NEXT:    sw a0, -84(s0) # 4-byte Folded Spill1941; RV32IZCMP-WITH-FP-NEXT:    lw a0, 32(s1)1942; RV32IZCMP-WITH-FP-NEXT:    sw a0, -88(s0) # 4-byte Folded Spill1943; RV32IZCMP-WITH-FP-NEXT:    lw a0, 36(s1)1944; RV32IZCMP-WITH-FP-NEXT:    sw a0, -92(s0) # 4-byte Folded Spill1945; RV32IZCMP-WITH-FP-NEXT:    lw a0, 40(s1)1946; RV32IZCMP-WITH-FP-NEXT:    sw a0, -96(s0) # 4-byte Folded Spill1947; RV32IZCMP-WITH-FP-NEXT:    lw a0, 44(s1)1948; RV32IZCMP-WITH-FP-NEXT:    sw a0, -100(s0) # 4-byte Folded Spill1949; RV32IZCMP-WITH-FP-NEXT:    lw a0, 48(s1)1950; RV32IZCMP-WITH-FP-NEXT:    sw a0, -104(s0) # 4-byte Folded Spill1951; RV32IZCMP-WITH-FP-NEXT:    lw a0, 52(s1)1952; RV32IZCMP-WITH-FP-NEXT:    sw a0, -108(s0) # 4-byte Folded Spill1953; RV32IZCMP-WITH-FP-NEXT:    lw a0, 56(s1)1954; RV32IZCMP-WITH-FP-NEXT:    sw a0, -112(s0) # 4-byte Folded Spill1955; RV32IZCMP-WITH-FP-NEXT:    lw a0, 60(s1)1956; RV32IZCMP-WITH-FP-NEXT:    sw a0, -116(s0) # 4-byte Folded Spill1957; RV32IZCMP-WITH-FP-NEXT:    lw a0, 64(s1)1958; RV32IZCMP-WITH-FP-NEXT:    sw a0, -120(s0) # 4-byte Folded Spill1959; RV32IZCMP-WITH-FP-NEXT:    lw a0, 68(s1)1960; RV32IZCMP-WITH-FP-NEXT:    sw a0, -124(s0) # 4-byte Folded Spill1961; RV32IZCMP-WITH-FP-NEXT:    lw a0, 72(s1)1962; RV32IZCMP-WITH-FP-NEXT:    sw a0, -128(s0) # 4-byte Folded Spill1963; RV32IZCMP-WITH-FP-NEXT:    lw a0, 76(s1)1964; RV32IZCMP-WITH-FP-NEXT:    sw a0, -132(s0) # 4-byte Folded Spill1965; RV32IZCMP-WITH-FP-NEXT:    lw a0, 80(s1)1966; RV32IZCMP-WITH-FP-NEXT:    sw a0, -136(s0) # 4-byte Folded Spill1967; RV32IZCMP-WITH-FP-NEXT:    lw a0, 84(s1)1968; RV32IZCMP-WITH-FP-NEXT:    sw a0, -140(s0) # 4-byte Folded Spill1969; RV32IZCMP-WITH-FP-NEXT:    lw s4, 88(s1)1970; RV32IZCMP-WITH-FP-NEXT:    lw s5, 92(s1)1971; RV32IZCMP-WITH-FP-NEXT:    lw s6, 96(s1)1972; RV32IZCMP-WITH-FP-NEXT:    lw s7, 100(s1)1973; RV32IZCMP-WITH-FP-NEXT:    lw s8, 104(s1)1974; RV32IZCMP-WITH-FP-NEXT:    lw s9, 108(s1)1975; RV32IZCMP-WITH-FP-NEXT:    lw s10, 112(s1)1976; RV32IZCMP-WITH-FP-NEXT:    lw s11, 116(s1)1977; RV32IZCMP-WITH-FP-NEXT:    lw s2, 120(s1)1978; RV32IZCMP-WITH-FP-NEXT:    lw s3, 124(s1)1979; RV32IZCMP-WITH-FP-NEXT:    call callee1980; RV32IZCMP-WITH-FP-NEXT:    sw s3, 124(s1)1981; RV32IZCMP-WITH-FP-NEXT:    sw s2, 120(s1)1982; RV32IZCMP-WITH-FP-NEXT:    sw s11, 116(s1)1983; RV32IZCMP-WITH-FP-NEXT:    sw s10, 112(s1)1984; RV32IZCMP-WITH-FP-NEXT:    sw s9, 108(s1)1985; RV32IZCMP-WITH-FP-NEXT:    sw s8, 104(s1)1986; RV32IZCMP-WITH-FP-NEXT:    sw s7, 100(s1)1987; RV32IZCMP-WITH-FP-NEXT:    sw s6, 96(s1)1988; RV32IZCMP-WITH-FP-NEXT:    sw s5, 92(s1)1989; RV32IZCMP-WITH-FP-NEXT:    sw s4, 88(s1)1990; RV32IZCMP-WITH-FP-NEXT:    lw a0, -140(s0) # 4-byte Folded Reload1991; RV32IZCMP-WITH-FP-NEXT:    sw a0, 84(s1)1992; RV32IZCMP-WITH-FP-NEXT:    lw a0, -136(s0) # 4-byte Folded Reload1993; RV32IZCMP-WITH-FP-NEXT:    sw a0, 80(s1)1994; RV32IZCMP-WITH-FP-NEXT:    lw a0, -132(s0) # 4-byte Folded Reload1995; RV32IZCMP-WITH-FP-NEXT:    sw a0, 76(s1)1996; RV32IZCMP-WITH-FP-NEXT:    lw a0, -128(s0) # 4-byte Folded Reload1997; RV32IZCMP-WITH-FP-NEXT:    sw a0, 72(s1)1998; RV32IZCMP-WITH-FP-NEXT:    lw a0, -124(s0) # 4-byte Folded Reload1999; RV32IZCMP-WITH-FP-NEXT:    sw a0, 68(s1)2000; RV32IZCMP-WITH-FP-NEXT:    lw a0, -120(s0) # 4-byte Folded Reload2001; RV32IZCMP-WITH-FP-NEXT:    sw a0, 64(s1)2002; RV32IZCMP-WITH-FP-NEXT:    lw a0, -116(s0) # 4-byte Folded Reload2003; RV32IZCMP-WITH-FP-NEXT:    sw a0, 60(s1)2004; RV32IZCMP-WITH-FP-NEXT:    lw a0, -112(s0) # 4-byte Folded Reload2005; RV32IZCMP-WITH-FP-NEXT:    sw a0, 56(s1)2006; RV32IZCMP-WITH-FP-NEXT:    lw a0, -108(s0) # 4-byte Folded Reload2007; RV32IZCMP-WITH-FP-NEXT:    sw a0, 52(s1)2008; RV32IZCMP-WITH-FP-NEXT:    lw a0, -104(s0) # 4-byte Folded Reload2009; RV32IZCMP-WITH-FP-NEXT:    sw a0, 48(s1)2010; RV32IZCMP-WITH-FP-NEXT:    lw a0, -100(s0) # 4-byte Folded Reload2011; RV32IZCMP-WITH-FP-NEXT:    sw a0, 44(s1)2012; RV32IZCMP-WITH-FP-NEXT:    lw a0, -96(s0) # 4-byte Folded Reload2013; RV32IZCMP-WITH-FP-NEXT:    sw a0, 40(s1)2014; RV32IZCMP-WITH-FP-NEXT:    lw a0, -92(s0) # 4-byte Folded Reload2015; RV32IZCMP-WITH-FP-NEXT:    sw a0, 36(s1)2016; RV32IZCMP-WITH-FP-NEXT:    lw a0, -88(s0) # 4-byte Folded Reload2017; RV32IZCMP-WITH-FP-NEXT:    sw a0, 32(s1)2018; RV32IZCMP-WITH-FP-NEXT:    lw a0, -84(s0) # 4-byte Folded Reload2019; RV32IZCMP-WITH-FP-NEXT:    sw a0, 28(s1)2020; RV32IZCMP-WITH-FP-NEXT:    lw a0, -80(s0) # 4-byte Folded Reload2021; RV32IZCMP-WITH-FP-NEXT:    sw a0, 24(s1)2022; RV32IZCMP-WITH-FP-NEXT:    lw a0, -76(s0) # 4-byte Folded Reload2023; RV32IZCMP-WITH-FP-NEXT:    sw a0, 20(s1)2024; RV32IZCMP-WITH-FP-NEXT:    lw a0, -72(s0) # 4-byte Folded Reload2025; RV32IZCMP-WITH-FP-NEXT:    sw a0, 16(s1)2026; RV32IZCMP-WITH-FP-NEXT:    lw a0, -68(s0) # 4-byte Folded Reload2027; RV32IZCMP-WITH-FP-NEXT:    sw a0, 12(s1)2028; RV32IZCMP-WITH-FP-NEXT:    lw a0, -64(s0) # 4-byte Folded Reload2029; RV32IZCMP-WITH-FP-NEXT:    sw a0, 8(s1)2030; RV32IZCMP-WITH-FP-NEXT:    lw a0, -60(s0) # 4-byte Folded Reload2031; RV32IZCMP-WITH-FP-NEXT:    sw a0, 4(s1)2032; RV32IZCMP-WITH-FP-NEXT:    lw a0, -56(s0) # 4-byte Folded Reload2033; RV32IZCMP-WITH-FP-NEXT:    sw a0, 0(s1)2034; RV32IZCMP-WITH-FP-NEXT:    .cfi_def_cfa sp, 1442035; RV32IZCMP-WITH-FP-NEXT:    lw ra, 140(sp) # 4-byte Folded Reload2036; RV32IZCMP-WITH-FP-NEXT:    lw s0, 136(sp) # 4-byte Folded Reload2037; RV32IZCMP-WITH-FP-NEXT:    lw s1, 132(sp) # 4-byte Folded Reload2038; RV32IZCMP-WITH-FP-NEXT:    lw s2, 128(sp) # 4-byte Folded Reload2039; RV32IZCMP-WITH-FP-NEXT:    lw s3, 124(sp) # 4-byte Folded Reload2040; RV32IZCMP-WITH-FP-NEXT:    lw s4, 120(sp) # 4-byte Folded Reload2041; RV32IZCMP-WITH-FP-NEXT:    lw s5, 116(sp) # 4-byte Folded Reload2042; RV32IZCMP-WITH-FP-NEXT:    lw s6, 112(sp) # 4-byte Folded Reload2043; RV32IZCMP-WITH-FP-NEXT:    lw s7, 108(sp) # 4-byte Folded Reload2044; RV32IZCMP-WITH-FP-NEXT:    lw s8, 104(sp) # 4-byte Folded Reload2045; RV32IZCMP-WITH-FP-NEXT:    lw s9, 100(sp) # 4-byte Folded Reload2046; RV32IZCMP-WITH-FP-NEXT:    lw s10, 96(sp) # 4-byte Folded Reload2047; RV32IZCMP-WITH-FP-NEXT:    lw s11, 92(sp) # 4-byte Folded Reload2048; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore ra2049; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore s02050; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore s12051; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore s22052; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore s32053; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore s42054; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore s52055; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore s62056; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore s72057; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore s82058; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore s92059; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore s102060; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore s112061; RV32IZCMP-WITH-FP-NEXT:    addi sp, sp, 1442062; RV32IZCMP-WITH-FP-NEXT:    .cfi_def_cfa_offset 02063; RV32IZCMP-WITH-FP-NEXT:    ret2064;2065; RV64I-LABEL: caller:2066; RV64I:       # %bb.0:2067; RV64I-NEXT:    addi sp, sp, -2722068; RV64I-NEXT:    .cfi_def_cfa_offset 2722069; RV64I-NEXT:    sd ra, 264(sp) # 8-byte Folded Spill2070; RV64I-NEXT:    sd s0, 256(sp) # 8-byte Folded Spill2071; RV64I-NEXT:    sd s1, 248(sp) # 8-byte Folded Spill2072; RV64I-NEXT:    sd s2, 240(sp) # 8-byte Folded Spill2073; RV64I-NEXT:    sd s3, 232(sp) # 8-byte Folded Spill2074; RV64I-NEXT:    sd s4, 224(sp) # 8-byte Folded Spill2075; RV64I-NEXT:    sd s5, 216(sp) # 8-byte Folded Spill2076; RV64I-NEXT:    sd s6, 208(sp) # 8-byte Folded Spill2077; RV64I-NEXT:    sd s7, 200(sp) # 8-byte Folded Spill2078; RV64I-NEXT:    sd s8, 192(sp) # 8-byte Folded Spill2079; RV64I-NEXT:    sd s9, 184(sp) # 8-byte Folded Spill2080; RV64I-NEXT:    sd s10, 176(sp) # 8-byte Folded Spill2081; RV64I-NEXT:    sd s11, 168(sp) # 8-byte Folded Spill2082; RV64I-NEXT:    .cfi_offset ra, -82083; RV64I-NEXT:    .cfi_offset s0, -162084; RV64I-NEXT:    .cfi_offset s1, -242085; RV64I-NEXT:    .cfi_offset s2, -322086; RV64I-NEXT:    .cfi_offset s3, -402087; RV64I-NEXT:    .cfi_offset s4, -482088; RV64I-NEXT:    .cfi_offset s5, -562089; RV64I-NEXT:    .cfi_offset s6, -642090; RV64I-NEXT:    .cfi_offset s7, -722091; RV64I-NEXT:    .cfi_offset s8, -802092; RV64I-NEXT:    .cfi_offset s9, -882093; RV64I-NEXT:    .cfi_offset s10, -962094; RV64I-NEXT:    .cfi_offset s11, -1042095; RV64I-NEXT:    lui s0, %hi(var)2096; RV64I-NEXT:    addi s0, s0, %lo(var)2097; RV64I-NEXT:    lw a0, 0(s0)2098; RV64I-NEXT:    sd a0, 160(sp) # 8-byte Folded Spill2099; RV64I-NEXT:    lw a0, 4(s0)2100; RV64I-NEXT:    sd a0, 152(sp) # 8-byte Folded Spill2101; RV64I-NEXT:    lw a0, 8(s0)2102; RV64I-NEXT:    sd a0, 144(sp) # 8-byte Folded Spill2103; RV64I-NEXT:    lw a0, 12(s0)2104; RV64I-NEXT:    sd a0, 136(sp) # 8-byte Folded Spill2105; RV64I-NEXT:    lw a0, 16(s0)2106; RV64I-NEXT:    sd a0, 128(sp) # 8-byte Folded Spill2107; RV64I-NEXT:    lw a0, 20(s0)2108; RV64I-NEXT:    sd a0, 120(sp) # 8-byte Folded Spill2109; RV64I-NEXT:    lw a0, 24(s0)2110; RV64I-NEXT:    sd a0, 112(sp) # 8-byte Folded Spill2111; RV64I-NEXT:    lw a0, 28(s0)2112; RV64I-NEXT:    sd a0, 104(sp) # 8-byte Folded Spill2113; RV64I-NEXT:    lw a0, 32(s0)2114; RV64I-NEXT:    sd a0, 96(sp) # 8-byte Folded Spill2115; RV64I-NEXT:    lw a0, 36(s0)2116; RV64I-NEXT:    sd a0, 88(sp) # 8-byte Folded Spill2117; RV64I-NEXT:    lw a0, 40(s0)2118; RV64I-NEXT:    sd a0, 80(sp) # 8-byte Folded Spill2119; RV64I-NEXT:    lw a0, 44(s0)2120; RV64I-NEXT:    sd a0, 72(sp) # 8-byte Folded Spill2121; RV64I-NEXT:    lw a0, 48(s0)2122; RV64I-NEXT:    sd a0, 64(sp) # 8-byte Folded Spill2123; RV64I-NEXT:    lw a0, 52(s0)2124; RV64I-NEXT:    sd a0, 56(sp) # 8-byte Folded Spill2125; RV64I-NEXT:    lw a0, 56(s0)2126; RV64I-NEXT:    sd a0, 48(sp) # 8-byte Folded Spill2127; RV64I-NEXT:    lw a0, 60(s0)2128; RV64I-NEXT:    sd a0, 40(sp) # 8-byte Folded Spill2129; RV64I-NEXT:    lw a0, 64(s0)2130; RV64I-NEXT:    sd a0, 32(sp) # 8-byte Folded Spill2131; RV64I-NEXT:    lw a0, 68(s0)2132; RV64I-NEXT:    sd a0, 24(sp) # 8-byte Folded Spill2133; RV64I-NEXT:    lw a0, 72(s0)2134; RV64I-NEXT:    sd a0, 16(sp) # 8-byte Folded Spill2135; RV64I-NEXT:    lw a0, 76(s0)2136; RV64I-NEXT:    sd a0, 8(sp) # 8-byte Folded Spill2137; RV64I-NEXT:    lw a0, 80(s0)2138; RV64I-NEXT:    sd a0, 0(sp) # 8-byte Folded Spill2139; RV64I-NEXT:    lw s11, 84(s0)2140; RV64I-NEXT:    lw s1, 88(s0)2141; RV64I-NEXT:    lw s2, 92(s0)2142; RV64I-NEXT:    lw s3, 96(s0)2143; RV64I-NEXT:    lw s4, 100(s0)2144; RV64I-NEXT:    lw s5, 104(s0)2145; RV64I-NEXT:    lw s6, 108(s0)2146; RV64I-NEXT:    lw s7, 112(s0)2147; RV64I-NEXT:    lw s8, 116(s0)2148; RV64I-NEXT:    lw s9, 120(s0)2149; RV64I-NEXT:    lw s10, 124(s0)2150; RV64I-NEXT:    call callee2151; RV64I-NEXT:    sw s10, 124(s0)2152; RV64I-NEXT:    sw s9, 120(s0)2153; RV64I-NEXT:    sw s8, 116(s0)2154; RV64I-NEXT:    sw s7, 112(s0)2155; RV64I-NEXT:    sw s6, 108(s0)2156; RV64I-NEXT:    sw s5, 104(s0)2157; RV64I-NEXT:    sw s4, 100(s0)2158; RV64I-NEXT:    sw s3, 96(s0)2159; RV64I-NEXT:    sw s2, 92(s0)2160; RV64I-NEXT:    sw s1, 88(s0)2161; RV64I-NEXT:    sw s11, 84(s0)2162; RV64I-NEXT:    ld a0, 0(sp) # 8-byte Folded Reload2163; RV64I-NEXT:    sw a0, 80(s0)2164; RV64I-NEXT:    ld a0, 8(sp) # 8-byte Folded Reload2165; RV64I-NEXT:    sw a0, 76(s0)2166; RV64I-NEXT:    ld a0, 16(sp) # 8-byte Folded Reload2167; RV64I-NEXT:    sw a0, 72(s0)2168; RV64I-NEXT:    ld a0, 24(sp) # 8-byte Folded Reload2169; RV64I-NEXT:    sw a0, 68(s0)2170; RV64I-NEXT:    ld a0, 32(sp) # 8-byte Folded Reload2171; RV64I-NEXT:    sw a0, 64(s0)2172; RV64I-NEXT:    ld a0, 40(sp) # 8-byte Folded Reload2173; RV64I-NEXT:    sw a0, 60(s0)2174; RV64I-NEXT:    ld a0, 48(sp) # 8-byte Folded Reload2175; RV64I-NEXT:    sw a0, 56(s0)2176; RV64I-NEXT:    ld a0, 56(sp) # 8-byte Folded Reload2177; RV64I-NEXT:    sw a0, 52(s0)2178; RV64I-NEXT:    ld a0, 64(sp) # 8-byte Folded Reload2179; RV64I-NEXT:    sw a0, 48(s0)2180; RV64I-NEXT:    ld a0, 72(sp) # 8-byte Folded Reload2181; RV64I-NEXT:    sw a0, 44(s0)2182; RV64I-NEXT:    ld a0, 80(sp) # 8-byte Folded Reload2183; RV64I-NEXT:    sw a0, 40(s0)2184; RV64I-NEXT:    ld a0, 88(sp) # 8-byte Folded Reload2185; RV64I-NEXT:    sw a0, 36(s0)2186; RV64I-NEXT:    ld a0, 96(sp) # 8-byte Folded Reload2187; RV64I-NEXT:    sw a0, 32(s0)2188; RV64I-NEXT:    ld a0, 104(sp) # 8-byte Folded Reload2189; RV64I-NEXT:    sw a0, 28(s0)2190; RV64I-NEXT:    ld a0, 112(sp) # 8-byte Folded Reload2191; RV64I-NEXT:    sw a0, 24(s0)2192; RV64I-NEXT:    ld a0, 120(sp) # 8-byte Folded Reload2193; RV64I-NEXT:    sw a0, 20(s0)2194; RV64I-NEXT:    ld a0, 128(sp) # 8-byte Folded Reload2195; RV64I-NEXT:    sw a0, 16(s0)2196; RV64I-NEXT:    ld a0, 136(sp) # 8-byte Folded Reload2197; RV64I-NEXT:    sw a0, 12(s0)2198; RV64I-NEXT:    ld a0, 144(sp) # 8-byte Folded Reload2199; RV64I-NEXT:    sw a0, 8(s0)2200; RV64I-NEXT:    ld a0, 152(sp) # 8-byte Folded Reload2201; RV64I-NEXT:    sw a0, 4(s0)2202; RV64I-NEXT:    ld a0, 160(sp) # 8-byte Folded Reload2203; RV64I-NEXT:    sw a0, 0(s0)2204; RV64I-NEXT:    ld ra, 264(sp) # 8-byte Folded Reload2205; RV64I-NEXT:    ld s0, 256(sp) # 8-byte Folded Reload2206; RV64I-NEXT:    ld s1, 248(sp) # 8-byte Folded Reload2207; RV64I-NEXT:    ld s2, 240(sp) # 8-byte Folded Reload2208; RV64I-NEXT:    ld s3, 232(sp) # 8-byte Folded Reload2209; RV64I-NEXT:    ld s4, 224(sp) # 8-byte Folded Reload2210; RV64I-NEXT:    ld s5, 216(sp) # 8-byte Folded Reload2211; RV64I-NEXT:    ld s6, 208(sp) # 8-byte Folded Reload2212; RV64I-NEXT:    ld s7, 200(sp) # 8-byte Folded Reload2213; RV64I-NEXT:    ld s8, 192(sp) # 8-byte Folded Reload2214; RV64I-NEXT:    ld s9, 184(sp) # 8-byte Folded Reload2215; RV64I-NEXT:    ld s10, 176(sp) # 8-byte Folded Reload2216; RV64I-NEXT:    ld s11, 168(sp) # 8-byte Folded Reload2217; RV64I-NEXT:    .cfi_restore ra2218; RV64I-NEXT:    .cfi_restore s02219; RV64I-NEXT:    .cfi_restore s12220; RV64I-NEXT:    .cfi_restore s22221; RV64I-NEXT:    .cfi_restore s32222; RV64I-NEXT:    .cfi_restore s42223; RV64I-NEXT:    .cfi_restore s52224; RV64I-NEXT:    .cfi_restore s62225; RV64I-NEXT:    .cfi_restore s72226; RV64I-NEXT:    .cfi_restore s82227; RV64I-NEXT:    .cfi_restore s92228; RV64I-NEXT:    .cfi_restore s102229; RV64I-NEXT:    .cfi_restore s112230; RV64I-NEXT:    addi sp, sp, 2722231; RV64I-NEXT:    .cfi_def_cfa_offset 02232; RV64I-NEXT:    ret2233;2234; RV64I-LP64E-LABEL: caller:2235; RV64I-LP64E:       # %bb.0:2236; RV64I-LP64E-NEXT:    addi sp, sp, -2722237; RV64I-LP64E-NEXT:    .cfi_def_cfa_offset 2722238; RV64I-LP64E-NEXT:    sd ra, 264(sp) # 8-byte Folded Spill2239; RV64I-LP64E-NEXT:    sd s0, 256(sp) # 8-byte Folded Spill2240; RV64I-LP64E-NEXT:    sd s1, 248(sp) # 8-byte Folded Spill2241; RV64I-LP64E-NEXT:    .cfi_offset ra, -82242; RV64I-LP64E-NEXT:    .cfi_offset s0, -162243; RV64I-LP64E-NEXT:    .cfi_offset s1, -242244; RV64I-LP64E-NEXT:    lui s0, %hi(var)2245; RV64I-LP64E-NEXT:    addi s0, s0, %lo(var)2246; RV64I-LP64E-NEXT:    lw a0, 0(s0)2247; RV64I-LP64E-NEXT:    sd a0, 240(sp) # 8-byte Folded Spill2248; RV64I-LP64E-NEXT:    lw a0, 4(s0)2249; RV64I-LP64E-NEXT:    sd a0, 232(sp) # 8-byte Folded Spill2250; RV64I-LP64E-NEXT:    lw a0, 8(s0)2251; RV64I-LP64E-NEXT:    sd a0, 224(sp) # 8-byte Folded Spill2252; RV64I-LP64E-NEXT:    lw a0, 12(s0)2253; RV64I-LP64E-NEXT:    sd a0, 216(sp) # 8-byte Folded Spill2254; RV64I-LP64E-NEXT:    lw a0, 16(s0)2255; RV64I-LP64E-NEXT:    sd a0, 208(sp) # 8-byte Folded Spill2256; RV64I-LP64E-NEXT:    lw a0, 20(s0)2257; RV64I-LP64E-NEXT:    sd a0, 200(sp) # 8-byte Folded Spill2258; RV64I-LP64E-NEXT:    lw a0, 24(s0)2259; RV64I-LP64E-NEXT:    sd a0, 192(sp) # 8-byte Folded Spill2260; RV64I-LP64E-NEXT:    lw a0, 28(s0)2261; RV64I-LP64E-NEXT:    sd a0, 184(sp) # 8-byte Folded Spill2262; RV64I-LP64E-NEXT:    lw a0, 32(s0)2263; RV64I-LP64E-NEXT:    sd a0, 176(sp) # 8-byte Folded Spill2264; RV64I-LP64E-NEXT:    lw a0, 36(s0)2265; RV64I-LP64E-NEXT:    sd a0, 168(sp) # 8-byte Folded Spill2266; RV64I-LP64E-NEXT:    lw a0, 40(s0)2267; RV64I-LP64E-NEXT:    sd a0, 160(sp) # 8-byte Folded Spill2268; RV64I-LP64E-NEXT:    lw a0, 44(s0)2269; RV64I-LP64E-NEXT:    sd a0, 152(sp) # 8-byte Folded Spill2270; RV64I-LP64E-NEXT:    lw a0, 48(s0)2271; RV64I-LP64E-NEXT:    sd a0, 144(sp) # 8-byte Folded Spill2272; RV64I-LP64E-NEXT:    lw a0, 52(s0)2273; RV64I-LP64E-NEXT:    sd a0, 136(sp) # 8-byte Folded Spill2274; RV64I-LP64E-NEXT:    lw a0, 56(s0)2275; RV64I-LP64E-NEXT:    sd a0, 128(sp) # 8-byte Folded Spill2276; RV64I-LP64E-NEXT:    lw a0, 60(s0)2277; RV64I-LP64E-NEXT:    sd a0, 120(sp) # 8-byte Folded Spill2278; RV64I-LP64E-NEXT:    lw a0, 64(s0)2279; RV64I-LP64E-NEXT:    sd a0, 112(sp) # 8-byte Folded Spill2280; RV64I-LP64E-NEXT:    lw a0, 68(s0)2281; RV64I-LP64E-NEXT:    sd a0, 104(sp) # 8-byte Folded Spill2282; RV64I-LP64E-NEXT:    lw a0, 72(s0)2283; RV64I-LP64E-NEXT:    sd a0, 96(sp) # 8-byte Folded Spill2284; RV64I-LP64E-NEXT:    lw a0, 76(s0)2285; RV64I-LP64E-NEXT:    sd a0, 88(sp) # 8-byte Folded Spill2286; RV64I-LP64E-NEXT:    lw a0, 80(s0)2287; RV64I-LP64E-NEXT:    sd a0, 80(sp) # 8-byte Folded Spill2288; RV64I-LP64E-NEXT:    lw a0, 84(s0)2289; RV64I-LP64E-NEXT:    sd a0, 72(sp) # 8-byte Folded Spill2290; RV64I-LP64E-NEXT:    lw a0, 88(s0)2291; RV64I-LP64E-NEXT:    sd a0, 64(sp) # 8-byte Folded Spill2292; RV64I-LP64E-NEXT:    lw a0, 92(s0)2293; RV64I-LP64E-NEXT:    sd a0, 56(sp) # 8-byte Folded Spill2294; RV64I-LP64E-NEXT:    lw a0, 96(s0)2295; RV64I-LP64E-NEXT:    sd a0, 48(sp) # 8-byte Folded Spill2296; RV64I-LP64E-NEXT:    lw a0, 100(s0)2297; RV64I-LP64E-NEXT:    sd a0, 40(sp) # 8-byte Folded Spill2298; RV64I-LP64E-NEXT:    lw a0, 104(s0)2299; RV64I-LP64E-NEXT:    sd a0, 32(sp) # 8-byte Folded Spill2300; RV64I-LP64E-NEXT:    lw a0, 108(s0)2301; RV64I-LP64E-NEXT:    sd a0, 24(sp) # 8-byte Folded Spill2302; RV64I-LP64E-NEXT:    lw a0, 112(s0)2303; RV64I-LP64E-NEXT:    sd a0, 16(sp) # 8-byte Folded Spill2304; RV64I-LP64E-NEXT:    lw a0, 116(s0)2305; RV64I-LP64E-NEXT:    sd a0, 8(sp) # 8-byte Folded Spill2306; RV64I-LP64E-NEXT:    lw a0, 120(s0)2307; RV64I-LP64E-NEXT:    sd a0, 0(sp) # 8-byte Folded Spill2308; RV64I-LP64E-NEXT:    lw s1, 124(s0)2309; RV64I-LP64E-NEXT:    call callee2310; RV64I-LP64E-NEXT:    sw s1, 124(s0)2311; RV64I-LP64E-NEXT:    ld a0, 0(sp) # 8-byte Folded Reload2312; RV64I-LP64E-NEXT:    sw a0, 120(s0)2313; RV64I-LP64E-NEXT:    ld a0, 8(sp) # 8-byte Folded Reload2314; RV64I-LP64E-NEXT:    sw a0, 116(s0)2315; RV64I-LP64E-NEXT:    ld a0, 16(sp) # 8-byte Folded Reload2316; RV64I-LP64E-NEXT:    sw a0, 112(s0)2317; RV64I-LP64E-NEXT:    ld a0, 24(sp) # 8-byte Folded Reload2318; RV64I-LP64E-NEXT:    sw a0, 108(s0)2319; RV64I-LP64E-NEXT:    ld a0, 32(sp) # 8-byte Folded Reload2320; RV64I-LP64E-NEXT:    sw a0, 104(s0)2321; RV64I-LP64E-NEXT:    ld a0, 40(sp) # 8-byte Folded Reload2322; RV64I-LP64E-NEXT:    sw a0, 100(s0)2323; RV64I-LP64E-NEXT:    ld a0, 48(sp) # 8-byte Folded Reload2324; RV64I-LP64E-NEXT:    sw a0, 96(s0)2325; RV64I-LP64E-NEXT:    ld a0, 56(sp) # 8-byte Folded Reload2326; RV64I-LP64E-NEXT:    sw a0, 92(s0)2327; RV64I-LP64E-NEXT:    ld a0, 64(sp) # 8-byte Folded Reload2328; RV64I-LP64E-NEXT:    sw a0, 88(s0)2329; RV64I-LP64E-NEXT:    ld a0, 72(sp) # 8-byte Folded Reload2330; RV64I-LP64E-NEXT:    sw a0, 84(s0)2331; RV64I-LP64E-NEXT:    ld a0, 80(sp) # 8-byte Folded Reload2332; RV64I-LP64E-NEXT:    sw a0, 80(s0)2333; RV64I-LP64E-NEXT:    ld a0, 88(sp) # 8-byte Folded Reload2334; RV64I-LP64E-NEXT:    sw a0, 76(s0)2335; RV64I-LP64E-NEXT:    ld a0, 96(sp) # 8-byte Folded Reload2336; RV64I-LP64E-NEXT:    sw a0, 72(s0)2337; RV64I-LP64E-NEXT:    ld a0, 104(sp) # 8-byte Folded Reload2338; RV64I-LP64E-NEXT:    sw a0, 68(s0)2339; RV64I-LP64E-NEXT:    ld a0, 112(sp) # 8-byte Folded Reload2340; RV64I-LP64E-NEXT:    sw a0, 64(s0)2341; RV64I-LP64E-NEXT:    ld a0, 120(sp) # 8-byte Folded Reload2342; RV64I-LP64E-NEXT:    sw a0, 60(s0)2343; RV64I-LP64E-NEXT:    ld a0, 128(sp) # 8-byte Folded Reload2344; RV64I-LP64E-NEXT:    sw a0, 56(s0)2345; RV64I-LP64E-NEXT:    ld a0, 136(sp) # 8-byte Folded Reload2346; RV64I-LP64E-NEXT:    sw a0, 52(s0)2347; RV64I-LP64E-NEXT:    ld a0, 144(sp) # 8-byte Folded Reload2348; RV64I-LP64E-NEXT:    sw a0, 48(s0)2349; RV64I-LP64E-NEXT:    ld a0, 152(sp) # 8-byte Folded Reload2350; RV64I-LP64E-NEXT:    sw a0, 44(s0)2351; RV64I-LP64E-NEXT:    ld a0, 160(sp) # 8-byte Folded Reload2352; RV64I-LP64E-NEXT:    sw a0, 40(s0)2353; RV64I-LP64E-NEXT:    ld a0, 168(sp) # 8-byte Folded Reload2354; RV64I-LP64E-NEXT:    sw a0, 36(s0)2355; RV64I-LP64E-NEXT:    ld a0, 176(sp) # 8-byte Folded Reload2356; RV64I-LP64E-NEXT:    sw a0, 32(s0)2357; RV64I-LP64E-NEXT:    ld a0, 184(sp) # 8-byte Folded Reload2358; RV64I-LP64E-NEXT:    sw a0, 28(s0)2359; RV64I-LP64E-NEXT:    ld a0, 192(sp) # 8-byte Folded Reload2360; RV64I-LP64E-NEXT:    sw a0, 24(s0)2361; RV64I-LP64E-NEXT:    ld a0, 200(sp) # 8-byte Folded Reload2362; RV64I-LP64E-NEXT:    sw a0, 20(s0)2363; RV64I-LP64E-NEXT:    ld a0, 208(sp) # 8-byte Folded Reload2364; RV64I-LP64E-NEXT:    sw a0, 16(s0)2365; RV64I-LP64E-NEXT:    ld a0, 216(sp) # 8-byte Folded Reload2366; RV64I-LP64E-NEXT:    sw a0, 12(s0)2367; RV64I-LP64E-NEXT:    ld a0, 224(sp) # 8-byte Folded Reload2368; RV64I-LP64E-NEXT:    sw a0, 8(s0)2369; RV64I-LP64E-NEXT:    ld a0, 232(sp) # 8-byte Folded Reload2370; RV64I-LP64E-NEXT:    sw a0, 4(s0)2371; RV64I-LP64E-NEXT:    ld a0, 240(sp) # 8-byte Folded Reload2372; RV64I-LP64E-NEXT:    sw a0, 0(s0)2373; RV64I-LP64E-NEXT:    ld ra, 264(sp) # 8-byte Folded Reload2374; RV64I-LP64E-NEXT:    ld s0, 256(sp) # 8-byte Folded Reload2375; RV64I-LP64E-NEXT:    ld s1, 248(sp) # 8-byte Folded Reload2376; RV64I-LP64E-NEXT:    .cfi_restore ra2377; RV64I-LP64E-NEXT:    .cfi_restore s02378; RV64I-LP64E-NEXT:    .cfi_restore s12379; RV64I-LP64E-NEXT:    addi sp, sp, 2722380; RV64I-LP64E-NEXT:    .cfi_def_cfa_offset 02381; RV64I-LP64E-NEXT:    ret2382;2383; RV64I-WITH-FP-LABEL: caller:2384; RV64I-WITH-FP:       # %bb.0:2385; RV64I-WITH-FP-NEXT:    addi sp, sp, -2882386; RV64I-WITH-FP-NEXT:    .cfi_def_cfa_offset 2882387; RV64I-WITH-FP-NEXT:    sd ra, 280(sp) # 8-byte Folded Spill2388; RV64I-WITH-FP-NEXT:    sd s0, 272(sp) # 8-byte Folded Spill2389; RV64I-WITH-FP-NEXT:    sd s1, 264(sp) # 8-byte Folded Spill2390; RV64I-WITH-FP-NEXT:    sd s2, 256(sp) # 8-byte Folded Spill2391; RV64I-WITH-FP-NEXT:    sd s3, 248(sp) # 8-byte Folded Spill2392; RV64I-WITH-FP-NEXT:    sd s4, 240(sp) # 8-byte Folded Spill2393; RV64I-WITH-FP-NEXT:    sd s5, 232(sp) # 8-byte Folded Spill2394; RV64I-WITH-FP-NEXT:    sd s6, 224(sp) # 8-byte Folded Spill2395; RV64I-WITH-FP-NEXT:    sd s7, 216(sp) # 8-byte Folded Spill2396; RV64I-WITH-FP-NEXT:    sd s8, 208(sp) # 8-byte Folded Spill2397; RV64I-WITH-FP-NEXT:    sd s9, 200(sp) # 8-byte Folded Spill2398; RV64I-WITH-FP-NEXT:    sd s10, 192(sp) # 8-byte Folded Spill2399; RV64I-WITH-FP-NEXT:    sd s11, 184(sp) # 8-byte Folded Spill2400; RV64I-WITH-FP-NEXT:    .cfi_offset ra, -82401; RV64I-WITH-FP-NEXT:    .cfi_offset s0, -162402; RV64I-WITH-FP-NEXT:    .cfi_offset s1, -242403; RV64I-WITH-FP-NEXT:    .cfi_offset s2, -322404; RV64I-WITH-FP-NEXT:    .cfi_offset s3, -402405; RV64I-WITH-FP-NEXT:    .cfi_offset s4, -482406; RV64I-WITH-FP-NEXT:    .cfi_offset s5, -562407; RV64I-WITH-FP-NEXT:    .cfi_offset s6, -642408; RV64I-WITH-FP-NEXT:    .cfi_offset s7, -722409; RV64I-WITH-FP-NEXT:    .cfi_offset s8, -802410; RV64I-WITH-FP-NEXT:    .cfi_offset s9, -882411; RV64I-WITH-FP-NEXT:    .cfi_offset s10, -962412; RV64I-WITH-FP-NEXT:    .cfi_offset s11, -1042413; RV64I-WITH-FP-NEXT:    addi s0, sp, 2882414; RV64I-WITH-FP-NEXT:    .cfi_def_cfa s0, 02415; RV64I-WITH-FP-NEXT:    lui s1, %hi(var)2416; RV64I-WITH-FP-NEXT:    addi s1, s1, %lo(var)2417; RV64I-WITH-FP-NEXT:    lw a0, 0(s1)2418; RV64I-WITH-FP-NEXT:    sd a0, -112(s0) # 8-byte Folded Spill2419; RV64I-WITH-FP-NEXT:    lw a0, 4(s1)2420; RV64I-WITH-FP-NEXT:    sd a0, -120(s0) # 8-byte Folded Spill2421; RV64I-WITH-FP-NEXT:    lw a0, 8(s1)2422; RV64I-WITH-FP-NEXT:    sd a0, -128(s0) # 8-byte Folded Spill2423; RV64I-WITH-FP-NEXT:    lw a0, 12(s1)2424; RV64I-WITH-FP-NEXT:    sd a0, -136(s0) # 8-byte Folded Spill2425; RV64I-WITH-FP-NEXT:    lw a0, 16(s1)2426; RV64I-WITH-FP-NEXT:    sd a0, -144(s0) # 8-byte Folded Spill2427; RV64I-WITH-FP-NEXT:    lw a0, 20(s1)2428; RV64I-WITH-FP-NEXT:    sd a0, -152(s0) # 8-byte Folded Spill2429; RV64I-WITH-FP-NEXT:    lw a0, 24(s1)2430; RV64I-WITH-FP-NEXT:    sd a0, -160(s0) # 8-byte Folded Spill2431; RV64I-WITH-FP-NEXT:    lw a0, 28(s1)2432; RV64I-WITH-FP-NEXT:    sd a0, -168(s0) # 8-byte Folded Spill2433; RV64I-WITH-FP-NEXT:    lw a0, 32(s1)2434; RV64I-WITH-FP-NEXT:    sd a0, -176(s0) # 8-byte Folded Spill2435; RV64I-WITH-FP-NEXT:    lw a0, 36(s1)2436; RV64I-WITH-FP-NEXT:    sd a0, -184(s0) # 8-byte Folded Spill2437; RV64I-WITH-FP-NEXT:    lw a0, 40(s1)2438; RV64I-WITH-FP-NEXT:    sd a0, -192(s0) # 8-byte Folded Spill2439; RV64I-WITH-FP-NEXT:    lw a0, 44(s1)2440; RV64I-WITH-FP-NEXT:    sd a0, -200(s0) # 8-byte Folded Spill2441; RV64I-WITH-FP-NEXT:    lw a0, 48(s1)2442; RV64I-WITH-FP-NEXT:    sd a0, -208(s0) # 8-byte Folded Spill2443; RV64I-WITH-FP-NEXT:    lw a0, 52(s1)2444; RV64I-WITH-FP-NEXT:    sd a0, -216(s0) # 8-byte Folded Spill2445; RV64I-WITH-FP-NEXT:    lw a0, 56(s1)2446; RV64I-WITH-FP-NEXT:    sd a0, -224(s0) # 8-byte Folded Spill2447; RV64I-WITH-FP-NEXT:    lw a0, 60(s1)2448; RV64I-WITH-FP-NEXT:    sd a0, -232(s0) # 8-byte Folded Spill2449; RV64I-WITH-FP-NEXT:    lw a0, 64(s1)2450; RV64I-WITH-FP-NEXT:    sd a0, -240(s0) # 8-byte Folded Spill2451; RV64I-WITH-FP-NEXT:    lw a0, 68(s1)2452; RV64I-WITH-FP-NEXT:    sd a0, -248(s0) # 8-byte Folded Spill2453; RV64I-WITH-FP-NEXT:    lw a0, 72(s1)2454; RV64I-WITH-FP-NEXT:    sd a0, -256(s0) # 8-byte Folded Spill2455; RV64I-WITH-FP-NEXT:    lw a0, 76(s1)2456; RV64I-WITH-FP-NEXT:    sd a0, -264(s0) # 8-byte Folded Spill2457; RV64I-WITH-FP-NEXT:    lw a0, 80(s1)2458; RV64I-WITH-FP-NEXT:    sd a0, -272(s0) # 8-byte Folded Spill2459; RV64I-WITH-FP-NEXT:    lw a0, 84(s1)2460; RV64I-WITH-FP-NEXT:    sd a0, -280(s0) # 8-byte Folded Spill2461; RV64I-WITH-FP-NEXT:    lw s4, 88(s1)2462; RV64I-WITH-FP-NEXT:    lw s5, 92(s1)2463; RV64I-WITH-FP-NEXT:    lw s6, 96(s1)2464; RV64I-WITH-FP-NEXT:    lw s7, 100(s1)2465; RV64I-WITH-FP-NEXT:    lw s8, 104(s1)2466; RV64I-WITH-FP-NEXT:    lw s9, 108(s1)2467; RV64I-WITH-FP-NEXT:    lw s10, 112(s1)2468; RV64I-WITH-FP-NEXT:    lw s11, 116(s1)2469; RV64I-WITH-FP-NEXT:    lw s2, 120(s1)2470; RV64I-WITH-FP-NEXT:    lw s3, 124(s1)2471; RV64I-WITH-FP-NEXT:    call callee2472; RV64I-WITH-FP-NEXT:    sw s3, 124(s1)2473; RV64I-WITH-FP-NEXT:    sw s2, 120(s1)2474; RV64I-WITH-FP-NEXT:    sw s11, 116(s1)2475; RV64I-WITH-FP-NEXT:    sw s10, 112(s1)2476; RV64I-WITH-FP-NEXT:    sw s9, 108(s1)2477; RV64I-WITH-FP-NEXT:    sw s8, 104(s1)2478; RV64I-WITH-FP-NEXT:    sw s7, 100(s1)2479; RV64I-WITH-FP-NEXT:    sw s6, 96(s1)2480; RV64I-WITH-FP-NEXT:    sw s5, 92(s1)2481; RV64I-WITH-FP-NEXT:    sw s4, 88(s1)2482; RV64I-WITH-FP-NEXT:    ld a0, -280(s0) # 8-byte Folded Reload2483; RV64I-WITH-FP-NEXT:    sw a0, 84(s1)2484; RV64I-WITH-FP-NEXT:    ld a0, -272(s0) # 8-byte Folded Reload2485; RV64I-WITH-FP-NEXT:    sw a0, 80(s1)2486; RV64I-WITH-FP-NEXT:    ld a0, -264(s0) # 8-byte Folded Reload2487; RV64I-WITH-FP-NEXT:    sw a0, 76(s1)2488; RV64I-WITH-FP-NEXT:    ld a0, -256(s0) # 8-byte Folded Reload2489; RV64I-WITH-FP-NEXT:    sw a0, 72(s1)2490; RV64I-WITH-FP-NEXT:    ld a0, -248(s0) # 8-byte Folded Reload2491; RV64I-WITH-FP-NEXT:    sw a0, 68(s1)2492; RV64I-WITH-FP-NEXT:    ld a0, -240(s0) # 8-byte Folded Reload2493; RV64I-WITH-FP-NEXT:    sw a0, 64(s1)2494; RV64I-WITH-FP-NEXT:    ld a0, -232(s0) # 8-byte Folded Reload2495; RV64I-WITH-FP-NEXT:    sw a0, 60(s1)2496; RV64I-WITH-FP-NEXT:    ld a0, -224(s0) # 8-byte Folded Reload2497; RV64I-WITH-FP-NEXT:    sw a0, 56(s1)2498; RV64I-WITH-FP-NEXT:    ld a0, -216(s0) # 8-byte Folded Reload2499; RV64I-WITH-FP-NEXT:    sw a0, 52(s1)2500; RV64I-WITH-FP-NEXT:    ld a0, -208(s0) # 8-byte Folded Reload2501; RV64I-WITH-FP-NEXT:    sw a0, 48(s1)2502; RV64I-WITH-FP-NEXT:    ld a0, -200(s0) # 8-byte Folded Reload2503; RV64I-WITH-FP-NEXT:    sw a0, 44(s1)2504; RV64I-WITH-FP-NEXT:    ld a0, -192(s0) # 8-byte Folded Reload2505; RV64I-WITH-FP-NEXT:    sw a0, 40(s1)2506; RV64I-WITH-FP-NEXT:    ld a0, -184(s0) # 8-byte Folded Reload2507; RV64I-WITH-FP-NEXT:    sw a0, 36(s1)2508; RV64I-WITH-FP-NEXT:    ld a0, -176(s0) # 8-byte Folded Reload2509; RV64I-WITH-FP-NEXT:    sw a0, 32(s1)2510; RV64I-WITH-FP-NEXT:    ld a0, -168(s0) # 8-byte Folded Reload2511; RV64I-WITH-FP-NEXT:    sw a0, 28(s1)2512; RV64I-WITH-FP-NEXT:    ld a0, -160(s0) # 8-byte Folded Reload2513; RV64I-WITH-FP-NEXT:    sw a0, 24(s1)2514; RV64I-WITH-FP-NEXT:    ld a0, -152(s0) # 8-byte Folded Reload2515; RV64I-WITH-FP-NEXT:    sw a0, 20(s1)2516; RV64I-WITH-FP-NEXT:    ld a0, -144(s0) # 8-byte Folded Reload2517; RV64I-WITH-FP-NEXT:    sw a0, 16(s1)2518; RV64I-WITH-FP-NEXT:    ld a0, -136(s0) # 8-byte Folded Reload2519; RV64I-WITH-FP-NEXT:    sw a0, 12(s1)2520; RV64I-WITH-FP-NEXT:    ld a0, -128(s0) # 8-byte Folded Reload2521; RV64I-WITH-FP-NEXT:    sw a0, 8(s1)2522; RV64I-WITH-FP-NEXT:    ld a0, -120(s0) # 8-byte Folded Reload2523; RV64I-WITH-FP-NEXT:    sw a0, 4(s1)2524; RV64I-WITH-FP-NEXT:    ld a0, -112(s0) # 8-byte Folded Reload2525; RV64I-WITH-FP-NEXT:    sw a0, 0(s1)2526; RV64I-WITH-FP-NEXT:    .cfi_def_cfa sp, 2882527; RV64I-WITH-FP-NEXT:    ld ra, 280(sp) # 8-byte Folded Reload2528; RV64I-WITH-FP-NEXT:    ld s0, 272(sp) # 8-byte Folded Reload2529; RV64I-WITH-FP-NEXT:    ld s1, 264(sp) # 8-byte Folded Reload2530; RV64I-WITH-FP-NEXT:    ld s2, 256(sp) # 8-byte Folded Reload2531; RV64I-WITH-FP-NEXT:    ld s3, 248(sp) # 8-byte Folded Reload2532; RV64I-WITH-FP-NEXT:    ld s4, 240(sp) # 8-byte Folded Reload2533; RV64I-WITH-FP-NEXT:    ld s5, 232(sp) # 8-byte Folded Reload2534; RV64I-WITH-FP-NEXT:    ld s6, 224(sp) # 8-byte Folded Reload2535; RV64I-WITH-FP-NEXT:    ld s7, 216(sp) # 8-byte Folded Reload2536; RV64I-WITH-FP-NEXT:    ld s8, 208(sp) # 8-byte Folded Reload2537; RV64I-WITH-FP-NEXT:    ld s9, 200(sp) # 8-byte Folded Reload2538; RV64I-WITH-FP-NEXT:    ld s10, 192(sp) # 8-byte Folded Reload2539; RV64I-WITH-FP-NEXT:    ld s11, 184(sp) # 8-byte Folded Reload2540; RV64I-WITH-FP-NEXT:    .cfi_restore ra2541; RV64I-WITH-FP-NEXT:    .cfi_restore s02542; RV64I-WITH-FP-NEXT:    .cfi_restore s12543; RV64I-WITH-FP-NEXT:    .cfi_restore s22544; RV64I-WITH-FP-NEXT:    .cfi_restore s32545; RV64I-WITH-FP-NEXT:    .cfi_restore s42546; RV64I-WITH-FP-NEXT:    .cfi_restore s52547; RV64I-WITH-FP-NEXT:    .cfi_restore s62548; RV64I-WITH-FP-NEXT:    .cfi_restore s72549; RV64I-WITH-FP-NEXT:    .cfi_restore s82550; RV64I-WITH-FP-NEXT:    .cfi_restore s92551; RV64I-WITH-FP-NEXT:    .cfi_restore s102552; RV64I-WITH-FP-NEXT:    .cfi_restore s112553; RV64I-WITH-FP-NEXT:    addi sp, sp, 2882554; RV64I-WITH-FP-NEXT:    .cfi_def_cfa_offset 02555; RV64I-WITH-FP-NEXT:    ret2556;2557; RV64IZCMP-LABEL: caller:2558; RV64IZCMP:       # %bb.0:2559; RV64IZCMP-NEXT:    cm.push {ra, s0-s11}, -1602560; RV64IZCMP-NEXT:    .cfi_def_cfa_offset 1602561; RV64IZCMP-NEXT:    .cfi_offset ra, -1042562; RV64IZCMP-NEXT:    .cfi_offset s0, -962563; RV64IZCMP-NEXT:    .cfi_offset s1, -882564; RV64IZCMP-NEXT:    .cfi_offset s2, -802565; RV64IZCMP-NEXT:    .cfi_offset s3, -722566; RV64IZCMP-NEXT:    .cfi_offset s4, -642567; RV64IZCMP-NEXT:    .cfi_offset s5, -562568; RV64IZCMP-NEXT:    .cfi_offset s6, -482569; RV64IZCMP-NEXT:    .cfi_offset s7, -402570; RV64IZCMP-NEXT:    .cfi_offset s8, -322571; RV64IZCMP-NEXT:    .cfi_offset s9, -242572; RV64IZCMP-NEXT:    .cfi_offset s10, -162573; RV64IZCMP-NEXT:    .cfi_offset s11, -82574; RV64IZCMP-NEXT:    addi sp, sp, -1282575; RV64IZCMP-NEXT:    .cfi_def_cfa_offset 2882576; RV64IZCMP-NEXT:    lui s0, %hi(var)2577; RV64IZCMP-NEXT:    addi s0, s0, %lo(var)2578; RV64IZCMP-NEXT:    lw a0, 0(s0)2579; RV64IZCMP-NEXT:    sd a0, 168(sp) # 8-byte Folded Spill2580; RV64IZCMP-NEXT:    lw a0, 4(s0)2581; RV64IZCMP-NEXT:    sd a0, 160(sp) # 8-byte Folded Spill2582; RV64IZCMP-NEXT:    lw a0, 8(s0)2583; RV64IZCMP-NEXT:    sd a0, 152(sp) # 8-byte Folded Spill2584; RV64IZCMP-NEXT:    lw a0, 12(s0)2585; RV64IZCMP-NEXT:    sd a0, 144(sp) # 8-byte Folded Spill2586; RV64IZCMP-NEXT:    lw a0, 16(s0)2587; RV64IZCMP-NEXT:    sd a0, 136(sp) # 8-byte Folded Spill2588; RV64IZCMP-NEXT:    lw a0, 20(s0)2589; RV64IZCMP-NEXT:    sd a0, 128(sp) # 8-byte Folded Spill2590; RV64IZCMP-NEXT:    lw a0, 24(s0)2591; RV64IZCMP-NEXT:    sd a0, 120(sp) # 8-byte Folded Spill2592; RV64IZCMP-NEXT:    lw a0, 28(s0)2593; RV64IZCMP-NEXT:    sd a0, 112(sp) # 8-byte Folded Spill2594; RV64IZCMP-NEXT:    lw a0, 32(s0)2595; RV64IZCMP-NEXT:    sd a0, 104(sp) # 8-byte Folded Spill2596; RV64IZCMP-NEXT:    lw a0, 36(s0)2597; RV64IZCMP-NEXT:    sd a0, 96(sp) # 8-byte Folded Spill2598; RV64IZCMP-NEXT:    lw a0, 40(s0)2599; RV64IZCMP-NEXT:    sd a0, 88(sp) # 8-byte Folded Spill2600; RV64IZCMP-NEXT:    lw a0, 44(s0)2601; RV64IZCMP-NEXT:    sd a0, 80(sp) # 8-byte Folded Spill2602; RV64IZCMP-NEXT:    lw a0, 48(s0)2603; RV64IZCMP-NEXT:    sd a0, 72(sp) # 8-byte Folded Spill2604; RV64IZCMP-NEXT:    lw a0, 52(s0)2605; RV64IZCMP-NEXT:    sd a0, 64(sp) # 8-byte Folded Spill2606; RV64IZCMP-NEXT:    lw a0, 56(s0)2607; RV64IZCMP-NEXT:    sd a0, 56(sp) # 8-byte Folded Spill2608; RV64IZCMP-NEXT:    lw a0, 60(s0)2609; RV64IZCMP-NEXT:    sd a0, 48(sp) # 8-byte Folded Spill2610; RV64IZCMP-NEXT:    lw a0, 64(s0)2611; RV64IZCMP-NEXT:    sd a0, 40(sp) # 8-byte Folded Spill2612; RV64IZCMP-NEXT:    lw a0, 68(s0)2613; RV64IZCMP-NEXT:    sd a0, 32(sp) # 8-byte Folded Spill2614; RV64IZCMP-NEXT:    lw a0, 72(s0)2615; RV64IZCMP-NEXT:    sd a0, 24(sp) # 8-byte Folded Spill2616; RV64IZCMP-NEXT:    lw a0, 76(s0)2617; RV64IZCMP-NEXT:    sd a0, 16(sp) # 8-byte Folded Spill2618; RV64IZCMP-NEXT:    lw a0, 80(s0)2619; RV64IZCMP-NEXT:    sd a0, 8(sp) # 8-byte Folded Spill2620; RV64IZCMP-NEXT:    lw s1, 84(s0)2621; RV64IZCMP-NEXT:    lw s2, 88(s0)2622; RV64IZCMP-NEXT:    lw s3, 92(s0)2623; RV64IZCMP-NEXT:    lw s4, 96(s0)2624; RV64IZCMP-NEXT:    lw s5, 100(s0)2625; RV64IZCMP-NEXT:    lw s6, 104(s0)2626; RV64IZCMP-NEXT:    lw s7, 108(s0)2627; RV64IZCMP-NEXT:    lw s8, 112(s0)2628; RV64IZCMP-NEXT:    lw s9, 116(s0)2629; RV64IZCMP-NEXT:    lw s10, 120(s0)2630; RV64IZCMP-NEXT:    lw s11, 124(s0)2631; RV64IZCMP-NEXT:    call callee2632; RV64IZCMP-NEXT:    sw s11, 124(s0)2633; RV64IZCMP-NEXT:    sw s10, 120(s0)2634; RV64IZCMP-NEXT:    sw s9, 116(s0)2635; RV64IZCMP-NEXT:    sw s8, 112(s0)2636; RV64IZCMP-NEXT:    sw s7, 108(s0)2637; RV64IZCMP-NEXT:    sw s6, 104(s0)2638; RV64IZCMP-NEXT:    sw s5, 100(s0)2639; RV64IZCMP-NEXT:    sw s4, 96(s0)2640; RV64IZCMP-NEXT:    sw s3, 92(s0)2641; RV64IZCMP-NEXT:    sw s2, 88(s0)2642; RV64IZCMP-NEXT:    sw s1, 84(s0)2643; RV64IZCMP-NEXT:    ld a0, 8(sp) # 8-byte Folded Reload2644; RV64IZCMP-NEXT:    sw a0, 80(s0)2645; RV64IZCMP-NEXT:    ld a0, 16(sp) # 8-byte Folded Reload2646; RV64IZCMP-NEXT:    sw a0, 76(s0)2647; RV64IZCMP-NEXT:    ld a0, 24(sp) # 8-byte Folded Reload2648; RV64IZCMP-NEXT:    sw a0, 72(s0)2649; RV64IZCMP-NEXT:    ld a0, 32(sp) # 8-byte Folded Reload2650; RV64IZCMP-NEXT:    sw a0, 68(s0)2651; RV64IZCMP-NEXT:    ld a0, 40(sp) # 8-byte Folded Reload2652; RV64IZCMP-NEXT:    sw a0, 64(s0)2653; RV64IZCMP-NEXT:    ld a0, 48(sp) # 8-byte Folded Reload2654; RV64IZCMP-NEXT:    sw a0, 60(s0)2655; RV64IZCMP-NEXT:    ld a0, 56(sp) # 8-byte Folded Reload2656; RV64IZCMP-NEXT:    sw a0, 56(s0)2657; RV64IZCMP-NEXT:    ld a0, 64(sp) # 8-byte Folded Reload2658; RV64IZCMP-NEXT:    sw a0, 52(s0)2659; RV64IZCMP-NEXT:    ld a0, 72(sp) # 8-byte Folded Reload2660; RV64IZCMP-NEXT:    sw a0, 48(s0)2661; RV64IZCMP-NEXT:    ld a0, 80(sp) # 8-byte Folded Reload2662; RV64IZCMP-NEXT:    sw a0, 44(s0)2663; RV64IZCMP-NEXT:    ld a0, 88(sp) # 8-byte Folded Reload2664; RV64IZCMP-NEXT:    sw a0, 40(s0)2665; RV64IZCMP-NEXT:    ld a0, 96(sp) # 8-byte Folded Reload2666; RV64IZCMP-NEXT:    sw a0, 36(s0)2667; RV64IZCMP-NEXT:    ld a0, 104(sp) # 8-byte Folded Reload2668; RV64IZCMP-NEXT:    sw a0, 32(s0)2669; RV64IZCMP-NEXT:    ld a0, 112(sp) # 8-byte Folded Reload2670; RV64IZCMP-NEXT:    sw a0, 28(s0)2671; RV64IZCMP-NEXT:    ld a0, 120(sp) # 8-byte Folded Reload2672; RV64IZCMP-NEXT:    sw a0, 24(s0)2673; RV64IZCMP-NEXT:    ld a0, 128(sp) # 8-byte Folded Reload2674; RV64IZCMP-NEXT:    sw a0, 20(s0)2675; RV64IZCMP-NEXT:    ld a0, 136(sp) # 8-byte Folded Reload2676; RV64IZCMP-NEXT:    sw a0, 16(s0)2677; RV64IZCMP-NEXT:    ld a0, 144(sp) # 8-byte Folded Reload2678; RV64IZCMP-NEXT:    sw a0, 12(s0)2679; RV64IZCMP-NEXT:    ld a0, 152(sp) # 8-byte Folded Reload2680; RV64IZCMP-NEXT:    sw a0, 8(s0)2681; RV64IZCMP-NEXT:    ld a0, 160(sp) # 8-byte Folded Reload2682; RV64IZCMP-NEXT:    sw a0, 4(s0)2683; RV64IZCMP-NEXT:    ld a0, 168(sp) # 8-byte Folded Reload2684; RV64IZCMP-NEXT:    sw a0, 0(s0)2685; RV64IZCMP-NEXT:    addi sp, sp, 1282686; RV64IZCMP-NEXT:    .cfi_def_cfa_offset 1602687; RV64IZCMP-NEXT:    cm.popret {ra, s0-s11}, 1602688;2689; RV64IZCMP-WITH-FP-LABEL: caller:2690; RV64IZCMP-WITH-FP:       # %bb.0:2691; RV64IZCMP-WITH-FP-NEXT:    addi sp, sp, -2882692; RV64IZCMP-WITH-FP-NEXT:    .cfi_def_cfa_offset 2882693; RV64IZCMP-WITH-FP-NEXT:    sd ra, 280(sp) # 8-byte Folded Spill2694; RV64IZCMP-WITH-FP-NEXT:    sd s0, 272(sp) # 8-byte Folded Spill2695; RV64IZCMP-WITH-FP-NEXT:    sd s1, 264(sp) # 8-byte Folded Spill2696; RV64IZCMP-WITH-FP-NEXT:    sd s2, 256(sp) # 8-byte Folded Spill2697; RV64IZCMP-WITH-FP-NEXT:    sd s3, 248(sp) # 8-byte Folded Spill2698; RV64IZCMP-WITH-FP-NEXT:    sd s4, 240(sp) # 8-byte Folded Spill2699; RV64IZCMP-WITH-FP-NEXT:    sd s5, 232(sp) # 8-byte Folded Spill2700; RV64IZCMP-WITH-FP-NEXT:    sd s6, 224(sp) # 8-byte Folded Spill2701; RV64IZCMP-WITH-FP-NEXT:    sd s7, 216(sp) # 8-byte Folded Spill2702; RV64IZCMP-WITH-FP-NEXT:    sd s8, 208(sp) # 8-byte Folded Spill2703; RV64IZCMP-WITH-FP-NEXT:    sd s9, 200(sp) # 8-byte Folded Spill2704; RV64IZCMP-WITH-FP-NEXT:    sd s10, 192(sp) # 8-byte Folded Spill2705; RV64IZCMP-WITH-FP-NEXT:    sd s11, 184(sp) # 8-byte Folded Spill2706; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset ra, -82707; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset s0, -162708; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset s1, -242709; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset s2, -322710; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset s3, -402711; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset s4, -482712; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset s5, -562713; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset s6, -642714; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset s7, -722715; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset s8, -802716; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset s9, -882717; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset s10, -962718; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset s11, -1042719; RV64IZCMP-WITH-FP-NEXT:    addi s0, sp, 2882720; RV64IZCMP-WITH-FP-NEXT:    .cfi_def_cfa s0, 02721; RV64IZCMP-WITH-FP-NEXT:    lui s1, %hi(var)2722; RV64IZCMP-WITH-FP-NEXT:    addi s1, s1, %lo(var)2723; RV64IZCMP-WITH-FP-NEXT:    lw a0, 0(s1)2724; RV64IZCMP-WITH-FP-NEXT:    sd a0, -112(s0) # 8-byte Folded Spill2725; RV64IZCMP-WITH-FP-NEXT:    lw a0, 4(s1)2726; RV64IZCMP-WITH-FP-NEXT:    sd a0, -120(s0) # 8-byte Folded Spill2727; RV64IZCMP-WITH-FP-NEXT:    lw a0, 8(s1)2728; RV64IZCMP-WITH-FP-NEXT:    sd a0, -128(s0) # 8-byte Folded Spill2729; RV64IZCMP-WITH-FP-NEXT:    lw a0, 12(s1)2730; RV64IZCMP-WITH-FP-NEXT:    sd a0, -136(s0) # 8-byte Folded Spill2731; RV64IZCMP-WITH-FP-NEXT:    lw a0, 16(s1)2732; RV64IZCMP-WITH-FP-NEXT:    sd a0, -144(s0) # 8-byte Folded Spill2733; RV64IZCMP-WITH-FP-NEXT:    lw a0, 20(s1)2734; RV64IZCMP-WITH-FP-NEXT:    sd a0, -152(s0) # 8-byte Folded Spill2735; RV64IZCMP-WITH-FP-NEXT:    lw a0, 24(s1)2736; RV64IZCMP-WITH-FP-NEXT:    sd a0, -160(s0) # 8-byte Folded Spill2737; RV64IZCMP-WITH-FP-NEXT:    lw a0, 28(s1)2738; RV64IZCMP-WITH-FP-NEXT:    sd a0, -168(s0) # 8-byte Folded Spill2739; RV64IZCMP-WITH-FP-NEXT:    lw a0, 32(s1)2740; RV64IZCMP-WITH-FP-NEXT:    sd a0, -176(s0) # 8-byte Folded Spill2741; RV64IZCMP-WITH-FP-NEXT:    lw a0, 36(s1)2742; RV64IZCMP-WITH-FP-NEXT:    sd a0, -184(s0) # 8-byte Folded Spill2743; RV64IZCMP-WITH-FP-NEXT:    lw a0, 40(s1)2744; RV64IZCMP-WITH-FP-NEXT:    sd a0, -192(s0) # 8-byte Folded Spill2745; RV64IZCMP-WITH-FP-NEXT:    lw a0, 44(s1)2746; RV64IZCMP-WITH-FP-NEXT:    sd a0, -200(s0) # 8-byte Folded Spill2747; RV64IZCMP-WITH-FP-NEXT:    lw a0, 48(s1)2748; RV64IZCMP-WITH-FP-NEXT:    sd a0, -208(s0) # 8-byte Folded Spill2749; RV64IZCMP-WITH-FP-NEXT:    lw a0, 52(s1)2750; RV64IZCMP-WITH-FP-NEXT:    sd a0, -216(s0) # 8-byte Folded Spill2751; RV64IZCMP-WITH-FP-NEXT:    lw a0, 56(s1)2752; RV64IZCMP-WITH-FP-NEXT:    sd a0, -224(s0) # 8-byte Folded Spill2753; RV64IZCMP-WITH-FP-NEXT:    lw a0, 60(s1)2754; RV64IZCMP-WITH-FP-NEXT:    sd a0, -232(s0) # 8-byte Folded Spill2755; RV64IZCMP-WITH-FP-NEXT:    lw a0, 64(s1)2756; RV64IZCMP-WITH-FP-NEXT:    sd a0, -240(s0) # 8-byte Folded Spill2757; RV64IZCMP-WITH-FP-NEXT:    lw a0, 68(s1)2758; RV64IZCMP-WITH-FP-NEXT:    sd a0, -248(s0) # 8-byte Folded Spill2759; RV64IZCMP-WITH-FP-NEXT:    lw a0, 72(s1)2760; RV64IZCMP-WITH-FP-NEXT:    sd a0, -256(s0) # 8-byte Folded Spill2761; RV64IZCMP-WITH-FP-NEXT:    lw a0, 76(s1)2762; RV64IZCMP-WITH-FP-NEXT:    sd a0, -264(s0) # 8-byte Folded Spill2763; RV64IZCMP-WITH-FP-NEXT:    lw a0, 80(s1)2764; RV64IZCMP-WITH-FP-NEXT:    sd a0, -272(s0) # 8-byte Folded Spill2765; RV64IZCMP-WITH-FP-NEXT:    lw a0, 84(s1)2766; RV64IZCMP-WITH-FP-NEXT:    sd a0, -280(s0) # 8-byte Folded Spill2767; RV64IZCMP-WITH-FP-NEXT:    lw s4, 88(s1)2768; RV64IZCMP-WITH-FP-NEXT:    lw s5, 92(s1)2769; RV64IZCMP-WITH-FP-NEXT:    lw s6, 96(s1)2770; RV64IZCMP-WITH-FP-NEXT:    lw s7, 100(s1)2771; RV64IZCMP-WITH-FP-NEXT:    lw s8, 104(s1)2772; RV64IZCMP-WITH-FP-NEXT:    lw s9, 108(s1)2773; RV64IZCMP-WITH-FP-NEXT:    lw s10, 112(s1)2774; RV64IZCMP-WITH-FP-NEXT:    lw s11, 116(s1)2775; RV64IZCMP-WITH-FP-NEXT:    lw s2, 120(s1)2776; RV64IZCMP-WITH-FP-NEXT:    lw s3, 124(s1)2777; RV64IZCMP-WITH-FP-NEXT:    call callee2778; RV64IZCMP-WITH-FP-NEXT:    sw s3, 124(s1)2779; RV64IZCMP-WITH-FP-NEXT:    sw s2, 120(s1)2780; RV64IZCMP-WITH-FP-NEXT:    sw s11, 116(s1)2781; RV64IZCMP-WITH-FP-NEXT:    sw s10, 112(s1)2782; RV64IZCMP-WITH-FP-NEXT:    sw s9, 108(s1)2783; RV64IZCMP-WITH-FP-NEXT:    sw s8, 104(s1)2784; RV64IZCMP-WITH-FP-NEXT:    sw s7, 100(s1)2785; RV64IZCMP-WITH-FP-NEXT:    sw s6, 96(s1)2786; RV64IZCMP-WITH-FP-NEXT:    sw s5, 92(s1)2787; RV64IZCMP-WITH-FP-NEXT:    sw s4, 88(s1)2788; RV64IZCMP-WITH-FP-NEXT:    ld a0, -280(s0) # 8-byte Folded Reload2789; RV64IZCMP-WITH-FP-NEXT:    sw a0, 84(s1)2790; RV64IZCMP-WITH-FP-NEXT:    ld a0, -272(s0) # 8-byte Folded Reload2791; RV64IZCMP-WITH-FP-NEXT:    sw a0, 80(s1)2792; RV64IZCMP-WITH-FP-NEXT:    ld a0, -264(s0) # 8-byte Folded Reload2793; RV64IZCMP-WITH-FP-NEXT:    sw a0, 76(s1)2794; RV64IZCMP-WITH-FP-NEXT:    ld a0, -256(s0) # 8-byte Folded Reload2795; RV64IZCMP-WITH-FP-NEXT:    sw a0, 72(s1)2796; RV64IZCMP-WITH-FP-NEXT:    ld a0, -248(s0) # 8-byte Folded Reload2797; RV64IZCMP-WITH-FP-NEXT:    sw a0, 68(s1)2798; RV64IZCMP-WITH-FP-NEXT:    ld a0, -240(s0) # 8-byte Folded Reload2799; RV64IZCMP-WITH-FP-NEXT:    sw a0, 64(s1)2800; RV64IZCMP-WITH-FP-NEXT:    ld a0, -232(s0) # 8-byte Folded Reload2801; RV64IZCMP-WITH-FP-NEXT:    sw a0, 60(s1)2802; RV64IZCMP-WITH-FP-NEXT:    ld a0, -224(s0) # 8-byte Folded Reload2803; RV64IZCMP-WITH-FP-NEXT:    sw a0, 56(s1)2804; RV64IZCMP-WITH-FP-NEXT:    ld a0, -216(s0) # 8-byte Folded Reload2805; RV64IZCMP-WITH-FP-NEXT:    sw a0, 52(s1)2806; RV64IZCMP-WITH-FP-NEXT:    ld a0, -208(s0) # 8-byte Folded Reload2807; RV64IZCMP-WITH-FP-NEXT:    sw a0, 48(s1)2808; RV64IZCMP-WITH-FP-NEXT:    ld a0, -200(s0) # 8-byte Folded Reload2809; RV64IZCMP-WITH-FP-NEXT:    sw a0, 44(s1)2810; RV64IZCMP-WITH-FP-NEXT:    ld a0, -192(s0) # 8-byte Folded Reload2811; RV64IZCMP-WITH-FP-NEXT:    sw a0, 40(s1)2812; RV64IZCMP-WITH-FP-NEXT:    ld a0, -184(s0) # 8-byte Folded Reload2813; RV64IZCMP-WITH-FP-NEXT:    sw a0, 36(s1)2814; RV64IZCMP-WITH-FP-NEXT:    ld a0, -176(s0) # 8-byte Folded Reload2815; RV64IZCMP-WITH-FP-NEXT:    sw a0, 32(s1)2816; RV64IZCMP-WITH-FP-NEXT:    ld a0, -168(s0) # 8-byte Folded Reload2817; RV64IZCMP-WITH-FP-NEXT:    sw a0, 28(s1)2818; RV64IZCMP-WITH-FP-NEXT:    ld a0, -160(s0) # 8-byte Folded Reload2819; RV64IZCMP-WITH-FP-NEXT:    sw a0, 24(s1)2820; RV64IZCMP-WITH-FP-NEXT:    ld a0, -152(s0) # 8-byte Folded Reload2821; RV64IZCMP-WITH-FP-NEXT:    sw a0, 20(s1)2822; RV64IZCMP-WITH-FP-NEXT:    ld a0, -144(s0) # 8-byte Folded Reload2823; RV64IZCMP-WITH-FP-NEXT:    sw a0, 16(s1)2824; RV64IZCMP-WITH-FP-NEXT:    ld a0, -136(s0) # 8-byte Folded Reload2825; RV64IZCMP-WITH-FP-NEXT:    sw a0, 12(s1)2826; RV64IZCMP-WITH-FP-NEXT:    ld a0, -128(s0) # 8-byte Folded Reload2827; RV64IZCMP-WITH-FP-NEXT:    sw a0, 8(s1)2828; RV64IZCMP-WITH-FP-NEXT:    ld a0, -120(s0) # 8-byte Folded Reload2829; RV64IZCMP-WITH-FP-NEXT:    sw a0, 4(s1)2830; RV64IZCMP-WITH-FP-NEXT:    ld a0, -112(s0) # 8-byte Folded Reload2831; RV64IZCMP-WITH-FP-NEXT:    sw a0, 0(s1)2832; RV64IZCMP-WITH-FP-NEXT:    .cfi_def_cfa sp, 2882833; RV64IZCMP-WITH-FP-NEXT:    ld ra, 280(sp) # 8-byte Folded Reload2834; RV64IZCMP-WITH-FP-NEXT:    ld s0, 272(sp) # 8-byte Folded Reload2835; RV64IZCMP-WITH-FP-NEXT:    ld s1, 264(sp) # 8-byte Folded Reload2836; RV64IZCMP-WITH-FP-NEXT:    ld s2, 256(sp) # 8-byte Folded Reload2837; RV64IZCMP-WITH-FP-NEXT:    ld s3, 248(sp) # 8-byte Folded Reload2838; RV64IZCMP-WITH-FP-NEXT:    ld s4, 240(sp) # 8-byte Folded Reload2839; RV64IZCMP-WITH-FP-NEXT:    ld s5, 232(sp) # 8-byte Folded Reload2840; RV64IZCMP-WITH-FP-NEXT:    ld s6, 224(sp) # 8-byte Folded Reload2841; RV64IZCMP-WITH-FP-NEXT:    ld s7, 216(sp) # 8-byte Folded Reload2842; RV64IZCMP-WITH-FP-NEXT:    ld s8, 208(sp) # 8-byte Folded Reload2843; RV64IZCMP-WITH-FP-NEXT:    ld s9, 200(sp) # 8-byte Folded Reload2844; RV64IZCMP-WITH-FP-NEXT:    ld s10, 192(sp) # 8-byte Folded Reload2845; RV64IZCMP-WITH-FP-NEXT:    ld s11, 184(sp) # 8-byte Folded Reload2846; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore ra2847; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore s02848; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore s12849; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore s22850; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore s32851; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore s42852; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore s52853; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore s62854; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore s72855; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore s82856; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore s92857; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore s102858; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore s112859; RV64IZCMP-WITH-FP-NEXT:    addi sp, sp, 2882860; RV64IZCMP-WITH-FP-NEXT:    .cfi_def_cfa_offset 02861; RV64IZCMP-WITH-FP-NEXT:    ret2862  %val = load [32 x i32], ptr @var2863  call void @callee()2864  store volatile [32 x i32] %val, ptr @var2865  ret void2866}2867 2868; This function tests if the stack size is correctly calculated when2869; callee-saved registers are not a sequential list from $ra2870define void @foo() {2871; RV32I-LABEL: foo:2872; RV32I:       # %bb.0: # %entry2873; RV32I-NEXT:    addi sp, sp, -162874; RV32I-NEXT:    .cfi_def_cfa_offset 162875; RV32I-NEXT:    sw s4, 12(sp) # 4-byte Folded Spill2876; RV32I-NEXT:    .cfi_offset s4, -42877; RV32I-NEXT:    #APP2878; RV32I-NEXT:    li s4, 02879; RV32I-NEXT:    #NO_APP2880; RV32I-NEXT:    lw s4, 12(sp) # 4-byte Folded Reload2881; RV32I-NEXT:    .cfi_restore s42882; RV32I-NEXT:    addi sp, sp, 162883; RV32I-NEXT:    .cfi_def_cfa_offset 02884; RV32I-NEXT:    ret2885;2886; RV32I-ILP32E-LABEL: foo:2887; RV32I-ILP32E:       # %bb.0: # %entry2888; RV32I-ILP32E-NEXT:    #APP2889; RV32I-ILP32E-NEXT:    li s4, 02890; RV32I-ILP32E-NEXT:    #NO_APP2891; RV32I-ILP32E-NEXT:    ret2892;2893; RV32I-WITH-FP-LABEL: foo:2894; RV32I-WITH-FP:       # %bb.0: # %entry2895; RV32I-WITH-FP-NEXT:    addi sp, sp, -162896; RV32I-WITH-FP-NEXT:    .cfi_def_cfa_offset 162897; RV32I-WITH-FP-NEXT:    sw ra, 12(sp) # 4-byte Folded Spill2898; RV32I-WITH-FP-NEXT:    sw s0, 8(sp) # 4-byte Folded Spill2899; RV32I-WITH-FP-NEXT:    sw s4, 4(sp) # 4-byte Folded Spill2900; RV32I-WITH-FP-NEXT:    .cfi_offset ra, -42901; RV32I-WITH-FP-NEXT:    .cfi_offset s0, -82902; RV32I-WITH-FP-NEXT:    .cfi_offset s4, -122903; RV32I-WITH-FP-NEXT:    addi s0, sp, 162904; RV32I-WITH-FP-NEXT:    .cfi_def_cfa s0, 02905; RV32I-WITH-FP-NEXT:    #APP2906; RV32I-WITH-FP-NEXT:    li s4, 02907; RV32I-WITH-FP-NEXT:    #NO_APP2908; RV32I-WITH-FP-NEXT:    .cfi_def_cfa sp, 162909; RV32I-WITH-FP-NEXT:    lw ra, 12(sp) # 4-byte Folded Reload2910; RV32I-WITH-FP-NEXT:    lw s0, 8(sp) # 4-byte Folded Reload2911; RV32I-WITH-FP-NEXT:    lw s4, 4(sp) # 4-byte Folded Reload2912; RV32I-WITH-FP-NEXT:    .cfi_restore ra2913; RV32I-WITH-FP-NEXT:    .cfi_restore s02914; RV32I-WITH-FP-NEXT:    .cfi_restore s42915; RV32I-WITH-FP-NEXT:    addi sp, sp, 162916; RV32I-WITH-FP-NEXT:    .cfi_def_cfa_offset 02917; RV32I-WITH-FP-NEXT:    ret2918;2919; RV32IZCMP-LABEL: foo:2920; RV32IZCMP:       # %bb.0: # %entry2921; RV32IZCMP-NEXT:    cm.push {ra, s0-s4}, -322922; RV32IZCMP-NEXT:    .cfi_def_cfa_offset 322923; RV32IZCMP-NEXT:    .cfi_offset s4, -42924; RV32IZCMP-NEXT:    #APP2925; RV32IZCMP-NEXT:    li s4, 02926; RV32IZCMP-NEXT:    #NO_APP2927; RV32IZCMP-NEXT:    cm.popret {ra, s0-s4}, 322928;2929; RV32IZCMP-WITH-FP-LABEL: foo:2930; RV32IZCMP-WITH-FP:       # %bb.0: # %entry2931; RV32IZCMP-WITH-FP-NEXT:    addi sp, sp, -162932; RV32IZCMP-WITH-FP-NEXT:    .cfi_def_cfa_offset 162933; RV32IZCMP-WITH-FP-NEXT:    sw ra, 12(sp) # 4-byte Folded Spill2934; RV32IZCMP-WITH-FP-NEXT:    sw s0, 8(sp) # 4-byte Folded Spill2935; RV32IZCMP-WITH-FP-NEXT:    sw s4, 4(sp) # 4-byte Folded Spill2936; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset ra, -42937; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset s0, -82938; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset s4, -122939; RV32IZCMP-WITH-FP-NEXT:    addi s0, sp, 162940; RV32IZCMP-WITH-FP-NEXT:    .cfi_def_cfa s0, 02941; RV32IZCMP-WITH-FP-NEXT:    #APP2942; RV32IZCMP-WITH-FP-NEXT:    li s4, 02943; RV32IZCMP-WITH-FP-NEXT:    #NO_APP2944; RV32IZCMP-WITH-FP-NEXT:    .cfi_def_cfa sp, 162945; RV32IZCMP-WITH-FP-NEXT:    lw ra, 12(sp) # 4-byte Folded Reload2946; RV32IZCMP-WITH-FP-NEXT:    lw s0, 8(sp) # 4-byte Folded Reload2947; RV32IZCMP-WITH-FP-NEXT:    lw s4, 4(sp) # 4-byte Folded Reload2948; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore ra2949; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore s02950; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore s42951; RV32IZCMP-WITH-FP-NEXT:    addi sp, sp, 162952; RV32IZCMP-WITH-FP-NEXT:    .cfi_def_cfa_offset 02953; RV32IZCMP-WITH-FP-NEXT:    ret2954;2955; RV64I-LABEL: foo:2956; RV64I:       # %bb.0: # %entry2957; RV64I-NEXT:    addi sp, sp, -162958; RV64I-NEXT:    .cfi_def_cfa_offset 162959; RV64I-NEXT:    sd s4, 8(sp) # 8-byte Folded Spill2960; RV64I-NEXT:    .cfi_offset s4, -82961; RV64I-NEXT:    #APP2962; RV64I-NEXT:    li s4, 02963; RV64I-NEXT:    #NO_APP2964; RV64I-NEXT:    ld s4, 8(sp) # 8-byte Folded Reload2965; RV64I-NEXT:    .cfi_restore s42966; RV64I-NEXT:    addi sp, sp, 162967; RV64I-NEXT:    .cfi_def_cfa_offset 02968; RV64I-NEXT:    ret2969;2970; RV64I-LP64E-LABEL: foo:2971; RV64I-LP64E:       # %bb.0: # %entry2972; RV64I-LP64E-NEXT:    #APP2973; RV64I-LP64E-NEXT:    li s4, 02974; RV64I-LP64E-NEXT:    #NO_APP2975; RV64I-LP64E-NEXT:    ret2976;2977; RV64I-WITH-FP-LABEL: foo:2978; RV64I-WITH-FP:       # %bb.0: # %entry2979; RV64I-WITH-FP-NEXT:    addi sp, sp, -322980; RV64I-WITH-FP-NEXT:    .cfi_def_cfa_offset 322981; RV64I-WITH-FP-NEXT:    sd ra, 24(sp) # 8-byte Folded Spill2982; RV64I-WITH-FP-NEXT:    sd s0, 16(sp) # 8-byte Folded Spill2983; RV64I-WITH-FP-NEXT:    sd s4, 8(sp) # 8-byte Folded Spill2984; RV64I-WITH-FP-NEXT:    .cfi_offset ra, -82985; RV64I-WITH-FP-NEXT:    .cfi_offset s0, -162986; RV64I-WITH-FP-NEXT:    .cfi_offset s4, -242987; RV64I-WITH-FP-NEXT:    addi s0, sp, 322988; RV64I-WITH-FP-NEXT:    .cfi_def_cfa s0, 02989; RV64I-WITH-FP-NEXT:    #APP2990; RV64I-WITH-FP-NEXT:    li s4, 02991; RV64I-WITH-FP-NEXT:    #NO_APP2992; RV64I-WITH-FP-NEXT:    .cfi_def_cfa sp, 322993; RV64I-WITH-FP-NEXT:    ld ra, 24(sp) # 8-byte Folded Reload2994; RV64I-WITH-FP-NEXT:    ld s0, 16(sp) # 8-byte Folded Reload2995; RV64I-WITH-FP-NEXT:    ld s4, 8(sp) # 8-byte Folded Reload2996; RV64I-WITH-FP-NEXT:    .cfi_restore ra2997; RV64I-WITH-FP-NEXT:    .cfi_restore s02998; RV64I-WITH-FP-NEXT:    .cfi_restore s42999; RV64I-WITH-FP-NEXT:    addi sp, sp, 323000; RV64I-WITH-FP-NEXT:    .cfi_def_cfa_offset 03001; RV64I-WITH-FP-NEXT:    ret3002;3003; RV64IZCMP-LABEL: foo:3004; RV64IZCMP:       # %bb.0: # %entry3005; RV64IZCMP-NEXT:    cm.push {ra, s0-s4}, -483006; RV64IZCMP-NEXT:    .cfi_def_cfa_offset 483007; RV64IZCMP-NEXT:    .cfi_offset s4, -83008; RV64IZCMP-NEXT:    #APP3009; RV64IZCMP-NEXT:    li s4, 03010; RV64IZCMP-NEXT:    #NO_APP3011; RV64IZCMP-NEXT:    cm.popret {ra, s0-s4}, 483012;3013; RV64IZCMP-WITH-FP-LABEL: foo:3014; RV64IZCMP-WITH-FP:       # %bb.0: # %entry3015; RV64IZCMP-WITH-FP-NEXT:    addi sp, sp, -323016; RV64IZCMP-WITH-FP-NEXT:    .cfi_def_cfa_offset 323017; RV64IZCMP-WITH-FP-NEXT:    sd ra, 24(sp) # 8-byte Folded Spill3018; RV64IZCMP-WITH-FP-NEXT:    sd s0, 16(sp) # 8-byte Folded Spill3019; RV64IZCMP-WITH-FP-NEXT:    sd s4, 8(sp) # 8-byte Folded Spill3020; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset ra, -83021; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset s0, -163022; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset s4, -243023; RV64IZCMP-WITH-FP-NEXT:    addi s0, sp, 323024; RV64IZCMP-WITH-FP-NEXT:    .cfi_def_cfa s0, 03025; RV64IZCMP-WITH-FP-NEXT:    #APP3026; RV64IZCMP-WITH-FP-NEXT:    li s4, 03027; RV64IZCMP-WITH-FP-NEXT:    #NO_APP3028; RV64IZCMP-WITH-FP-NEXT:    .cfi_def_cfa sp, 323029; RV64IZCMP-WITH-FP-NEXT:    ld ra, 24(sp) # 8-byte Folded Reload3030; RV64IZCMP-WITH-FP-NEXT:    ld s0, 16(sp) # 8-byte Folded Reload3031; RV64IZCMP-WITH-FP-NEXT:    ld s4, 8(sp) # 8-byte Folded Reload3032; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore ra3033; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore s03034; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore s43035; RV64IZCMP-WITH-FP-NEXT:    addi sp, sp, 323036; RV64IZCMP-WITH-FP-NEXT:    .cfi_def_cfa_offset 03037; RV64IZCMP-WITH-FP-NEXT:    ret3038entry:3039  tail call void asm sideeffect "li s4, 0", "~{s4}"()3040  ret void3041}3042 3043; Check .cfi_offset of s11 is correct for Zcmp.3044define void @bar() {3045; RV32I-LABEL: bar:3046; RV32I:       # %bb.0: # %entry3047; RV32I-NEXT:    addi sp, sp, -163048; RV32I-NEXT:    .cfi_def_cfa_offset 163049; RV32I-NEXT:    sw s11, 12(sp) # 4-byte Folded Spill3050; RV32I-NEXT:    .cfi_offset s11, -43051; RV32I-NEXT:    #APP3052; RV32I-NEXT:    li s11, 03053; RV32I-NEXT:    #NO_APP3054; RV32I-NEXT:    lw s11, 12(sp) # 4-byte Folded Reload3055; RV32I-NEXT:    .cfi_restore s113056; RV32I-NEXT:    addi sp, sp, 163057; RV32I-NEXT:    .cfi_def_cfa_offset 03058; RV32I-NEXT:    ret3059;3060; RV32I-ILP32E-LABEL: bar:3061; RV32I-ILP32E:       # %bb.0: # %entry3062; RV32I-ILP32E-NEXT:    #APP3063; RV32I-ILP32E-NEXT:    li s11, 03064; RV32I-ILP32E-NEXT:    #NO_APP3065; RV32I-ILP32E-NEXT:    ret3066;3067; RV32I-WITH-FP-LABEL: bar:3068; RV32I-WITH-FP:       # %bb.0: # %entry3069; RV32I-WITH-FP-NEXT:    addi sp, sp, -163070; RV32I-WITH-FP-NEXT:    .cfi_def_cfa_offset 163071; RV32I-WITH-FP-NEXT:    sw ra, 12(sp) # 4-byte Folded Spill3072; RV32I-WITH-FP-NEXT:    sw s0, 8(sp) # 4-byte Folded Spill3073; RV32I-WITH-FP-NEXT:    sw s11, 4(sp) # 4-byte Folded Spill3074; RV32I-WITH-FP-NEXT:    .cfi_offset ra, -43075; RV32I-WITH-FP-NEXT:    .cfi_offset s0, -83076; RV32I-WITH-FP-NEXT:    .cfi_offset s11, -123077; RV32I-WITH-FP-NEXT:    addi s0, sp, 163078; RV32I-WITH-FP-NEXT:    .cfi_def_cfa s0, 03079; RV32I-WITH-FP-NEXT:    #APP3080; RV32I-WITH-FP-NEXT:    li s11, 03081; RV32I-WITH-FP-NEXT:    #NO_APP3082; RV32I-WITH-FP-NEXT:    .cfi_def_cfa sp, 163083; RV32I-WITH-FP-NEXT:    lw ra, 12(sp) # 4-byte Folded Reload3084; RV32I-WITH-FP-NEXT:    lw s0, 8(sp) # 4-byte Folded Reload3085; RV32I-WITH-FP-NEXT:    lw s11, 4(sp) # 4-byte Folded Reload3086; RV32I-WITH-FP-NEXT:    .cfi_restore ra3087; RV32I-WITH-FP-NEXT:    .cfi_restore s03088; RV32I-WITH-FP-NEXT:    .cfi_restore s113089; RV32I-WITH-FP-NEXT:    addi sp, sp, 163090; RV32I-WITH-FP-NEXT:    .cfi_def_cfa_offset 03091; RV32I-WITH-FP-NEXT:    ret3092;3093; RV32IZCMP-LABEL: bar:3094; RV32IZCMP:       # %bb.0: # %entry3095; RV32IZCMP-NEXT:    cm.push {ra, s0-s11}, -643096; RV32IZCMP-NEXT:    .cfi_def_cfa_offset 643097; RV32IZCMP-NEXT:    .cfi_offset s11, -43098; RV32IZCMP-NEXT:    #APP3099; RV32IZCMP-NEXT:    li s11, 03100; RV32IZCMP-NEXT:    #NO_APP3101; RV32IZCMP-NEXT:    cm.popret {ra, s0-s11}, 643102;3103; RV32IZCMP-WITH-FP-LABEL: bar:3104; RV32IZCMP-WITH-FP:       # %bb.0: # %entry3105; RV32IZCMP-WITH-FP-NEXT:    addi sp, sp, -163106; RV32IZCMP-WITH-FP-NEXT:    .cfi_def_cfa_offset 163107; RV32IZCMP-WITH-FP-NEXT:    sw ra, 12(sp) # 4-byte Folded Spill3108; RV32IZCMP-WITH-FP-NEXT:    sw s0, 8(sp) # 4-byte Folded Spill3109; RV32IZCMP-WITH-FP-NEXT:    sw s11, 4(sp) # 4-byte Folded Spill3110; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset ra, -43111; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset s0, -83112; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset s11, -123113; RV32IZCMP-WITH-FP-NEXT:    addi s0, sp, 163114; RV32IZCMP-WITH-FP-NEXT:    .cfi_def_cfa s0, 03115; RV32IZCMP-WITH-FP-NEXT:    #APP3116; RV32IZCMP-WITH-FP-NEXT:    li s11, 03117; RV32IZCMP-WITH-FP-NEXT:    #NO_APP3118; RV32IZCMP-WITH-FP-NEXT:    .cfi_def_cfa sp, 163119; RV32IZCMP-WITH-FP-NEXT:    lw ra, 12(sp) # 4-byte Folded Reload3120; RV32IZCMP-WITH-FP-NEXT:    lw s0, 8(sp) # 4-byte Folded Reload3121; RV32IZCMP-WITH-FP-NEXT:    lw s11, 4(sp) # 4-byte Folded Reload3122; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore ra3123; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore s03124; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore s113125; RV32IZCMP-WITH-FP-NEXT:    addi sp, sp, 163126; RV32IZCMP-WITH-FP-NEXT:    .cfi_def_cfa_offset 03127; RV32IZCMP-WITH-FP-NEXT:    ret3128;3129; RV64I-LABEL: bar:3130; RV64I:       # %bb.0: # %entry3131; RV64I-NEXT:    addi sp, sp, -163132; RV64I-NEXT:    .cfi_def_cfa_offset 163133; RV64I-NEXT:    sd s11, 8(sp) # 8-byte Folded Spill3134; RV64I-NEXT:    .cfi_offset s11, -83135; RV64I-NEXT:    #APP3136; RV64I-NEXT:    li s11, 03137; RV64I-NEXT:    #NO_APP3138; RV64I-NEXT:    ld s11, 8(sp) # 8-byte Folded Reload3139; RV64I-NEXT:    .cfi_restore s113140; RV64I-NEXT:    addi sp, sp, 163141; RV64I-NEXT:    .cfi_def_cfa_offset 03142; RV64I-NEXT:    ret3143;3144; RV64I-LP64E-LABEL: bar:3145; RV64I-LP64E:       # %bb.0: # %entry3146; RV64I-LP64E-NEXT:    #APP3147; RV64I-LP64E-NEXT:    li s11, 03148; RV64I-LP64E-NEXT:    #NO_APP3149; RV64I-LP64E-NEXT:    ret3150;3151; RV64I-WITH-FP-LABEL: bar:3152; RV64I-WITH-FP:       # %bb.0: # %entry3153; RV64I-WITH-FP-NEXT:    addi sp, sp, -323154; RV64I-WITH-FP-NEXT:    .cfi_def_cfa_offset 323155; RV64I-WITH-FP-NEXT:    sd ra, 24(sp) # 8-byte Folded Spill3156; RV64I-WITH-FP-NEXT:    sd s0, 16(sp) # 8-byte Folded Spill3157; RV64I-WITH-FP-NEXT:    sd s11, 8(sp) # 8-byte Folded Spill3158; RV64I-WITH-FP-NEXT:    .cfi_offset ra, -83159; RV64I-WITH-FP-NEXT:    .cfi_offset s0, -163160; RV64I-WITH-FP-NEXT:    .cfi_offset s11, -243161; RV64I-WITH-FP-NEXT:    addi s0, sp, 323162; RV64I-WITH-FP-NEXT:    .cfi_def_cfa s0, 03163; RV64I-WITH-FP-NEXT:    #APP3164; RV64I-WITH-FP-NEXT:    li s11, 03165; RV64I-WITH-FP-NEXT:    #NO_APP3166; RV64I-WITH-FP-NEXT:    .cfi_def_cfa sp, 323167; RV64I-WITH-FP-NEXT:    ld ra, 24(sp) # 8-byte Folded Reload3168; RV64I-WITH-FP-NEXT:    ld s0, 16(sp) # 8-byte Folded Reload3169; RV64I-WITH-FP-NEXT:    ld s11, 8(sp) # 8-byte Folded Reload3170; RV64I-WITH-FP-NEXT:    .cfi_restore ra3171; RV64I-WITH-FP-NEXT:    .cfi_restore s03172; RV64I-WITH-FP-NEXT:    .cfi_restore s113173; RV64I-WITH-FP-NEXT:    addi sp, sp, 323174; RV64I-WITH-FP-NEXT:    .cfi_def_cfa_offset 03175; RV64I-WITH-FP-NEXT:    ret3176;3177; RV64IZCMP-LABEL: bar:3178; RV64IZCMP:       # %bb.0: # %entry3179; RV64IZCMP-NEXT:    cm.push {ra, s0-s11}, -1123180; RV64IZCMP-NEXT:    .cfi_def_cfa_offset 1123181; RV64IZCMP-NEXT:    .cfi_offset s11, -83182; RV64IZCMP-NEXT:    #APP3183; RV64IZCMP-NEXT:    li s11, 03184; RV64IZCMP-NEXT:    #NO_APP3185; RV64IZCMP-NEXT:    cm.popret {ra, s0-s11}, 1123186;3187; RV64IZCMP-WITH-FP-LABEL: bar:3188; RV64IZCMP-WITH-FP:       # %bb.0: # %entry3189; RV64IZCMP-WITH-FP-NEXT:    addi sp, sp, -323190; RV64IZCMP-WITH-FP-NEXT:    .cfi_def_cfa_offset 323191; RV64IZCMP-WITH-FP-NEXT:    sd ra, 24(sp) # 8-byte Folded Spill3192; RV64IZCMP-WITH-FP-NEXT:    sd s0, 16(sp) # 8-byte Folded Spill3193; RV64IZCMP-WITH-FP-NEXT:    sd s11, 8(sp) # 8-byte Folded Spill3194; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset ra, -83195; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset s0, -163196; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset s11, -243197; RV64IZCMP-WITH-FP-NEXT:    addi s0, sp, 323198; RV64IZCMP-WITH-FP-NEXT:    .cfi_def_cfa s0, 03199; RV64IZCMP-WITH-FP-NEXT:    #APP3200; RV64IZCMP-WITH-FP-NEXT:    li s11, 03201; RV64IZCMP-WITH-FP-NEXT:    #NO_APP3202; RV64IZCMP-WITH-FP-NEXT:    .cfi_def_cfa sp, 323203; RV64IZCMP-WITH-FP-NEXT:    ld ra, 24(sp) # 8-byte Folded Reload3204; RV64IZCMP-WITH-FP-NEXT:    ld s0, 16(sp) # 8-byte Folded Reload3205; RV64IZCMP-WITH-FP-NEXT:    ld s11, 8(sp) # 8-byte Folded Reload3206; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore ra3207; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore s03208; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore s113209; RV64IZCMP-WITH-FP-NEXT:    addi sp, sp, 323210; RV64IZCMP-WITH-FP-NEXT:    .cfi_def_cfa_offset 03211; RV64IZCMP-WITH-FP-NEXT:    ret3212entry:3213  tail call void asm sideeffect "li s11, 0", "~{s11}"()3214  ret void3215}3216 3217define void @varargs(...) {3218; RV32I-LABEL: varargs:3219; RV32I:       # %bb.0:3220; RV32I-NEXT:    addi sp, sp, -483221; RV32I-NEXT:    .cfi_def_cfa_offset 483222; RV32I-NEXT:    sw ra, 12(sp) # 4-byte Folded Spill3223; RV32I-NEXT:    .cfi_offset ra, -363224; RV32I-NEXT:    sw a4, 32(sp)3225; RV32I-NEXT:    sw a5, 36(sp)3226; RV32I-NEXT:    sw a6, 40(sp)3227; RV32I-NEXT:    sw a7, 44(sp)3228; RV32I-NEXT:    sw a0, 16(sp)3229; RV32I-NEXT:    sw a1, 20(sp)3230; RV32I-NEXT:    sw a2, 24(sp)3231; RV32I-NEXT:    sw a3, 28(sp)3232; RV32I-NEXT:    call callee3233; RV32I-NEXT:    lw ra, 12(sp) # 4-byte Folded Reload3234; RV32I-NEXT:    .cfi_restore ra3235; RV32I-NEXT:    addi sp, sp, 483236; RV32I-NEXT:    .cfi_def_cfa_offset 03237; RV32I-NEXT:    ret3238;3239; RV32I-ILP32E-LABEL: varargs:3240; RV32I-ILP32E:       # %bb.0:3241; RV32I-ILP32E-NEXT:    addi sp, sp, -283242; RV32I-ILP32E-NEXT:    .cfi_def_cfa_offset 283243; RV32I-ILP32E-NEXT:    sw ra, 0(sp) # 4-byte Folded Spill3244; RV32I-ILP32E-NEXT:    .cfi_offset ra, -283245; RV32I-ILP32E-NEXT:    sw a4, 20(sp)3246; RV32I-ILP32E-NEXT:    sw a5, 24(sp)3247; RV32I-ILP32E-NEXT:    sw a0, 4(sp)3248; RV32I-ILP32E-NEXT:    sw a1, 8(sp)3249; RV32I-ILP32E-NEXT:    sw a2, 12(sp)3250; RV32I-ILP32E-NEXT:    sw a3, 16(sp)3251; RV32I-ILP32E-NEXT:    call callee3252; RV32I-ILP32E-NEXT:    lw ra, 0(sp) # 4-byte Folded Reload3253; RV32I-ILP32E-NEXT:    .cfi_restore ra3254; RV32I-ILP32E-NEXT:    addi sp, sp, 283255; RV32I-ILP32E-NEXT:    .cfi_def_cfa_offset 03256; RV32I-ILP32E-NEXT:    ret3257;3258; RV32I-WITH-FP-LABEL: varargs:3259; RV32I-WITH-FP:       # %bb.0:3260; RV32I-WITH-FP-NEXT:    addi sp, sp, -483261; RV32I-WITH-FP-NEXT:    .cfi_def_cfa_offset 483262; RV32I-WITH-FP-NEXT:    sw ra, 12(sp) # 4-byte Folded Spill3263; RV32I-WITH-FP-NEXT:    sw s0, 8(sp) # 4-byte Folded Spill3264; RV32I-WITH-FP-NEXT:    .cfi_offset ra, -363265; RV32I-WITH-FP-NEXT:    .cfi_offset s0, -403266; RV32I-WITH-FP-NEXT:    addi s0, sp, 163267; RV32I-WITH-FP-NEXT:    .cfi_def_cfa s0, 323268; RV32I-WITH-FP-NEXT:    sw a4, 16(s0)3269; RV32I-WITH-FP-NEXT:    sw a5, 20(s0)3270; RV32I-WITH-FP-NEXT:    sw a6, 24(s0)3271; RV32I-WITH-FP-NEXT:    sw a7, 28(s0)3272; RV32I-WITH-FP-NEXT:    sw a0, 0(s0)3273; RV32I-WITH-FP-NEXT:    sw a1, 4(s0)3274; RV32I-WITH-FP-NEXT:    sw a2, 8(s0)3275; RV32I-WITH-FP-NEXT:    sw a3, 12(s0)3276; RV32I-WITH-FP-NEXT:    call callee3277; RV32I-WITH-FP-NEXT:    .cfi_def_cfa sp, 483278; RV32I-WITH-FP-NEXT:    lw ra, 12(sp) # 4-byte Folded Reload3279; RV32I-WITH-FP-NEXT:    lw s0, 8(sp) # 4-byte Folded Reload3280; RV32I-WITH-FP-NEXT:    .cfi_restore ra3281; RV32I-WITH-FP-NEXT:    .cfi_restore s03282; RV32I-WITH-FP-NEXT:    addi sp, sp, 483283; RV32I-WITH-FP-NEXT:    .cfi_def_cfa_offset 03284; RV32I-WITH-FP-NEXT:    ret3285;3286; RV32IZCMP-LABEL: varargs:3287; RV32IZCMP:       # %bb.0:3288; RV32IZCMP-NEXT:    addi sp, sp, -483289; RV32IZCMP-NEXT:    .cfi_def_cfa_offset 483290; RV32IZCMP-NEXT:    sw ra, 12(sp) # 4-byte Folded Spill3291; RV32IZCMP-NEXT:    .cfi_offset ra, -363292; RV32IZCMP-NEXT:    sw a4, 32(sp)3293; RV32IZCMP-NEXT:    sw a5, 36(sp)3294; RV32IZCMP-NEXT:    sw a6, 40(sp)3295; RV32IZCMP-NEXT:    sw a7, 44(sp)3296; RV32IZCMP-NEXT:    sw a0, 16(sp)3297; RV32IZCMP-NEXT:    sw a1, 20(sp)3298; RV32IZCMP-NEXT:    sw a2, 24(sp)3299; RV32IZCMP-NEXT:    sw a3, 28(sp)3300; RV32IZCMP-NEXT:    call callee3301; RV32IZCMP-NEXT:    lw ra, 12(sp) # 4-byte Folded Reload3302; RV32IZCMP-NEXT:    .cfi_restore ra3303; RV32IZCMP-NEXT:    addi sp, sp, 483304; RV32IZCMP-NEXT:    .cfi_def_cfa_offset 03305; RV32IZCMP-NEXT:    ret3306;3307; RV32IZCMP-WITH-FP-LABEL: varargs:3308; RV32IZCMP-WITH-FP:       # %bb.0:3309; RV32IZCMP-WITH-FP-NEXT:    addi sp, sp, -483310; RV32IZCMP-WITH-FP-NEXT:    .cfi_def_cfa_offset 483311; RV32IZCMP-WITH-FP-NEXT:    sw ra, 12(sp) # 4-byte Folded Spill3312; RV32IZCMP-WITH-FP-NEXT:    sw s0, 8(sp) # 4-byte Folded Spill3313; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset ra, -363314; RV32IZCMP-WITH-FP-NEXT:    .cfi_offset s0, -403315; RV32IZCMP-WITH-FP-NEXT:    addi s0, sp, 163316; RV32IZCMP-WITH-FP-NEXT:    .cfi_def_cfa s0, 323317; RV32IZCMP-WITH-FP-NEXT:    sw a4, 16(s0)3318; RV32IZCMP-WITH-FP-NEXT:    sw a5, 20(s0)3319; RV32IZCMP-WITH-FP-NEXT:    sw a6, 24(s0)3320; RV32IZCMP-WITH-FP-NEXT:    sw a7, 28(s0)3321; RV32IZCMP-WITH-FP-NEXT:    sw a0, 0(s0)3322; RV32IZCMP-WITH-FP-NEXT:    sw a1, 4(s0)3323; RV32IZCMP-WITH-FP-NEXT:    sw a2, 8(s0)3324; RV32IZCMP-WITH-FP-NEXT:    sw a3, 12(s0)3325; RV32IZCMP-WITH-FP-NEXT:    call callee3326; RV32IZCMP-WITH-FP-NEXT:    .cfi_def_cfa sp, 483327; RV32IZCMP-WITH-FP-NEXT:    lw ra, 12(sp) # 4-byte Folded Reload3328; RV32IZCMP-WITH-FP-NEXT:    lw s0, 8(sp) # 4-byte Folded Reload3329; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore ra3330; RV32IZCMP-WITH-FP-NEXT:    .cfi_restore s03331; RV32IZCMP-WITH-FP-NEXT:    addi sp, sp, 483332; RV32IZCMP-WITH-FP-NEXT:    .cfi_def_cfa_offset 03333; RV32IZCMP-WITH-FP-NEXT:    ret3334;3335; RV64I-LABEL: varargs:3336; RV64I:       # %bb.0:3337; RV64I-NEXT:    addi sp, sp, -803338; RV64I-NEXT:    .cfi_def_cfa_offset 803339; RV64I-NEXT:    sd ra, 8(sp) # 8-byte Folded Spill3340; RV64I-NEXT:    .cfi_offset ra, -723341; RV64I-NEXT:    sd a4, 48(sp)3342; RV64I-NEXT:    sd a5, 56(sp)3343; RV64I-NEXT:    sd a6, 64(sp)3344; RV64I-NEXT:    sd a7, 72(sp)3345; RV64I-NEXT:    sd a0, 16(sp)3346; RV64I-NEXT:    sd a1, 24(sp)3347; RV64I-NEXT:    sd a2, 32(sp)3348; RV64I-NEXT:    sd a3, 40(sp)3349; RV64I-NEXT:    call callee3350; RV64I-NEXT:    ld ra, 8(sp) # 8-byte Folded Reload3351; RV64I-NEXT:    .cfi_restore ra3352; RV64I-NEXT:    addi sp, sp, 803353; RV64I-NEXT:    .cfi_def_cfa_offset 03354; RV64I-NEXT:    ret3355;3356; RV64I-LP64E-LABEL: varargs:3357; RV64I-LP64E:       # %bb.0:3358; RV64I-LP64E-NEXT:    addi sp, sp, -563359; RV64I-LP64E-NEXT:    .cfi_def_cfa_offset 563360; RV64I-LP64E-NEXT:    sd ra, 0(sp) # 8-byte Folded Spill3361; RV64I-LP64E-NEXT:    .cfi_offset ra, -563362; RV64I-LP64E-NEXT:    sd a4, 40(sp)3363; RV64I-LP64E-NEXT:    sd a5, 48(sp)3364; RV64I-LP64E-NEXT:    sd a0, 8(sp)3365; RV64I-LP64E-NEXT:    sd a1, 16(sp)3366; RV64I-LP64E-NEXT:    sd a2, 24(sp)3367; RV64I-LP64E-NEXT:    sd a3, 32(sp)3368; RV64I-LP64E-NEXT:    call callee3369; RV64I-LP64E-NEXT:    ld ra, 0(sp) # 8-byte Folded Reload3370; RV64I-LP64E-NEXT:    .cfi_restore ra3371; RV64I-LP64E-NEXT:    addi sp, sp, 563372; RV64I-LP64E-NEXT:    .cfi_def_cfa_offset 03373; RV64I-LP64E-NEXT:    ret3374;3375; RV64I-WITH-FP-LABEL: varargs:3376; RV64I-WITH-FP:       # %bb.0:3377; RV64I-WITH-FP-NEXT:    addi sp, sp, -803378; RV64I-WITH-FP-NEXT:    .cfi_def_cfa_offset 803379; RV64I-WITH-FP-NEXT:    sd ra, 8(sp) # 8-byte Folded Spill3380; RV64I-WITH-FP-NEXT:    sd s0, 0(sp) # 8-byte Folded Spill3381; RV64I-WITH-FP-NEXT:    .cfi_offset ra, -723382; RV64I-WITH-FP-NEXT:    .cfi_offset s0, -803383; RV64I-WITH-FP-NEXT:    addi s0, sp, 163384; RV64I-WITH-FP-NEXT:    .cfi_def_cfa s0, 643385; RV64I-WITH-FP-NEXT:    sd a4, 32(s0)3386; RV64I-WITH-FP-NEXT:    sd a5, 40(s0)3387; RV64I-WITH-FP-NEXT:    sd a6, 48(s0)3388; RV64I-WITH-FP-NEXT:    sd a7, 56(s0)3389; RV64I-WITH-FP-NEXT:    sd a0, 0(s0)3390; RV64I-WITH-FP-NEXT:    sd a1, 8(s0)3391; RV64I-WITH-FP-NEXT:    sd a2, 16(s0)3392; RV64I-WITH-FP-NEXT:    sd a3, 24(s0)3393; RV64I-WITH-FP-NEXT:    call callee3394; RV64I-WITH-FP-NEXT:    .cfi_def_cfa sp, 803395; RV64I-WITH-FP-NEXT:    ld ra, 8(sp) # 8-byte Folded Reload3396; RV64I-WITH-FP-NEXT:    ld s0, 0(sp) # 8-byte Folded Reload3397; RV64I-WITH-FP-NEXT:    .cfi_restore ra3398; RV64I-WITH-FP-NEXT:    .cfi_restore s03399; RV64I-WITH-FP-NEXT:    addi sp, sp, 803400; RV64I-WITH-FP-NEXT:    .cfi_def_cfa_offset 03401; RV64I-WITH-FP-NEXT:    ret3402;3403; RV64IZCMP-LABEL: varargs:3404; RV64IZCMP:       # %bb.0:3405; RV64IZCMP-NEXT:    addi sp, sp, -803406; RV64IZCMP-NEXT:    .cfi_def_cfa_offset 803407; RV64IZCMP-NEXT:    sd ra, 8(sp) # 8-byte Folded Spill3408; RV64IZCMP-NEXT:    .cfi_offset ra, -723409; RV64IZCMP-NEXT:    sd a4, 48(sp)3410; RV64IZCMP-NEXT:    sd a5, 56(sp)3411; RV64IZCMP-NEXT:    sd a6, 64(sp)3412; RV64IZCMP-NEXT:    sd a7, 72(sp)3413; RV64IZCMP-NEXT:    sd a0, 16(sp)3414; RV64IZCMP-NEXT:    sd a1, 24(sp)3415; RV64IZCMP-NEXT:    sd a2, 32(sp)3416; RV64IZCMP-NEXT:    sd a3, 40(sp)3417; RV64IZCMP-NEXT:    call callee3418; RV64IZCMP-NEXT:    ld ra, 8(sp) # 8-byte Folded Reload3419; RV64IZCMP-NEXT:    .cfi_restore ra3420; RV64IZCMP-NEXT:    addi sp, sp, 803421; RV64IZCMP-NEXT:    .cfi_def_cfa_offset 03422; RV64IZCMP-NEXT:    ret3423;3424; RV64IZCMP-WITH-FP-LABEL: varargs:3425; RV64IZCMP-WITH-FP:       # %bb.0:3426; RV64IZCMP-WITH-FP-NEXT:    addi sp, sp, -803427; RV64IZCMP-WITH-FP-NEXT:    .cfi_def_cfa_offset 803428; RV64IZCMP-WITH-FP-NEXT:    sd ra, 8(sp) # 8-byte Folded Spill3429; RV64IZCMP-WITH-FP-NEXT:    sd s0, 0(sp) # 8-byte Folded Spill3430; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset ra, -723431; RV64IZCMP-WITH-FP-NEXT:    .cfi_offset s0, -803432; RV64IZCMP-WITH-FP-NEXT:    addi s0, sp, 163433; RV64IZCMP-WITH-FP-NEXT:    .cfi_def_cfa s0, 643434; RV64IZCMP-WITH-FP-NEXT:    sd a4, 32(s0)3435; RV64IZCMP-WITH-FP-NEXT:    sd a5, 40(s0)3436; RV64IZCMP-WITH-FP-NEXT:    sd a6, 48(s0)3437; RV64IZCMP-WITH-FP-NEXT:    sd a7, 56(s0)3438; RV64IZCMP-WITH-FP-NEXT:    sd a0, 0(s0)3439; RV64IZCMP-WITH-FP-NEXT:    sd a1, 8(s0)3440; RV64IZCMP-WITH-FP-NEXT:    sd a2, 16(s0)3441; RV64IZCMP-WITH-FP-NEXT:    sd a3, 24(s0)3442; RV64IZCMP-WITH-FP-NEXT:    call callee3443; RV64IZCMP-WITH-FP-NEXT:    .cfi_def_cfa sp, 803444; RV64IZCMP-WITH-FP-NEXT:    ld ra, 8(sp) # 8-byte Folded Reload3445; RV64IZCMP-WITH-FP-NEXT:    ld s0, 0(sp) # 8-byte Folded Reload3446; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore ra3447; RV64IZCMP-WITH-FP-NEXT:    .cfi_restore s03448; RV64IZCMP-WITH-FP-NEXT:    addi sp, sp, 803449; RV64IZCMP-WITH-FP-NEXT:    .cfi_def_cfa_offset 03450; RV64IZCMP-WITH-FP-NEXT:    ret3451  call void @callee()3452  ret void3453}3454