zturner created this revision.
zturner added a reviewer: gkistanova.
zturner added a subscriber: lldb-commits.
x86 builds of libclang.dll are failing with out of memory errors (Example: 
http://lab.llvm.org:8011/builders/lldb-x86-windows-msvc/builds/14604).  This 
patch is a global change against every MSVC build running on zorg to use the 
x64 -> x86 cross compilation toolchain when the target is x86, so that the 
linker will never run out of memory.

This amd64_x86 toolchain was introduced in VS2013 so it's guaranteed to be 
present on all versions of MSVC that we support.

http://reviews.llvm.org/D16477

Files:
  zorg/buildbot/builders/Util.py

Index: zorg/buildbot/builders/Util.py
===================================================================
--- zorg/buildbot/builders/Util.py
+++ zorg/buildbot/builders/Util.py
@@ -1,7 +1,9 @@
 import buildbot.status.results
 
 def getVisualStudioEnvironment(vs=r"""%VS120COMNTOOLS%""", target_arch=None):
-    arch_arg = {'x86': 'x86', 'x64': 'amd64', 'amd64': 
'amd64'}.get(target_arch, '%PROCESSOR_ARCHITECTURE%')
+    # x86 builds should use the 64 bit -> x86 cross compilation toolchain to 
avoid
+    # out of memory linker errors
+    arch_arg = {'x86': 'amd64_x86', 'x64': 'amd64', 'amd64': 
'amd64'}.get(target_arch, '%PROCESSOR_ARCHITECTURE%')
     vcvars_command = "\"" + "\\".join((vs, '..','..','VC', 'vcvarsall.bat')) + 
"\""
     vcvars_command = "%s %s && set" % (vcvars_command, arch_arg)
     return vcvars_command


Index: zorg/buildbot/builders/Util.py
===================================================================
--- zorg/buildbot/builders/Util.py
+++ zorg/buildbot/builders/Util.py
@@ -1,7 +1,9 @@
 import buildbot.status.results
 
 def getVisualStudioEnvironment(vs=r"""%VS120COMNTOOLS%""", target_arch=None):
-    arch_arg = {'x86': 'x86', 'x64': 'amd64', 'amd64': 'amd64'}.get(target_arch, '%PROCESSOR_ARCHITECTURE%')
+    # x86 builds should use the 64 bit -> x86 cross compilation toolchain to avoid
+    # out of memory linker errors
+    arch_arg = {'x86': 'amd64_x86', 'x64': 'amd64', 'amd64': 'amd64'}.get(target_arch, '%PROCESSOR_ARCHITECTURE%')
     vcvars_command = "\"" + "\\".join((vs, '..','..','VC', 'vcvarsall.bat')) + "\""
     vcvars_command = "%s %s && set" % (vcvars_command, arch_arg)
     return vcvars_command
_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to