Compile jsregexp.cpp with -O9 and -fomit-frame-pointer (456201, r=shaver).

This commit is contained in:
Andreas Gal 2008-09-24 17:44:25 -07:00
Родитель 663c1017db
Коммит e7d2499ff2
4 изменённых файлов: 23 добавлений и 2 удалений

Просмотреть файл

@ -60,6 +60,8 @@ else
MODULE_OPTIMIZE_FLAGS = -Os -fstrict-aliasing $(MOZ_OPTIMIZE_SIZE_TWEAK) MODULE_OPTIMIZE_FLAGS = -Os -fstrict-aliasing $(MOZ_OPTIMIZE_SIZE_TWEAK)
# Special optimization flags for jsinterp.c # Special optimization flags for jsinterp.c
INTERP_OPTIMIZER = -O3 -fstrict-aliasing INTERP_OPTIMIZER = -O3 -fstrict-aliasing
BUILTINS_OPTIMIZER = -O9 -fstrict-aliasing
REGEXP_OPTIMIZER = -O9 -fstrict-aliasing -fomit-frame-pointer
endif endif
else else
ifeq ($(OS_ARCH),SunOS) ifeq ($(OS_ARCH),SunOS)
@ -449,11 +451,19 @@ endif
endif endif
endif endif
# Allow building jsinterp.c with special optimization flags # Allow building jsinterp.c and a few others with special optimization flags
ifdef INTERP_OPTIMIZER ifdef INTERP_OPTIMIZER
jsinterp.$(OBJ_SUFFIX): MODULE_OPTIMIZE_FLAGS=$(INTERP_OPTIMIZER) jsinterp.$(OBJ_SUFFIX): MODULE_OPTIMIZE_FLAGS=$(INTERP_OPTIMIZER)
endif endif
ifdef BUILTINS_OPTIMIZER
jsbuiltins.$(OBJ_SUFFIX): MODULE_OPTIMIZE_FLAGS=$(BUILTINS_OPTIMIZER)
endif
ifdef REGEXP_OPTIMIZER
jsregexp.$(OBJ_SUFFIX): MODULE_OPTIMIZE_FLAGS=$(REGEXP_OPTIMIZER)
endif
ifeq ($(OS_ARCH),IRIX) ifeq ($(OS_ARCH),IRIX)
ifndef GNU_CC ifndef GNU_CC
_COMPILE_CFLAGS = $(patsubst -O%,-O1,$(COMPILE_CFLAGS)) _COMPILE_CFLAGS = $(patsubst -O%,-O1,$(COMPILE_CFLAGS))

Просмотреть файл

@ -106,6 +106,7 @@ endif
#CFLAGS += -DDEBUG -DDEBUG_brendan -DJS_ARENAMETER -DJS_HASHMETER -DJS_DUMP_PROPTREE_STATS -DJS_DUMP_SCOPE_METERS -DJS_SCOPE_DEPTH_METER -DJS_BASIC_STATS #CFLAGS += -DDEBUG -DDEBUG_brendan -DJS_ARENAMETER -DJS_HASHMETER -DJS_DUMP_PROPTREE_STATS -DJS_DUMP_SCOPE_METERS -DJS_SCOPE_DEPTH_METER -DJS_BASIC_STATS
CFLAGS += $(OPTIMIZER) $(OS_CFLAGS) $(DEFINES) $(INCLUDES) $(XCFLAGS) CFLAGS += $(OPTIMIZER) $(OS_CFLAGS) $(DEFINES) $(INCLUDES) $(XCFLAGS)
INTERP_CFLAGS += $(INTERP_OPTIMIZER) $(OS_CFLAGS) $(DEFINES) $(INCLUDES) $(XCFLAGS) $(INTERP_XCFLAGS) INTERP_CFLAGS += $(INTERP_OPTIMIZER) $(OS_CFLAGS) $(DEFINES) $(INCLUDES) $(XCFLAGS) $(INTERP_XCFLAGS)
REGEXP_CFLAGS += $(REGEXP_OPTIMIZER) $(OS_CFLAGS) $(DEFINES) $(INCLUDES) $(XCFLAGS) $(REGEXP_XCFLAGS)
BUILTINS_CFLAGS += $(BUILTINS_OPTIMIZER) $(OS_CFLAGS) $(DEFINES) $(INCLUDES) $(XCFLAGS) $(BUILTINS_XCFLAGS) BUILTINS_CFLAGS += $(BUILTINS_OPTIMIZER) $(OS_CFLAGS) $(DEFINES) $(INCLUDES) $(XCFLAGS) $(BUILTINS_XCFLAGS)
LDFLAGS = $(XLDFLAGS) LDFLAGS = $(XLDFLAGS)

