[llvm] r181121 - AArch64: assert code model is small for TLS accesses

Tim Northover Tim.Northover at arm.com
Sat May 4 09:54:12 PDT 2013


Author: tnorthover
Date: Sat May  4 11:54:11 2013
New Revision: 181121

URL: http://llvm.org/viewvc/llvm-project?rev=181121&view=rev
Log:
AArch64: assert code model is small for TLS accesses

Supporting TLS in the large memory model is rather difficult at the
moment, so make sure no-one gets into difficulties by mistake.

Modified:
    llvm/trunk/lib/Target/AArch64/AArch64ISelLowering.cpp

Modified: llvm/trunk/lib/Target/AArch64/AArch64ISelLowering.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/AArch64/AArch64ISelLowering.cpp?rev=181121&r1=181120&r2=181121&view=diff
==============================================================================
--- llvm/trunk/lib/Target/AArch64/AArch64ISelLowering.cpp (original)
+++ llvm/trunk/lib/Target/AArch64/AArch64ISelLowering.cpp Sat May  4 11:54:11 2013
@@ -2025,6 +2025,8 @@ AArch64TargetLowering::LowerGlobalTLSAdd
                                              SelectionDAG &DAG) const {
   assert(Subtarget->isTargetELF() &&
          "TLS not implemented for non-ELF targets");
+  assert(getTargetMachine().getCodeModel() == CodeModel::Small
+         && "TLS only supported in small memory model");
   const GlobalAddressSDNode *GA = cast<GlobalAddressSDNode>(Op);
 
   TLSModel::Model Model = getTargetMachine().getTLSModel(GA->getGlobal());





More information about the llvm-commits mailing list