[llvm] d2ac89b - [LoongArch] Support fastcc and treat it as ccc
Weining Lu via llvm-commits
llvm-commits at lists.llvm.org
Sun Sep 25 19:17:24 PDT 2022
Author: WANG Xuerui
Date: 2022-09-26T10:15:00+08:00
New Revision: d2ac89b64e2a324e545b6484a9e25ff848f4df67
URL: https://github.com/llvm/llvm-project/commit/d2ac89b64e2a324e545b6484a9e25ff848f4df67
DIFF: https://github.com/llvm/llvm-project/commit/d2ac89b64e2a324e545b6484a9e25ff848f4df67.diff
LOG: [LoongArch] Support fastcc and treat it as ccc
As explained in D68559 the `fastcc` calling convention may be requested
under certain conditions, hence the need for supporting it. But unlike
RISCV we actually treat it exactly like ccc, without actually inventing
any performance hack right here. And CSKY does the same thing.
This is going to fix a few more test cases with native LoongArch builds.
Differential Revision: https://reviews.llvm.org/D134443
Added:
Modified:
llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
Removed:
################################################################################
diff --git a/llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp b/llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
index a13ac47b14c1..314765dcdccc 100644
--- a/llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
+++ b/llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
@@ -1380,6 +1380,7 @@ SDValue LoongArchTargetLowering::LowerFormalArguments(
default:
llvm_unreachable("Unsupported calling convention");
case CallingConv::C:
+ case CallingConv::Fast:
break;
}
More information about the llvm-commits
mailing list