diff options
author | Bill Wendling <isanbard@gmail.com> | 2011-03-25 06:26:58 +0000 |
---|---|---|
committer | Bill Wendling <isanbard@gmail.com> | 2011-03-25 06:26:58 +0000 |
commit | 57b349390bff70ed8ac8f06fe19b0bfd6c0f4a5b (patch) | |
tree | 13a4c1e0247f253be62f9796bd1e17fda4c46cf9 | |
parent | 3844109d1e9d338ee124d7925817d78d456fc92f (diff) |
--- Merging r127239 into '.':
U test/Makefile
U Makefile.rules
--- Merging r127240 into '.':
U utils/llvm-lit/Makefile
--- Merging r127726 into '.':
U lib/Support/raw_ostream.cpp
--- Merging r127730 into '.':
U test/CodeGen/X86/dyn-stackalloc.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_29@128259 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | Makefile.rules | 18 | ||||
-rw-r--r-- | lib/Support/raw_ostream.cpp | 8 | ||||
-rw-r--r-- | test/CodeGen/X86/dyn-stackalloc.ll | 9 | ||||
-rw-r--r-- | test/Makefile | 34 | ||||
-rw-r--r-- | utils/llvm-lit/Makefile | 9 |
5 files changed, 55 insertions, 23 deletions
diff --git a/Makefile.rules b/Makefile.rules index 00b3eb31ab..5fc77a5e51 100644 --- a/Makefile.rules +++ b/Makefile.rules @@ -719,6 +719,24 @@ BaseNameSources := $(sort $(basename $(Sources))) ObjectsO := $(BaseNameSources:%=$(ObjDir)/%.o) ObjectsBC := $(BaseNameSources:%=$(ObjDir)/%.bc) +#---------------------------------------------------------- +# For Mingw MSYS bash and Python/w32: +# +# $(ECHOPATH) prints DOSish pathstring. +# ex) $(ECHOPATH) /include/sys/types.h +# --> C:/mingw/include/sys/types.h +# built-in "echo" does not transform path to DOSish path. +# +# FIXME: It would not be needed when MSYS's python +# were provided. +#---------------------------------------------------------- + +ifeq (-mingw32,$(findstring -mingw32,$(BUILD_TRIPLE))) + ECHOPATH := $(Verb)python -u -c "import sys;print ' '.join(sys.argv[1:])" +else + ECHOPATH := $(Verb)$(ECHO) +endif + ############################################################################### # DIRECTORIES: Handle recursive descent of directory structure ############################################################################### diff --git a/lib/Support/raw_ostream.cpp b/lib/Support/raw_ostream.cpp index d9fb406e5f..5a71fa3d8c 100644 --- a/lib/Support/raw_ostream.cpp +++ b/lib/Support/raw_ostream.cpp @@ -496,6 +496,14 @@ raw_fd_ostream::~raw_fd_ostream() { } } +#ifdef __MINGW32__ + // On mingw, global dtors should not call exit(). + // report_fatal_error() invokes exit(). We know report_fatal_error() + // might not write messages to stderr when any errors were detected + // on FD == 2. + if (FD == 2) return; +#endif + // If there are any pending errors, report them now. Clients wishing // to avoid report_fatal_error calls should check for errors with // has_error() and clear the error flag with clear_error() before diff --git a/test/CodeGen/X86/dyn-stackalloc.ll b/test/CodeGen/X86/dyn-stackalloc.ll index e577611ebc..7b0fe18f65 100644 --- a/test/CodeGen/X86/dyn-stackalloc.ll +++ b/test/CodeGen/X86/dyn-stackalloc.ll @@ -1,6 +1,9 @@ -; RUN: llc < %s -mtriple=i686-linux | not egrep {\\\$4294967289|-7} -; RUN: llc < %s -mtriple=i686-linux | egrep {\\\$4294967280|-16} -; RUN: llc < %s -mtriple=x86_64-linux | grep {\\-16} +; RUN: llc < %s -mtriple=i686-linux | FileCheck %s -check-prefix=X32 +; X32-NOT: {{$429496728|-7}} +; X32: {{$4294967280|-16}} +; X32-NOT: {{$429496728|-7}} +; RUN: llc < %s -mtriple=x86_64-linux | FileCheck %s -check-prefix=X64 +; X64: -16 define void @t() nounwind { A: diff --git a/test/Makefile b/test/Makefile index b37bbfcc6f..0d84186b1e 100644 --- a/test/Makefile +++ b/test/Makefile @@ -173,22 +173,24 @@ site.exp: FORCE lit.site.cfg: site.exp @echo "Making LLVM 'lit.site.cfg' file..." - @sed -e "s#@LLVM_SOURCE_DIR@#$(LLVM_SRC_ROOT)#g" \ - -e "s#@LLVM_BINARY_DIR@#$(LLVM_OBJ_ROOT)#g" \ - -e "s#@LLVM_TOOLS_DIR@#$(ToolDir)#g" \ - -e "s#@LLVMGCCDIR@#$(LLVMGCCDIR)#g" \ - -e "s#@ENABLE_SHARED@#$(ENABLE_SHARED)#g" \ - $(PROJ_SRC_DIR)/lit.site.cfg.in > $@ + @$(ECHOPATH) s=@LLVM_SOURCE_DIR@=$(LLVM_SRC_ROOT)=g > lit.tmp + @$(ECHOPATH) s=@LLVM_BINARY_DIR@=$(LLVM_OBJ_ROOT)=g >> lit.tmp + @$(ECHOPATH) s=@LLVM_TOOLS_DIR@=$(ToolDir)=g >> lit.tmp + @$(ECHOPATH) s=@LLVMGCCDIR@=$(LLVMGCCDIR)=g >> lit.tmp + @$(ECHOPATH) s=@PYTHON_EXECUTABLE@=python=g >> lit.tmp + @$(ECHOPATH) s=@ENABLE_SHARED@=$(ENABLE_SHARED)=g >> lit.tmp + @sed -f lit.tmp $(PROJ_SRC_DIR)/lit.site.cfg.in > $@ + @-rm -f lit.tmp Unit/lit.site.cfg: $(PROJ_OBJ_DIR)/Unit/.dir FORCE @echo "Making LLVM unittest 'lit.site.cfg' file..." - @sed -e "s#@LLVM_SOURCE_DIR@#$(LLVM_SRC_ROOT)#g" \ - -e "s#@LLVM_BINARY_DIR@#$(LLVM_OBJ_ROOT)#g" \ - -e "s#@LLVM_TOOLS_DIR@#$(ToolDir)#g" \ - -e "s#@LLVMGCCDIR@#$(LLVMGCCDIR)#g" \ - -e "s#@LLVM_BUILD_MODE@#$(BuildMode)#g" \ - -e "s#@ENABLE_SHARED@#$(ENABLE_SHARED)#g" \ - -e "s#@SHLIBDIR@#$(SharedLibDir)#g" \ - -e "s#@SHLIBPATH_VAR@#$(SHLIBPATH_VAR)#g" \ - $(PROJ_SRC_DIR)/Unit/lit.site.cfg.in > $@ - + @$(ECHOPATH) s=@LLVM_SOURCE_DIR@=$(LLVM_SRC_ROOT)=g > unit.tmp + @$(ECHOPATH) s=@LLVM_BINARY_DIR@=$(LLVM_OBJ_ROOT)=g >> unit.tmp + @$(ECHOPATH) s=@LLVM_TOOLS_DIR@=$(ToolDir)=g >> unit.tmp + @$(ECHOPATH) s=@LLVMGCCDIR@=$(LLVMGCCDIR)=g >> unit.tmp + @$(ECHOPATH) s=@LLVM_BUILD_MODE@=$(BuildMode)=g >> unit.tmp + @$(ECHOPATH) s=@ENABLE_SHARED@=$(ENABLE_SHARED)=g >> unit.tmp + @$(ECHOPATH) s=@SHLIBDIR@=$(SharedLibDir)=g >> unit.tmp + @$(ECHOPATH) s=@SHLIBPATH_VAR@=$(SHLIBPATH_VAR)=g >> unit.tmp + @sed -f unit.tmp $(PROJ_SRC_DIR)/Unit/lit.site.cfg.in > $@ + @-rm -f unit.tmp diff --git a/utils/llvm-lit/Makefile b/utils/llvm-lit/Makefile index 702591f495..77021bbc24 100644 --- a/utils/llvm-lit/Makefile +++ b/utils/llvm-lit/Makefile @@ -13,9 +13,10 @@ include $(LEVEL)/Makefile.common all:: $(ToolDir)/llvm-lit -$(ToolDir)/llvm-lit: llvm-lit.in $(ToolDir)/.dir +$(ToolDir)/llvm-lit: llvm-lit.in Makefile $(ToolDir)/.dir $(Echo) "Creating 'llvm-lit' script..." - $(Verb)sed -e "s#@LLVM_SOURCE_DIR@#$(LLVM_SRC_ROOT)#g" \ - -e "s#@LLVM_BINARY_DIR@#$(LLVM_OBJ_ROOT)#g" \ - $< > $@ + $(Verb)$(ECHOPATH) s=@LLVM_SOURCE_DIR@=$(LLVM_SRC_ROOT)=g > lit.tmp + $(Verb)$(ECHOPATH) s=@LLVM_BINARY_DIR@=$(LLVM_OBJ_ROOT)=g >> lit.tmp + $(Verb)sed -f lit.tmp $< > $@ $(Verb)chmod +x $@ + $(Verb)rm -f lit.tmp |