[llvm-commits] [llvm-gcc-4.2] r65599 - in /llvm-gcc-4.2/trunk/gcc: config/darwin.h llvm-convert.cpp

Stuart Hastings stuart at apple.com
Thu Feb 26 16:50:45 PST 2009


Author: stuart
Date: Thu Feb 26 18:50:45 2009
New Revision: 65599

URL: http://llvm.org/viewvc/llvm-project?rev=65599&view=rev
Log:
Try, again, to send STRING_CSTs to the cstring section.  This is a
followup to r65490.  Darwin-specific.

Modified:
    llvm-gcc-4.2/trunk/gcc/config/darwin.h
    llvm-gcc-4.2/trunk/gcc/llvm-convert.cpp

Modified: llvm-gcc-4.2/trunk/gcc/config/darwin.h
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/config/darwin.h?rev=65599&r1=65598&r2=65599&view=diff

==============================================================================
--- llvm-gcc-4.2/trunk/gcc/config/darwin.h (original)
+++ llvm-gcc-4.2/trunk/gcc/config/darwin.h Thu Feb 26 18:50:45 2009
@@ -689,6 +689,8 @@
   } while (0)
 /* LLVM LOCAL - end radar 6389998 */
 
+/* Assign STRING_CSTs to the .cstring section.  */
+#define LLVM_DARWIN_CSTRING_SECTION "__TEXT,__cstring,cstring_literals"
 #endif
 /* LLVM LOCAL end */
 

Modified: llvm-gcc-4.2/trunk/gcc/llvm-convert.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/llvm-convert.cpp?rev=65599&r1=65598&r2=65599&view=diff

==============================================================================
--- llvm-gcc-4.2/trunk/gcc/llvm-convert.cpp (original)
+++ llvm-gcc-4.2/trunk/gcc/llvm-convert.cpp Thu Feb 26 18:50:45 2009
@@ -7181,6 +7181,11 @@
                                             TAI->getStringConstantPrefix() : 
                                             ".str", TheModule);
   if (SlotP) *SlotP = GV;
+#ifdef LLVM_DARWIN_CSTRING_SECTION
+  // For Darwin, try to put it into the .cstring section.
+  if (TAI && TAI->SectionKindForGlobal(GV) == SectionKind::RODataMergeStr)
+    GV->setSection(LLVM_DARWIN_CSTRING_SECTION);
+#endif
   return GV;
 }
 





More information about the llvm-commits mailing list