[vmkit-commits] [vmkit] r180417 - clean up compilation flags

Peter Senna Tschudin peter.senna at gmail.com
Thu Apr 25 10:09:35 PDT 2013


Author: peter.senna
Date: Thu Apr 25 12:08:04 2013
New Revision: 180417

URL: http://llvm.org/viewvc/llvm-project?rev=180417&view=rev
Log:
clean up compilation flags
(cherry picked from commit fe5036aa06646d947308cf14bb78ba789f159f15)

Modified:
    vmkit/trunk/Makefile.common.in
    vmkit/trunk/Makefile.rules
    vmkit/trunk/tools/trainer/Makefile

Modified: vmkit/trunk/Makefile.common.in
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/Makefile.common.in?rev=180417&r1=180416&r2=180417&view=diff
==============================================================================
--- vmkit/trunk/Makefile.common.in (original)
+++ vmkit/trunk/Makefile.common.in Thu Apr 25 12:08:04 2013
@@ -81,34 +81,4 @@ MKDIR=mkdir -p @MKDIR@
 TOUCH=@TOUCH@
 GREP=@GREP@
 
-ENABLE_OPTIMIZED=1
-
-ifeq ($(ENABLE_OPTIMIZED),1)
-	LLC_CPP_FLAGS		:=
-	LLC_ASM_FLAGS		:= -O=2 -disable-debug-info-print
-	LLC_GLIBJ_FLAGS		:= -disable-debug-info-print
-
-	OPT_BC_WITH_GC_FLAGS	:= -std-compile-opts -strip-debug
-	OPT_MMTK_FLAGS		:= -std-compile-opts -strip-debug
-	OPT_VMJC_FLAGS		:= -std-compile-opts -strip-debug
-
-	PRECOMPILER_FLAGS	:= -O3
-
-	VMJC_MMTK_FLAGS		:= -std-compile-opts
-	VMJC_GLIBJ_FLAGS	:= -std-compile-opts
-else
-	LLC_CPP_FLAGS		:= -O=0
-	LLC_ASM_FLAGS		:= -O=0 -asm-verbose
-	LLC_GLIBJ_FLAGS		:=
-
-	OPT_BC_WITH_GC_FLAGS	:= -inline
-	OPT_MMTK_FLAGS		:=
-	OPT_VMJC_FLAGS		:= -std-compile-opts
-
-	VMJC_MMTK_FLAGS		:=
-	VMJC_GLIBJ_FLAGS	:= -jit-emit-debug -std-compile-opts
-
-	PRECOMPILER_FLAGS	:=
-endif
-
 include $(PROJ_SRC_ROOT)/Makefile.rules

Modified: vmkit/trunk/Makefile.rules
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/Makefile.rules?rev=180417&r1=180416&r2=180417&view=diff
==============================================================================
--- vmkit/trunk/Makefile.rules (original)
+++ vmkit/trunk/Makefile.rules Thu Apr 25 12:08:04 2013
@@ -1,8 +1,11 @@
 
 .PHONY: all tidy clean distclean confclean
 .SECONDARY:
-.SUFFIXES: .c .cpp .cxx .cc .h .hpp .o .a .bc .ll .jar $(SHLIBEXT) $(SUFFIXES)
+.SUFFIXES: .c .cpp .cxx .cc .h .hpp .o .a .bc .ll .jar $(SHLIBEXT) $(EXEEXT)
 
+###############################################################################
+#   Main options
+###############################################################################
 ifeq ($(OPTIMIZED),1)
   BUILD_NAME:=Release
   ifeq ($(DEBUG),1)
@@ -36,6 +39,26 @@ else
 	OPT_MSG="Performing GC pass on"
 endif
 
