[VE] Optimize leaf functions
authorKazushi (Jam) Marukawa <marukawa@nec.com>
Sun, 15 Nov 2020 01:08:10 +0000 (10:08 +0900)
committerKazushi (Jam) Marukawa <marukawa@nec.com>
Mon, 16 Nov 2020 15:38:01 +0000 (00:38 +0900)
commit44a4f9392546649f7d6247af1b816aa1f346dee0
tree1f79bc5ac9c753e9fed2c20cd2377b981684078b
parent843525075b87b367f3d18754ef0a3e35dc2ed162
[VE] Optimize leaf functions

Optimize leaf functions by not generating save/restore for callee saved
registers.  Update regression tests also.

Reviewed By: simoll

Differential Revision: https://reviews.llvm.org/D91539
99 files changed:
llvm/lib/Target/VE/VEFrameLowering.cpp
llvm/lib/Target/VE/VEFrameLowering.h
llvm/test/CodeGen/VE/Scalar/addition.ll
llvm/test/CodeGen/VE/Scalar/and.ll
llvm/test/CodeGen/VE/Scalar/atomic_fence.ll
llvm/test/CodeGen/VE/Scalar/atomic_load.ll
llvm/test/CodeGen/VE/Scalar/atomic_store.ll
llvm/test/CodeGen/VE/Scalar/bitcast.ll
llvm/test/CodeGen/VE/Scalar/bitreverse.ll
llvm/test/CodeGen/VE/Scalar/blockaddress.ll
llvm/test/CodeGen/VE/Scalar/br_cc.ll
llvm/test/CodeGen/VE/Scalar/br_jt.ll
llvm/test/CodeGen/VE/Scalar/brcond.ll
llvm/test/CodeGen/VE/Scalar/brind.ll
llvm/test/CodeGen/VE/Scalar/bswap.ll
llvm/test/CodeGen/VE/Scalar/callstruct.ll
llvm/test/CodeGen/VE/Scalar/cast.ll
llvm/test/CodeGen/VE/Scalar/constants.ll
llvm/test/CodeGen/VE/Scalar/ctlz.ll
llvm/test/CodeGen/VE/Scalar/ctpop.ll
llvm/test/CodeGen/VE/Scalar/cttz.ll
llvm/test/CodeGen/VE/Scalar/div.ll
llvm/test/CodeGen/VE/Scalar/fabs.ll
llvm/test/CodeGen/VE/Scalar/fcopysign.ll
llvm/test/CodeGen/VE/Scalar/fcos.ll
llvm/test/CodeGen/VE/Scalar/fp_add.ll
llvm/test/CodeGen/VE/Scalar/fp_div.ll
llvm/test/CodeGen/VE/Scalar/fp_extload_truncstore.ll
llvm/test/CodeGen/VE/Scalar/fp_fneg.ll
llvm/test/CodeGen/VE/Scalar/fp_mul.ll
llvm/test/CodeGen/VE/Scalar/fp_sub.ll
llvm/test/CodeGen/VE/Scalar/fp_to_int.ll
llvm/test/CodeGen/VE/Scalar/fsin.ll
llvm/test/CodeGen/VE/Scalar/fsqrt.ll
llvm/test/CodeGen/VE/Scalar/function_prologue_epilogue.ll [new file with mode: 0644]
llvm/test/CodeGen/VE/Scalar/inlineasm-lea.ll
llvm/test/CodeGen/VE/Scalar/inlineasm-vldvst.ll
llvm/test/CodeGen/VE/Scalar/int_to_fp.ll
llvm/test/CodeGen/VE/Scalar/left_shift.ll
llvm/test/CodeGen/VE/Scalar/load-align1.ll
llvm/test/CodeGen/VE/Scalar/load-align2.ll
llvm/test/CodeGen/VE/Scalar/load-align4.ll
llvm/test/CodeGen/VE/Scalar/load-align8.ll
llvm/test/CodeGen/VE/Scalar/load.ll
llvm/test/CodeGen/VE/Scalar/load_gv.ll
llvm/test/CodeGen/VE/Scalar/load_off.ll
llvm/test/CodeGen/VE/Scalar/loadrri.ll
llvm/test/CodeGen/VE/Scalar/max.ll
llvm/test/CodeGen/VE/Scalar/min.ll
llvm/test/CodeGen/VE/Scalar/multiply.ll
llvm/test/CodeGen/VE/Scalar/nnd.ll
llvm/test/CodeGen/VE/Scalar/or.ll
llvm/test/CodeGen/VE/Scalar/rem.ll
llvm/test/CodeGen/VE/Scalar/right_shift.ll
llvm/test/CodeGen/VE/Scalar/rotl.ll
llvm/test/CodeGen/VE/Scalar/rotr.ll
llvm/test/CodeGen/VE/Scalar/select.ll
llvm/test/CodeGen/VE/Scalar/select_cc.ll
llvm/test/CodeGen/VE/Scalar/selectccf32.ll
llvm/test/CodeGen/VE/Scalar/selectccf32c.ll
llvm/test/CodeGen/VE/Scalar/selectccf32i.ll
llvm/test/CodeGen/VE/Scalar/selectccf64.ll
llvm/test/CodeGen/VE/Scalar/selectccf64c.ll
llvm/test/CodeGen/VE/Scalar/selectccf64i.ll
llvm/test/CodeGen/VE/Scalar/selectcci32.ll
llvm/test/CodeGen/VE/Scalar/selectcci32c.ll
llvm/test/CodeGen/VE/Scalar/selectcci32i.ll
llvm/test/CodeGen/VE/Scalar/selectcci64.ll
llvm/test/CodeGen/VE/Scalar/selectcci64c.ll
llvm/test/CodeGen/VE/Scalar/selectcci64i.ll
llvm/test/CodeGen/VE/Scalar/setcc.ll
llvm/test/CodeGen/VE/Scalar/setccf32.ll
llvm/test/CodeGen/VE/Scalar/setccf32i.ll
llvm/test/CodeGen/VE/Scalar/setccf64.ll
llvm/test/CodeGen/VE/Scalar/setccf64i.ll
llvm/test/CodeGen/VE/Scalar/setcci32.ll
llvm/test/CodeGen/VE/Scalar/setcci32i.ll
llvm/test/CodeGen/VE/Scalar/setcci64.ll
llvm/test/CodeGen/VE/Scalar/setcci64i.ll
llvm/test/CodeGen/VE/Scalar/shl.ll
llvm/test/CodeGen/VE/Scalar/shr.ll
llvm/test/CodeGen/VE/Scalar/simple_prologue_epilogue.ll [deleted file]
llvm/test/CodeGen/VE/Scalar/store-align1.ll
llvm/test/CodeGen/VE/Scalar/store-align2.ll
llvm/test/CodeGen/VE/Scalar/store-align4.ll
llvm/test/CodeGen/VE/Scalar/store-align8.ll
llvm/test/CodeGen/VE/Scalar/store.ll
llvm/test/CodeGen/VE/Scalar/store_gv.ll
llvm/test/CodeGen/VE/Scalar/subtraction.ll
llvm/test/CodeGen/VE/Scalar/symbol_relocation_tls.ll
llvm/test/CodeGen/VE/Scalar/tls.ll
llvm/test/CodeGen/VE/Scalar/truncstore.ll
llvm/test/CodeGen/VE/Scalar/xor.ll
llvm/test/CodeGen/VE/VELIntrinsics/lsv.ll
llvm/test/CodeGen/VE/VELIntrinsics/lvlgen.ll
llvm/test/CodeGen/VE/VELIntrinsics/pfchv.ll
llvm/test/CodeGen/VE/VELIntrinsics/vld.ll
llvm/test/CodeGen/VE/VELIntrinsics/vst.ll
llvm/test/CodeGen/VE/Vector/fastcc_callee.ll