Просмотреть файл

@ -124,12 +124,14 @@ ifdef BUILD_OPT
ifdef USE_MSVC ifdef USE_MSVC
OPTIMIZER = -O2 -GL OPTIMIZER = -O2 -GL
INTERP_OPTIMIZER = -O2 -GL INTERP_OPTIMIZER = -O2 -GL
REGEXP_OPTIMIZER = -O2 -GL
BUILTINS_OPTIMIZER = -O2 -GL BUILTINS_OPTIMIZER = -O2 -GL
LDFLAGS += -LTCG LDFLAGS += -LTCG
else else
OPTIMIZER = -Os -fno-exceptions -fno-rtti -fstrict-aliasing -Wall -Wstrict-aliasing=2 OPTIMIZER = -Os -fno-exceptions -fno-rtti -fstrict-aliasing -Wall -Wstrict-aliasing=2
BUILTINS_OPTIMIZER = -O9 -fstrict-aliasing -fno-exceptions -fno-rtti
INTERP_OPTIMIZER = -O3 -fstrict-aliasing -fno-exceptions -fno-rtti INTERP_OPTIMIZER = -O3 -fstrict-aliasing -fno-exceptions -fno-rtti
REGEXP_OPTIMIZER = -O9 -fomit-frame-pointer -fstrict-aliasing -fno-exceptions -fno-rtti
BUILTINS_OPTIMIZER = -O9 -fstrict-aliasing -fno-exceptions -fno-rtti
endif endif
DEFINES += -UDEBUG -DNDEBUG -UDEBUG_$(USER) DEFINES += -UDEBUG -DNDEBUG -UDEBUG_$(USER)
OBJDIR_TAG = _OPT OBJDIR_TAG = _OPT

Просмотреть файл

@ -81,6 +81,10 @@ $(OBJDIR)/jsinterp.o: jsinterp.cpp jsinterp.h
@$(MAKE_OBJDIR) @$(MAKE_OBJDIR)
$(CXX) -o $@ -c $(INTERP_CFLAGS) jsinterp.cpp $(CXX) -o $@ -c $(INTERP_CFLAGS) jsinterp.cpp
$(OBJDIR)/jsregexp.o: jsregexp.cpp jsregexp.h
@$(MAKE_OBJDIR)
$(CXX) -o $@ -c $(REGEXP_CFLAGS) jsregexp.cpp
$(OBJDIR)/jsbuiltins.o: jsbuiltins.cpp jsinterp.h $(OBJDIR)/jsbuiltins.o: jsbuiltins.cpp jsinterp.h
@$(MAKE_OBJDIR) @$(MAKE_OBJDIR)
$(CXX) -o $@ -c $(BUILTINS_CFLAGS) jsbuiltins.cpp $(CXX) -o $@ -c $(BUILTINS_CFLAGS) jsbuiltins.cpp
@ -102,6 +106,10 @@ $(OBJDIR)/jsinterp.obj: jsinterp.cpp jsinterp.h
@$(MAKE_OBJDIR) @$(MAKE_OBJDIR)
$(CXX) -Fo$(OBJDIR)/ -c $(INTERP_CFLAGS) $(JSDLL_CFLAGS) jsinterp.cpp $(CXX) -Fo$(OBJDIR)/ -c $(INTERP_CFLAGS) $(JSDLL_CFLAGS) jsinterp.cpp
$(OBJDIR)/jsregexp.obj: jsregexp.cpp jsregexp.h
@$(MAKE_OBJDIR)
$(CXX) -Fo$(OBJDIR)/ -c $(REGEXP_CFLAGS) $(JSDLL_CFLAGS) jsregexp.cpp
$(OBJDIR)/jsbuiltins.obj: jsbuiltins.cpp jsinterp.h $(OBJDIR)/jsbuiltins.obj: jsbuiltins.cpp jsinterp.h
@$(MAKE_OBJDIR) @$(MAKE_OBJDIR)
$(CXX) -Fo$(OBJDIR)/ -c $(BUILTINS_CFLAGS) $(JSDLL_CFLAGS) jsbuiltins.c $(CXX) -Fo$(OBJDIR)/ -c $(BUILTINS_CFLAGS) $(JSDLL_CFLAGS) jsbuiltins.c