+
+ENABLE_OPTIMIZED=1
+
+LLC_OPT+=-relocation-model=pic -disable-cfi -disable-fp-elim
+
+OPT_MMTK_FLAGS=-std-compile-opts -strip-debug
+
+INCLUDES+=-I$(PROJ_SRC_CWD) -I$(PROJ_SRC_ROOT)/include -I$(PROJ_SRC_ROOT)/lib/vmkit/MMTk -I$(BUILD_DIR)
+
+WARN_CFLAGS=  -Wall -Wno-long-long -Wno-variadic-macros -Wno-unused-private-field -Wno-unused-variable
+COMMON_CFLAGS+=  -O0 $(INCLUDES) -fno-strict-aliasing -fno-omit-frame-pointer -ansi -pedantic $(WARN_CFLAGS) -fPIC
+
+CFLAGS+=$(COMMON_CFLAGS) $(shell $(LLVM_CONFIG) --cflags)
+CXXFLAGS+=$(COMMON_CFLAGS) $(shell $(LLVM_CONFIG) --cxxflags)
+LDFLAGS+=$(shell $(LLVM_CONFIG) --ldflags) $(LDOPT)
+LIBS+=$(shell $(LLVM_CONFIG) --libs) -lz
+
+DEPEND_OPTIONS=-MMD -MP -MF "$(BUILD_DIR)/$$*.d.tmp" -MT "$(BUILD_DIR)/$$*.bc" -MT "$(BUILD_DIR)/$$*.d"
+DOM=then mv -f "$(BUILD_DIR)/$$*.d.tmp" "$(BUILD_DIR)/$$*.d"; else rm -f "$(BUILD_DIR)/$$*.d.tmp"; exit 1; fi
+
 ###############################################################################
 #   Nice printing
 ###############################################################################
@@ -114,7 +137,7 @@ BIN_DIR=$(PROJ_OBJ_ROOT)/$(BUILD_NAME)/b
 LIB_DIR=$(PROJ_OBJ_ROOT)/$(BUILD_NAME)/lib
 BUILD_DIR=$(PROJ_OBJ_CWD)/$(BUILD_NAME)
 
-PREPARE_CODE=$(LIB_DIR)/prepare-code$(SHLIBEXT)
+PREPARE_CODE_LIB=$(LIB_DIR)/prepare-code$(SHLIBEXT)
 VMJC=$(BIN_DIR)/vmjc$(EXEEXT)
 PRECOMPILER=$(BIN_DIR)/precompiler
 
