diff --git a/browser/metro/shell/commandexecutehandler/Makefile.in b/browser/metro/shell/commandexecutehandler/Makefile.in index 4436b3fdc767..2f8e55fbe4a2 100644 --- a/browser/metro/shell/commandexecutehandler/Makefile.in +++ b/browser/metro/shell/commandexecutehandler/Makefile.in @@ -2,6 +2,8 @@ # License, v. 2.0. If a copy of the MPL was not distributed with this # file, You can obtain one at http://mozilla.org/MPL/2.0/. +NO_PROFILE_GUIDED_OPTIMIZE = 1 + include $(topsrcdir)/config/config.mk DIST_PROGRAM = CommandExecuteHandler$(BIN_SUFFIX) diff --git a/browser/metro/shell/commandexecutehandler/moz.build b/browser/metro/shell/commandexecutehandler/moz.build index cd2ac7912ba7..89a07cf1bcba 100644 --- a/browser/metro/shell/commandexecutehandler/moz.build +++ b/browser/metro/shell/commandexecutehandler/moz.build @@ -16,5 +16,3 @@ DIST_SUBDIR = '' for var in ('UNICODE', '_UNICODE', 'NS_NO_XPCOM'): DEFINES[var] = True - -NO_PGO = True diff --git a/browser/metro/shell/linktool/Makefile.in b/browser/metro/shell/linktool/Makefile.in index 7795c9f4c3af..786ce3c83c72 100644 --- a/browser/metro/shell/linktool/Makefile.in +++ b/browser/metro/shell/linktool/Makefile.in @@ -2,6 +2,8 @@ # License, v. 2.0. If a copy of the MPL was not distributed with this # file, You can obtain one at http://mozilla.org/MPL/2.0/. +NO_PROFILE_GUIDED_OPTIMIZE = 1 + include $(topsrcdir)/config/config.mk OS_LIBS = \ diff --git a/browser/metro/shell/linktool/moz.build b/browser/metro/shell/linktool/moz.build index 5f8d38ec6bcc..7d93db9dc856 100644 --- a/browser/metro/shell/linktool/moz.build +++ b/browser/metro/shell/linktool/moz.build @@ -14,5 +14,3 @@ DIST_SUBDIR = 'metro/install' for var in ('UNICODE', '_UNICODE'): DEFINES[var] = True - -NO_PGO = True diff --git a/browser/metro/shell/testing/Makefile.in b/browser/metro/shell/testing/Makefile.in index 935e997cff70..230a7912fa81 100644 --- a/browser/metro/shell/testing/Makefile.in +++ b/browser/metro/shell/testing/Makefile.in @@ -9,6 +9,8 @@ USE_STATIC_LIBS = 1 MOZ_GLUE_LDFLAGS = MOZ_GLUE_PROGRAM_LDFLAGS = +NO_PROFILE_GUIDED_OPTIMIZE = 1 + include $(topsrcdir)/config/config.mk OS_LIBS = \ diff --git a/browser/metro/shell/testing/moz.build b/browser/metro/shell/testing/moz.build index ffd44a76d4be..fb7c08870f11 100644 --- a/browser/metro/shell/testing/moz.build +++ b/browser/metro/shell/testing/moz.build @@ -15,5 +15,3 @@ DIST_SUBDIR = '' for var in ('UNICODE', '_UNICODE'): DEFINES[var] = True - -NO_PGO = True diff --git a/build/unix/elfhack/Makefile.in b/build/unix/elfhack/Makefile.in index cfbbb607bb3f..71db949b934f 100644 --- a/build/unix/elfhack/Makefile.in +++ b/build/unix/elfhack/Makefile.in @@ -5,6 +5,8 @@ INTERNAL_TOOLS = 1 +NO_PROFILE_GUIDED_OPTIMIZE = 1 + VPATH += $(topsrcdir)/build OS_CXXFLAGS := $(filter-out -fno-exceptions,$(OS_CXXFLAGS)) -fexceptions diff --git a/build/unix/elfhack/inject/Makefile.in b/build/unix/elfhack/inject/Makefile.in index 07357a2b9476..79831fcc411b 100644 --- a/build/unix/elfhack/inject/Makefile.in +++ b/build/unix/elfhack/inject/Makefile.in @@ -4,6 +4,7 @@ # file, You can obtain one at http://mozilla.org/MPL/2.0/. INTERNAL_TOOLS = 1 +NO_PROFILE_GUIDED_OPTIMIZE = 1 include $(topsrcdir)/config/rules.mk diff --git a/build/unix/elfhack/inject/moz.build b/build/unix/elfhack/inject/moz.build index 3b069ef337a6..b560c8f69b9b 100644 --- a/build/unix/elfhack/inject/moz.build +++ b/build/unix/elfhack/inject/moz.build @@ -18,5 +18,3 @@ GENERATED_SOURCES += [ ] DEFINES['ELFHACK_BUILD'] = True - -NO_PGO = True diff --git a/build/unix/elfhack/moz.build b/build/unix/elfhack/moz.build index b461987a6ae8..4a96904f2287 100644 --- a/build/unix/elfhack/moz.build +++ b/build/unix/elfhack/moz.build @@ -25,5 +25,3 @@ HOST_SOURCES += [ HOST_PROGRAM = 'elfhack' DEFINES['ELFHACK_BUILD'] = True - -NO_PGO = True diff --git a/build/unix/stdc++compat/Makefile.in b/build/unix/stdc++compat/Makefile.in index b9ef76d1b6e9..dabfae73fc9b 100644 --- a/build/unix/stdc++compat/Makefile.in +++ b/build/unix/stdc++compat/Makefile.in @@ -4,6 +4,7 @@ STL_FLAGS = NO_EXPAND_LIBS = 1 +NO_PROFILE_GUIDED_OPTIMIZE = 1 include $(topsrcdir)/config/rules.mk diff --git a/build/unix/stdc++compat/moz.build b/build/unix/stdc++compat/moz.build index 739879e83b18..2f0deb490e89 100644 --- a/build/unix/stdc++compat/moz.build +++ b/build/unix/stdc++compat/moz.build @@ -15,5 +15,3 @@ if CONFIG['MOZ_LIBSTDCXX_HOST_VERSION']: ] FORCE_STATIC_LIB = True - -NO_PGO = True diff --git a/build/win32/Makefile.in b/build/win32/Makefile.in index e57bf7454d20..00bdae24ef9c 100644 --- a/build/win32/Makefile.in +++ b/build/win32/Makefile.in @@ -2,6 +2,8 @@ # License, v. 2.0. If a copy of the MPL was not distributed with this # file, You can obtain one at http://mozilla.org/MPL/2.0/. +NO_PROFILE_GUIDED_OPTIMIZE = 1 + ifdef ENABLE_TESTS USE_STATIC_LIBS = 1 diff --git a/build/win32/moz.build b/build/win32/moz.build index 2c94a64b7686..633dfffec58b 100644 --- a/build/win32/moz.build +++ b/build/win32/moz.build @@ -14,5 +14,3 @@ if CONFIG['ENABLE_TESTS']: SOURCES += [ 'crashinject.cpp', ] - -NO_PGO = True diff --git a/db/sqlite3/src/Makefile.in b/db/sqlite3/src/Makefile.in index 6a71cbf17e07..54b0ced3de67 100644 --- a/db/sqlite3/src/Makefile.in +++ b/db/sqlite3/src/Makefile.in @@ -46,6 +46,11 @@ ifeq ($(OS_ARCH),WINNT) MODULE_OPTIMIZE_FLAGS = -O2 endif +# disable PGO for Sun Studio +ifdef SOLARIS_SUNPRO_CC +NO_PROFILE_GUIDED_OPTIMIZE = 1 +endif + include $(topsrcdir)/config/rules.mk # next line allows use of MOZ_OBJDIR in .mozconfig with older gcc on BeOS, maybe others diff --git a/db/sqlite3/src/moz.build b/db/sqlite3/src/moz.build index 76fb9360d4a8..962ce496be06 100644 --- a/db/sqlite3/src/moz.build +++ b/db/sqlite3/src/moz.build @@ -62,7 +62,3 @@ if CONFIG['OS_TARGET'] == 'Android': if CONFIG['OS_ARCH'] == 'WINNT' and CONFIG['MOZ_MEMORY']: DEFINES['HAVE_MALLOC_USABLE_SIZE'] = True DEFINES['SQLITE_WITHOUT_MSIZE'] = True - -# disable PGO for Sun Studio -if CONFIG['SOLARIS_SUNPRO_CC']: - NO_PGO = True diff --git a/gfx/layers/Makefile.in b/gfx/layers/Makefile.in index 10c965c1c585..1a420580eafc 100644 --- a/gfx/layers/Makefile.in +++ b/gfx/layers/Makefile.in @@ -25,3 +25,13 @@ CXXFLAGS += \ $(NULL) CXXFLAGS += $(MOZ_CAIRO_CFLAGS) $(MOZ_PIXMAN_CFLAGS) $(TK_CFLAGS) + +ifdef _MSC_VER +ifeq ($(CPU_ARCH),x86_64) +# Workaround compiler bug (Bug 795594) +NO_PROFILE_GUIDED_OPTIMIZE := \ + LayerTreeInvalidation.cpp \ + Layers.cpp \ + $(NULL) +endif +endif diff --git a/gfx/layers/moz.build b/gfx/layers/moz.build index da5acd67dbac..6b5d77857bf3 100644 --- a/gfx/layers/moz.build +++ b/gfx/layers/moz.build @@ -254,9 +254,11 @@ UNIFIED_SOURCES += [ 'ipc/SharedPlanarYCbCrImage.cpp', 'ipc/SharedRGBImage.cpp', 'ipc/TaskThrottler.cpp', + 'Layers.cpp', 'LayerScope.cpp', 'LayersLogging.cpp', 'LayerSorter.cpp', + 'LayerTreeInvalidation.cpp', 'opengl/CompositingRenderTargetOGL.cpp', 'opengl/CompositorOGL.cpp', 'opengl/OGLShaderProgram.cpp', @@ -272,18 +274,8 @@ UNIFIED_SOURCES += [ SOURCES += [ 'basic/BasicImageLayer.cpp', 'ImageContainer.cpp', - 'Layers.cpp', - 'LayerTreeInvalidation.cpp', ] -# Workaround compiler bug (Bug 795594) -if CONFIG['_MSC_VER'] and CONFIG['CPU_ARCH'] == 'x86_64': - for src in [ - 'Layers.cpp', - 'LayerTreeInvalidation.cpp', - ]: - SOURCES[src].no_pgo = True - if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa': SOURCES += [ 'basic/MacIOSurfaceTextureHostBasic.cpp', diff --git a/js/src/Makefile.in b/js/src/Makefile.in index 1a7008f5c4c6..14a5eade8c9e 100644 --- a/js/src/Makefile.in +++ b/js/src/Makefile.in @@ -380,6 +380,22 @@ endif ifdef _MSC_VER # XXX We should add this to CXXFLAGS, too? CFLAGS += -fp:precise + +ifeq ($(CPU_ARCH),x86) +# Workaround compiler bug on PGO (Bug 721284) +NO_PROFILE_GUIDED_OPTIMIZE := \ + MonoIC.cpp \ + Compiler.cpp \ + $(NULL) +# Ditto (Bug 772303) +NO_PROFILE_GUIDED_OPTIMIZE += RegExp.cpp +endif +# Ditto (Bug 810661) +ifeq ($(CPU_ARCH),x86_64) +NO_PROFILE_GUIDED_OPTIMIZE := \ + CTypes.cpp \ + $(NULL) +endif endif # _MSC_VER ifeq ($(OS_ARCH),FreeBSD) diff --git a/js/src/jit/RangeAnalysis.h b/js/src/jit/RangeAnalysis.h index 27ff9095672b..b75daa636aa0 100644 --- a/js/src/jit/RangeAnalysis.h +++ b/js/src/jit/RangeAnalysis.h @@ -13,10 +13,6 @@ #include "jit/IonAnalysis.h" #include "jit/MIR.h" -// windows.h defines those, which messes with the definitions below. -#undef min -#undef max - namespace js { namespace jit { diff --git a/js/src/moz.build b/js/src/moz.build index 31769c7439b5..37fad73e3448 100644 --- a/js/src/moz.build +++ b/js/src/moz.build @@ -98,6 +98,7 @@ UNIFIED_SOURCES += [ 'builtin/Object.cpp', 'builtin/ParallelArray.cpp', 'builtin/Profilers.cpp', + 'builtin/RegExp.cpp', 'builtin/TestingFunctions.cpp', 'builtin/TypedObject.cpp', 'builtin/TypeRepresentation.cpp', @@ -196,8 +197,6 @@ UNIFIED_SOURCES += [ # jsarray.cpp and jsatom.cpp cannot be built in unified mode because # xpcshell is broken during packaging when compiled with gcc-4.8.2 -# builtin/RegExp.cpp cannot be built in unified mode because it is built -# without PGO # frontend/Parser.cpp cannot be built in unified mode because of explicit # template instantiations. # jsmath.cpp cannot be built in unified mode because it needs to pull rand_s @@ -205,7 +204,6 @@ UNIFIED_SOURCES += [ # jsutil.cpp cannot be built in unified mode because it is needed for # check-vanilla-allocations. SOURCES += [ - 'builtin/RegExp.cpp', 'frontend/Parser.cpp', 'jsarray.cpp', 'jsatom.cpp', @@ -425,9 +423,3 @@ if CONFIG['JS_HAS_CTYPES']: if CONFIG['MOZ_LINKER']: DEFINES['MOZ_LINKER'] = True - -if CONFIG['_MSC_VER']: - if CONFIG['CPU_ARCH'] == 'x86': - SOURCES['builtin/RegExp.cpp'].no_pgo = True # Bug 772303 - elif CONFIG['CPU_ARCH'] == 'x86_64': - SOURCES['ctypes/CTypes.cpp'].no_pgo = True # Bug 810661 diff --git a/js/src/shell/Makefile.in b/js/src/shell/Makefile.in index a9c30fa83f5a..d906c3d08195 100644 --- a/js/src/shell/Makefile.in +++ b/js/src/shell/Makefile.in @@ -4,6 +4,13 @@ # License, v. 2.0. If a copy of the MPL was not distributed with this # file, You can obtain one at http://mozilla.org/MPL/2.0/. +ifdef _MSC_VER +# unnecessary PGO for js shell. But gcc cannot turn off pgo because it is +# necessary to link PGO lib on gcc when a object/static lib are compiled +# for PGO. +NO_PROFILE_GUIDED_OPTIMIZE := 1 +endif + LIBS = $(NSPR_LIBS) $(EDITLINE_LIBS) $(DEPTH)/$(LIB_PREFIX)js_static.$(LIB_SUFFIX) $(MOZ_ZLIB_LIBS) ifdef MOZ_NATIVE_FFI EXTRA_LIBS += $(MOZ_FFI_LIBS) diff --git a/js/src/shell/moz.build b/js/src/shell/moz.build index 6c200ff04f8a..5ede1ed468a7 100644 --- a/js/src/shell/moz.build +++ b/js/src/shell/moz.build @@ -16,9 +16,3 @@ UNIFIED_SOURCES += [ # on its behalf. for var in ('EXPORT_JS_API', 'IMPL_MFBT'): DEFINES[var] = True - -if CONFIG['_MSC_VER']: - # unnecessary PGO for js shell. But gcc cannot turn off pgo because it is - # necessary to link PGO lib on gcc when a object/static lib are compiled - # for PGO. - NO_PGO = True diff --git a/media/libvpx/Makefile.in b/media/libvpx/Makefile.in index f767966cac78..2f50e38fb39b 100644 --- a/media/libvpx/Makefile.in +++ b/media/libvpx/Makefile.in @@ -120,6 +120,11 @@ quantize_ssse3.$(OBJ_SUFFIX): vp8_asm_enc_offsets.asm ifdef VPX_NEED_OBJ_INT_EXTRACT +# only for MSVC +ifdef _MSC_VER +NO_PROFILE_GUIDED_OPTIMIZE := vpx_scale_asm_offsets.c +endif + vpx_scale_asm_offsets.asm: vpx_scale_asm_offsets.$(OBJ_SUFFIX) $(HOST_PROGRAM) ./$(HOST_PROGRAM) $(VPX_OIE_FORMAT) $< \ $(if $(VPX_AS_CONVERSION),| $(VPX_AS_CONVERSION)) > $@ @@ -130,6 +135,10 @@ OBJS := $(filter-out vpx_scale_asm_offsets.$(OBJ_SUFFIX),$(OBJS)) ifdef MOZ_VP8_ENCODER +ifdef _MSC_VER +NO_PROFILE_GUIDED_OPTIMIZE += vp8_asm_enc_offsets.c +endif + vp8_asm_enc_offsets.asm: vp8_asm_enc_offsets.$(OBJ_SUFFIX) $(HOST_PROGRAM) ./$(HOST_PROGRAM) $(VPX_OIE_FORMAT) $< \ $(if $(VPX_AS_CONVERSION),| $(VPX_AS_CONVERSION)) > $@ diff --git a/media/libvpx/moz.build b/media/libvpx/moz.build index 03f013589afa..8e89424035f0 100644 --- a/media/libvpx/moz.build +++ b/media/libvpx/moz.build @@ -31,14 +31,10 @@ if CONFIG['VPX_X86_ASM'] and CONFIG['OS_TARGET'] == 'WINNT': SOURCES += [ 'vpx_scale/vpx_scale_asm_offsets.c', ] - if CONFIG['_MSC_VER']: - SOURCES['vpx_scale/vpx_scale_asm_offsets.c'].no_pgo = True if CONFIG['MOZ_VP8_ENCODER']: SOURCES += [ 'vp8/encoder/vp8_asm_enc_offsets.c', ] - if CONFIG['_MSC_VER']: - SOURCES['vp8/encoder/vp8_asm_enc_offsets.c'].no_pgo = True if CONFIG['VPX_X86_ASM']: SOURCES += files['X86_ASM'] diff --git a/memory/mozjemalloc/Makefile.in b/memory/mozjemalloc/Makefile.in index 678509a35d0a..6b45d8eb9ff5 100644 --- a/memory/mozjemalloc/Makefile.in +++ b/memory/mozjemalloc/Makefile.in @@ -9,6 +9,12 @@ ifndef GNU_CC MODULE_OPTIMIZE_FLAGS = -xO5 endif endif + +ifeq (Linux,$(OS_TARGET)) +#XXX: PGO on Linux causes problems here +# See bug 419470 +NO_PROFILE_GUIDED_OPTIMIZE = 1 +endif endif LOCAL_INCLUDES += -I$(topsrcdir)/memory/build diff --git a/memory/mozjemalloc/moz.build b/memory/mozjemalloc/moz.build index 532ca7b4c58d..d1d186ac7319 100644 --- a/memory/mozjemalloc/moz.build +++ b/memory/mozjemalloc/moz.build @@ -26,8 +26,3 @@ if CONFIG['MOZ_REPLACE_MALLOC']: DEFINES['MOZ_REPLACE_MALLOC'] = True DEFINES['MOZ_JEMALLOC_IMPL'] = True - -#XXX: PGO on Linux causes problems here -# See bug 419470 -if CONFIG['OS_TARGET'] == 'Linux': - NO_PGO = True diff --git a/netwerk/sctp/datachannel/Makefile.in b/netwerk/sctp/datachannel/Makefile.in new file mode 100644 index 000000000000..e74ce21e3be9 --- /dev/null +++ b/netwerk/sctp/datachannel/Makefile.in @@ -0,0 +1,6 @@ +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +NO_PROFILE_GUIDED_OPTIMIZE = 1 # Don't PGO diff --git a/netwerk/sctp/datachannel/moz.build b/netwerk/sctp/datachannel/moz.build index c871e392ec87..dfaaaef44641 100644 --- a/netwerk/sctp/datachannel/moz.build +++ b/netwerk/sctp/datachannel/moz.build @@ -39,5 +39,3 @@ if CONFIG['OS_TARGET'] == 'WINNT': DEFINES['__Userspace_os_Windows'] = 1 else: DEFINES['__Userspace_os_%s' % CONFIG['OS_TARGET']] = 1 - -NO_PGO = True # Don't PGO diff --git a/netwerk/sctp/src/Makefile.in b/netwerk/sctp/src/Makefile.in index 37b8bcef2025..e6bf1f126029 100644 --- a/netwerk/sctp/src/Makefile.in +++ b/netwerk/sctp/src/Makefile.in @@ -3,6 +3,8 @@ # License, v. 2.0. If a copy of the MPL was not distributed with this # file, You can obtain one at http://mozilla.org/MPL/2.0/. +NO_PROFILE_GUIDED_OPTIMIZE = 1 # Don't PGO + ifeq ($(OS_TARGET),Darwin) DEFINES += \ -U__APPLE__ \ diff --git a/netwerk/sctp/src/moz.build b/netwerk/sctp/src/moz.build index 1d7f90da74de..508c1c00ea12 100644 --- a/netwerk/sctp/src/moz.build +++ b/netwerk/sctp/src/moz.build @@ -80,5 +80,3 @@ if CONFIG['OS_TARGET'] == 'Darwin': if CONFIG['OS_TARGET'] in ('Linux', 'Android'): # to make sure that in6_pktinfo gets defined on all distros DEFINES['_GNU_SOURCE'] = True - -NO_PGO = True # Don't PGO diff --git a/xpcom/base/Makefile.in b/xpcom/base/Makefile.in index c06f5109cece..4b17f704e19d 100644 --- a/xpcom/base/Makefile.in +++ b/xpcom/base/Makefile.in @@ -5,6 +5,8 @@ MOZILLA_INTERNAL_API =1 +NO_PROFILE_GUIDED_OPTIMIZE = nsDebugImpl.cpp + INSTALL_TARGETS += errorlist errorlist_FILES := \ ErrorListCDefines.h \ diff --git a/xpcom/base/moz.build b/xpcom/base/moz.build index c7638274d147..d54dd77ba98a 100644 --- a/xpcom/base/moz.build +++ b/xpcom/base/moz.build @@ -94,6 +94,7 @@ UNIFIED_SOURCES += [ 'nsConsoleMessage.cpp', 'nsConsoleService.cpp', 'nsCycleCollector.cpp', + 'nsDebugImpl.cpp', 'nsErrorService.cpp', 'nsGZFileWriter.cpp', 'nsInterfaceRequestorAgg.cpp', @@ -123,8 +124,7 @@ UNIFIED_SOURCES += [ 'nsErrorAssertsC.c', ] -SOURCES += ['nsDebugImpl.cpp'] -SOURCES['nsDebugImpl.cpp'].no_pgo = True + MSVC_ENABLE_PGO = True diff --git a/xpcom/reflect/xptcall/src/md/unix/Makefile.in b/xpcom/reflect/xptcall/src/md/unix/Makefile.in index 8811d2d8c288..07de632ab85c 100644 --- a/xpcom/reflect/xptcall/src/md/unix/Makefile.in +++ b/xpcom/reflect/xptcall/src/md/unix/Makefile.in @@ -3,8 +3,21 @@ # License, v. 2.0. If a copy of the MPL was not distributed with this # file, You can obtain one at http://mozilla.org/MPL/2.0/. +NO_PROFILE_GUIDED_OPTIMIZE = 1 + MOZILLA_INTERNAL_API = 1 +# +# The default is this buildable, but non-functioning code. +# +ifeq ($(OS_ARCH),SunOS) +ifneq (86,$(findstring 86,$(OS_TEST))) +# disable PGO for this directory with Sun Studio on SPARC because +# compiling with xprofile=collect will insert code into nsXPTCStubBase::Stub##n +NO_PROFILE_GUIDED_OPTIMIZE = 1 +endif +endif + ###################################################################### # ARM ###################################################################### diff --git a/xpcom/reflect/xptcall/src/md/unix/moz.build b/xpcom/reflect/xptcall/src/md/unix/moz.build index be6ea33102b1..0e3b04131707 100644 --- a/xpcom/reflect/xptcall/src/md/unix/moz.build +++ b/xpcom/reflect/xptcall/src/md/unix/moz.build @@ -326,5 +326,3 @@ if CONFIG['OS_ARCH'] == 'Linux': ] FINAL_LIBRARY = 'xpcom_core' - -NO_PGO = True diff --git a/xpcom/reflect/xptcall/src/md/win32/Makefile.in b/xpcom/reflect/xptcall/src/md/win32/Makefile.in index 6180ad7af8b8..2273c048426b 100644 --- a/xpcom/reflect/xptcall/src/md/win32/Makefile.in +++ b/xpcom/reflect/xptcall/src/md/win32/Makefile.in @@ -7,6 +7,14 @@ MOZILLA_INTERNAL_API = 1 LOCAL_INCLUDES += -I$(srcdir)/../../../../xptinfo/src + +ifneq ($(TARGET_CPU),x86_64) +ifndef GNU_CXX +# FIXME: bug 413019 +NO_PROFILE_GUIDED_OPTIMIZE = 1 +endif #!GNU_CXX +endif #!x86_64 + include $(topsrcdir)/config/rules.mk LOCAL_INCLUDES += -I$(srcdir)/../.. diff --git a/xpcom/reflect/xptcall/src/md/win32/moz.build b/xpcom/reflect/xptcall/src/md/win32/moz.build index 141d4cd01bae..9fd13f5708bc 100644 --- a/xpcom/reflect/xptcall/src/md/win32/moz.build +++ b/xpcom/reflect/xptcall/src/md/win32/moz.build @@ -35,8 +35,3 @@ else: ] FINAL_LIBRARY = 'xpcom_core' - -if CONFIG['TARGET_CPU'] != 'x86_64': - if not CONFIG['GNU_CXX']: - # FIXME: bug 413019 - NO_PGO = True