ports/devel/clang-tools-extra/patches/patch-lib_Target_RISCV_RISCVISelLowering_cpp

16 lines
649 B
Text

- enable EmuTLS on RiscV.
Index: lib/Target/RISCV/RISCVISelLowering.cpp
--- lib/Target/RISCV/RISCVISelLowering.cpp.orig
+++ lib/Target/RISCV/RISCVISelLowering.cpp
@@ -2847,6 +2847,10 @@ SDValue RISCVTargetLowering::getDynamicTLSAddr(GlobalA
SDValue RISCVTargetLowering::lowerGlobalTLSAddress(SDValue Op,
SelectionDAG &DAG) const {
+ const GlobalAddressSDNode *GA = cast<GlobalAddressSDNode>(Op);
+ if (DAG.getTarget().useEmulatedTLS())
+ return LowerToTLSEmulatedModel(GA, DAG);
+
SDLoc DL(Op);
EVT Ty = Op.getValueType();
GlobalAddressSDNode *N = cast<GlobalAddressSDNode>(Op);