@@ -164,8 +187,8 @@ CLANG_FILES=$(patsubst %.c,$(BUILD_DIR)/
 BC_FILES=$(addsuffix .bc,$(CLANG_FILES)) $(addprefix $(BUILD_DIR)/,$(filter %.bc, $(GEN)))
 
 ifdef NEED_GC
-LLC_GC=-load=$(PREPARE_CODE)
-OPT_GC=-load=$(PREPARE_CODE) -StaticGCPass
+LLC_OPT+=-load=$(PREPARE_CODE_LIB)
+LOPT_OPT+=-load=$(PREPARE_CODE_LIB) -StaticGCPass
 endif
 
 ifdef NEED_BC
@@ -196,11 +219,11 @@ $(MODULE_A): $(MODULE_A_DEP) $(LIB_DIR)/
 
 %.o: %.bc
 	$(Echo) "Assembling '$(notdir $<)'"
-	$(Verb) $(LLC) $(LLC_OPT) -relocation-model=pic -filetype=obj -disable-cfi -disable-fp-elim $(LLC_GC) $< -o $@
+	$(Verb) $(LLC) $(LLC_OPT) -filetype=obj $< -o $@
 
 %-opt.bc: %.bc
 	$(Echo) "$(OPT_MSG) '$(notdir $<)'"
-	$(Verb) $(LOPT) $< $(OPT_GC) -o $@
+	$(Verb) $(LOPT) $< $(LOPT_OPT) -o $@
 
 endif
 
@@ -234,7 +257,7 @@ DEP_LIBS=$(patsubst %,$(LIB_DIR)/lib%.a,
 
 $(BIN_DIR)/$(TOOL)$(EXEEXT): $(MODULE_A) $(DEP_LIBS) $(BUILD_DIR)/frametables-opt.o $(SELF) $(BIN_DIR)/.dir
 	$(Echo) "Linking executable '$(notdir $@)'"
-	$(Verb) $(CLANGXX) -o $@ $(MODULE_A) $(DEP_LIBS) $(BUILD_DIR)/frametables-opt.o $(DEP_LIBS) $(MY_LIBS) $(MY_LDFLAGS) 
+	$(Verb) $(CLANGXX) -o $@ $(MODULE_A) $(DEP_LIBS) $(BUILD_DIR)/frametables-opt.o $(DEP_LIBS) $(LIBS) $(LDFLAGS) 
 
 $(LIB_DIR)/$(LIBRARY)$(SHLIBEXT): $(MODULE_A) $(DEP_LIBS) $(SELF) $(LIB_DIR)/.dir
 	$(Echo) "Linking shared library '$(notdir $@)'"
@@ -273,20 +296,6 @@ endif
 ###############################################################################
 # object rules
 ###############################################################################
-INCLUDES+=-I$(PROJ_SRC_CWD) -I$(PROJ_SRC_ROOT)/include -I$(PROJ_SRC_ROOT)/lib/vmkit/MMTk -I$(BUILD_DIR)
-
-# should remove no-unused-variable                                                                                                         
-WARN_CFLAGS=  -Wall -Wno-long-long -Wno-variadic-macros -Wno-unused-private-field -Wno-unused-variable
-COMMON_CFLAGS+=  -O0 $(INCLUDES) -fno-strict-aliasing -fno-omit-frame-pointer  -ansi -pedantic $(WARN_CFLAGS) -fPIC
-
-CFLAGS+=$(COMMON_CFLAGS) $(shell $(LLVM_CONFIG) --cflags)
-CXXFLAGS+=$(COMMON_CFLAGS) $(shell $(LLVM_CONFIG) --cxxflags)
-MY_LDFLAGS+=$(shell $(LLVM_CONFIG) --ldflags) $(LDOPT)
-MY_LIBS+=$(shell $(LLVM_CONFIG) --libs) -lz
-
-DEPEND_OPTIONS=-MMD -MP -MF "$(BUILD_DIR)/$$*.d.tmp" -MT "$(BUILD_DIR)/$$*.bc" -MT "$(BUILD_DIR)/$$*.d"
-DOM=then mv -f "$(BUILD_DIR)/$$*.d.tmp" "$(BUILD_DIR)/$$*.d"; else rm -f "$(BUILD_DIR)/$$*.d.tmp"; exit 1; fi
-
 define define_compile_rule
 $(BUILD_DIR)/%.bc: %$1 $(SELF) $(BUILT_INC) $(BUILD_DIR)/.dir
 	$(Echo) "Compiling '$$(notdir $$<)'"

Modified: vmkit/trunk/tools/trainer/Makefile
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/tools/trainer/Makefile?rev=180417&r1=180416&r2=180417&view=diff
==============================================================================
--- vmkit/trunk/tools/trainer/Makefile (original)
+++ vmkit/trunk/tools/trainer/Makefile Thu Apr 25 12:08:04 2013
@@ -12,57 +12,23 @@ MODULE=Precompiled
 GEN=Precompiled.bc BootstrapClasses.bc
 NEED_GC=1
 
+LLC_OPT+= -disable-branch-fold 
+#-disable-debug-info-print
+
 include $(LEVEL)/Makefile.common
 
 ifndef VERBOSE
-  J3.Flags := > /dev/null
+  PRECOMPILER_OPT := > /dev/null
 endif
 
 $(BUILD_DIR)/Precompiled.bc: $(BUILD_DIR)/HelloWorld.class $(LIB_DIR)/prepare-code$(SHLIBEXT) $(PRECOMPILER)
 	$(Echo) "Pre-compiling bootstrap code"
-	$(Verb) $(PRECOMPILER) -cp $(dir $<) $(basename $(notdir $<)) $(J3.Flags) && mv generated.bc $@
+	$(Verb) $(PRECOMPILER) -cp $(dir $<) $(basename $(notdir $<)) $(PRECOMPILER_OPT) && mv generated.bc $@
 
 $(BUILD_DIR)/BootstrapClasses.bc: $(BUILD_DIR)/.dir
 	$(Echo) "Building precompiled classes"
-	$(Verb) $(PRECOMPILER) -emit-class-bytes $(J3.Flags) && mv classes.bc $@
+	$(Verb) $(PRECOMPILER) -emit-class-bytes $(PRECOMPILER_OPT) && mv classes.bc $@
 
 $(BUILD_DIR)/HelloWorld.class: HelloWorld.java $(SELF) $(BUILD_DIR)/.dir
 	$(Echo) "Compiling trainer '$<'"
 	$(Verb) javac -source $(JAVAC_TARGET) -target $(JAVAC_TARGET) $< -d $(dir $@)
-
-LLC_OPT+=-disable-branch-fold -disable-debug-info-print
-
-ifdef ZERO
-HelloWorld.class: HelloWorld.java
-	$(Echo) "Compiling trainer"
-	$(Verb) javac -source $(JAVAC_TARGET) -target $(JAVAC_TARGET) $< -d .
-
-generated.bc: $(PRECOMPILER) HelloWorld.class
-	$(Echo) "Pre-compiling bootstrap code"
-	$(Verb) $(PRECOMPILER) -cp $$PWD HelloWorld $(J3.Flags)
-
-Precompiled.bc: HelloWorld.class $(LibDir)/StaticGCPass$(SHLIBEXT) $(LibDir)/StaticGCPrinter$(SHLIBEXT) generated.bc
-	$(Echo) "Building precompiled bootstrap code"
-	$(Verb) $(MKDIR) $(ObjDir)
-	$(Verb) $(LLC) -disable-branch-fold -disable-cfi -disable-debug-info-print -disable-fp-elim $(PRECOMPILER_FLAGS) -load=$(LibDir)/StaticGCPrinter$(SHLIBEXT) generated.bc -o $(ObjDir)/Precompiled.s
-	$(Verb) $(CC) -c $(ObjDir)/Precompiled.s -o $(ObjDir)/Precompiled.o
-	$(Verb) $(Archive) $(LibDir)/libPrecompiled.a $(ObjDir)/Precompiled.o
-	$(Verb) $(Ranlib) $(LibDir)/libPrecompiled.a
-	$(Verb) $(CP) generated.bc Precompiled.bc
-
-classes.bc: $(PRECOMPILER)
-	$(Echo) "Pre-compiling classes"
-	$(Verb) $(PRECOMPILER) -emit-class-bytes $(J3.Flags)
-
-BootstrapClasses.bc: classes.bc
-	$(Echo) "Building precompiled classes"
-	$(Verb) $(MKDIR) $(ObjDir)
-	$(Verb) $(LLC) classes.bc -o $(ObjDir)/BootstrapClasses.s
-	$(Verb) $(CC) -c $(ObjDir)/BootstrapClasses.s -o $(ObjDir)/BootstrapClasses.o
-	$(Verb) $(Archive) $(LibDir)/libBootstrapClasses.a $(ObjDir)/BootstrapClasses.o
-	$(Verb) $(Ranlib) $(LibDir)/libBootstrapClasses.a
-	$(Verb) $(CP) classes.bc BootstrapClasses.bc
-
-clean-local::
-	$(Verb) $(RM) -f HelloWorld.class generated.bc classes.bc Precompiled.bc BootstrapClasses.bc
-endif
\ No newline at end of file





More information about the vmkit-commits mailing list