Diff
Modified: trunk/Source/_javascript_Core/Configurations/_javascript_Core.xcconfig (295064 => 295065)
--- trunk/Source/_javascript_Core/Configurations/_javascript_Core.xcconfig 2022-05-31 21:13:16 UTC (rev 295064)
+++ trunk/Source/_javascript_Core/Configurations/_javascript_Core.xcconfig 2022-05-31 21:18:44 UTC (rev 295065)
@@ -40,6 +40,11 @@
SECTORDER_FLAGS_Production[sdk=iphoneos*] = -Wl,-order_file,$(SDKROOT)/AppleInternal/OrderFiles/_javascript_Core.order;
SECTORDER_FLAGS_Production[sdk=macosx*] = -Wl,-order_file,_javascript_Core.order;
+PROFILE_DATA_PATH = $(PROFILE_DATA_PATH_INTERNAL_$(USE_INTERNAL_SDK));
+PROFILE_DATA_PATH_INTERNAL_ = $(SRCROOT)/../../Tools/Profiling/Empty.profdata;
+PROFILE_DATA_PATH_INTERNAL_YES = $(BUILT_PRODUCTS_DIR)/usr/local/include/WebKitAdditions/Profiling/_javascript_Core.profdata.compressed;
+PROFILE_DATA_PATH_INTERNAL_YES[config=Production] = $(SDK_DIR)/usr/local/include/WebKitAdditions/Profiling/_javascript_Core.profdata.compressed;
+
PROFILE_DATA_FLAGS_ENABLED = -fprofile-instr-use=$(BUILT_PRODUCTS_DIR)/DerivedSources/_javascript_Core/_javascript_Core.profdata;
PROFILE_DATA_FLAGS = $(PROFILE_DATA_FLAGS_$(CONFIGURATION)_$(WK_PLATFORM_NAME));
Modified: trunk/Source/_javascript_Core/_javascript_Core.xcodeproj/project.pbxproj (295064 => 295065)
--- trunk/Source/_javascript_Core/_javascript_Core.xcodeproj/project.pbxproj 2022-05-31 21:13:16 UTC (rev 295064)
+++ trunk/Source/_javascript_Core/_javascript_Core.xcodeproj/project.pbxproj 2022-05-31 21:18:44 UTC (rev 295065)
@@ -1827,6 +1827,7 @@
DD41FA8627CDAD3200394D95 /* LowLevelInterpreter.asm in Sources */ = {isa = PBXBuildFile; fileRef = 86A054461556451B00445157 /* LowLevelInterpreter.asm */; };
DD41FA8727CDAD4300394D95 /* LowLevelInterpreter.asm in Sources */ = {isa = PBXBuildFile; fileRef = 86A054461556451B00445157 /* LowLevelInterpreter.asm */; };
DD41FA8927CDDDEF00394D95 /* LowLevelInterpreter.asm in Sources */ = {isa = PBXBuildFile; fileRef = 86A054461556451B00445157 /* LowLevelInterpreter.asm */; };
+ DD5F74F9283EF58D0027A8C6 /* copy-profiling-data.sh in Headers */ = {isa = PBXBuildFile; fileRef = DD5F74F8283EF4380027A8C6 /* copy-profiling-data.sh */; settings = {ATTRIBUTES = (Private, ); }; };
DDB04F41278E569A008D3678 /* libWTF.a in Product Dependencies */ = {isa = PBXBuildFile; fileRef = 1498CAD3214656C400710879 /* libWTF.a */; };
DDB04F42278E56A2008D3678 /* libWTF.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1498CAD3214656C400710879 /* libWTF.a */; };
DDE99310278D087D00F60D26 /* libWebKitAdditions.a in Product Dependencies */ = {isa = PBXBuildFile; fileRef = DDE9930E278D086600F60D26 /* libWebKitAdditions.a */; };
@@ -5253,6 +5254,7 @@
DCF3D5681CD29468003D5C65 /* LazyPropertyInlines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LazyPropertyInlines.h; sourceTree = "<group>"; };
DCFDFBD71D1F5D9800FE3D72 /* B3BottomProvider.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = B3BottomProvider.h; path = b3/B3BottomProvider.h; sourceTree = "<group>"; };
DCFDFBD81D1F5D9800FE3D72 /* B3TypeMap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = B3TypeMap.h; path = b3/B3TypeMap.h; sourceTree = "<group>"; };
+ DD5F74F8283EF4380027A8C6 /* copy-profiling-data.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = "copy-profiling-data.sh"; sourceTree = "<group>"; };
DDE9930E278D086600F60D26 /* libWebKitAdditions.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libWebKitAdditions.a; sourceTree = BUILT_PRODUCTS_DIR; };
DE26E9021CB5DD0500D2BE82 /* BuiltinExecutableCreator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BuiltinExecutableCreator.h; sourceTree = "<group>"; };
DE26E9061CB5DD9600D2BE82 /* BuiltinExecutableCreator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = BuiltinExecutableCreator.cpp; sourceTree = "<group>"; };
@@ -9137,6 +9139,7 @@
children = (
535E08C9225460AB00DF00CA /* postprocess-header-rule */,
99DA00971BD598E000F4575C /* wkbuiltins */,
+ DD5F74F8283EF4380027A8C6 /* copy-profiling-data.sh */,
9959E9271BD17FA0001AA413 /* cssmin.py */,
9959E92F1BD181F6001AA413 /* generate-combined-inspector-json.py */,
99DA00AC1BD5993E00F4575C /* generate-js-builtins.py */,
@@ -10009,6 +10012,7 @@
E3FCCB642310A90D00238E72 /* ConstructorKind.h in Headers */,
A57D23F21891B5B40031C7FA /* ContentSearchUtilities.h in Headers */,
52678F911A04177C006A306D /* ControlFlowProfiler.h in Headers */,
+ DD5F74F9283EF58D0027A8C6 /* copy-profiling-data.sh in Headers */,
C4F4B6F41A05C944005CAB76 /* cpp_generator.py in Headers */,
C4F4B6F31A05C944005CAB76 /* cpp_generator_templates.py in Headers */,
0F30D7C01D95D6320053089D /* CPU.h in Headers */,
@@ -12106,9 +12110,9 @@
inputFileListPaths = (
);
inputPaths = (
- "$(BUILT_PRODUCTS_DIR)/usr/local/include/WebKitAdditions/Profiling/_javascript_Core.profdata.compressed",
+ "$(PROFILE_DATA_PATH)",
"$(SRCROOT)/../../Tools/Profiling/Empty.profdata",
- "$(SDK_DIR)/usr/local/include/WebKitAdditions/Profiling/_javascript_Core.profdata.compressed",
+ "$(SRCROOT)/Scripts/copy-profiling-data.sh",
);
name = "Copy Profiling Data";
outputFileListPaths = (
@@ -12118,7 +12122,7 @@
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "if [ \"${ACTION}\" = \"installhdrs\" -o \"${ACTION}\" = \"installapi\" ]; then\n exit 0;\nfi\n\nif [ -z \"${PROFILE_DATA_FLAGS}\" ]; then\n exit 0;\nfi\n\nRELATIVE_PROFILE_DATA_PATH=\"usr/local/include/WebKitAdditions/Profiling/_javascript_Core.profdata.compressed\";\nABSOLUTE_PROFILE_DATA_PATH=\"${BUILT_PRODUCTS_DIR}/${RELATIVE_PROFILE_DATA_PATH}\";\n\nif [ ! -f \"${ABSOLUTE_PROFILE_DATA_PATH}\" ]; then\n ABSOLUTE_PROFILE_DATA_PATH=\"${SDK_DIR}/${RELATIVE_PROFILE_DATA_PATH}\";\nfi\n\nif [ ! -f \"${ABSOLUTE_PROFILE_DATA_PATH}\" ] || [ $(wc -c <${ABSOLUTE_PROFILE_DATA_PATH}) -lt 4096 ]; then\n if [ \"${CONFIGURATION}\" = \"Production\" ]; then\n echo \"Error: production build missing profiling data at both ${ABSOLUTE_PROFILE_DATA_PATH} and ${BUILT_PRODUCTS_DIR}/${RELATIVE_PROFILE_DATA_PATH}\";\n
exit 1;\n fi\n echo \"Missing or invalid profiling data at both ${ABSOLUTE_PROFILE_DATA_PATH} and ${BUILT_PRODUCTS_DIR}/${RELATIVE_PROFILE_DATA_PATH} - falling back to empty file\";\n cp ${SRCROOT}/../../Tools/Profiling/Empty.profdata ${BUILT_PRODUCTS_DIR}/DerivedSources/_javascript_Core/_javascript_Core.profdata;\nelse\n echo \"Copying profiling data at ${ABSOLUTE_PROFILE_DATA_PATH}\";\n compression_tool -decode -i ${ABSOLUTE_PROFILE_DATA_PATH} -o ${BUILT_PRODUCTS_DIR}/DerivedSources/_javascript_Core/_javascript_Core.profdata -a lzfse;\nfi\n";
+ shellScript = "if [ \"${ACTION}\" = \"installhdrs\" -o \"${ACTION}\" = \"installapi\" ]; then\n exit 0;\nfi\n${SCRIPT_INPUT_FILE_2}\n";
};
/* End PBXShellScriptBuildPhase section */
Added: trunk/Source/_javascript_Core/Scripts/copy-profiling-data.sh (0 => 295065)
--- trunk/Source/_javascript_Core/Scripts/copy-profiling-data.sh (rev 0)
+++ trunk/Source/_javascript_Core/Scripts/copy-profiling-data.sh 2022-05-31 21:18:44 UTC (rev 295065)
@@ -0,0 +1,24 @@
+#!/bin/sh
+
+if [ -z "${PROFILE_DATA_FLAGS}" ]; then
+ exit 0;
+fi
+
+input_profdata="${SCRIPT_INPUT_FILE_0}"
+input_profdata_type="$(file -b "${input_profdata}")"
+
+fallback_decompressed_profdata="${SCRIPT_INPUT_FILE_1}"
+derived_decompressed_profdata="${SCRIPT_OUTPUT_FILE_0}"
+
+if [[ "${input_profdata_type}" = "lzfse compressed"* ]]; then
+ set -x; compression_tool -decode -i "${input_profdata}" -o "${derived_decompressed_profdata}" -a lzfse
+elif [[ "${input_profdata_type}" = "LLVM indexed profile data"* ]]; then
+ set -x; cp "${input_profdata}" "${derived_decompressed_profdata}"
+elif [ "${CONFIGURATION}" != Production ] && [ "${input_profdata}" != "${fallback_decompressed_profdata}" ]; then
+ echo "warning: unrecognized profiling data at ${input_profdata}, falling back to stub data"
+ set -x; cp "${fallback_decompressed_profdata}" "${derived_decompressed_profdata}"
+else
+ echo "error: unrecognized profiling data at ${input_profdata}"
+ exit 1
+fi
+
Property changes on: trunk/Source/_javascript_Core/Scripts/copy-profiling-data.sh
___________________________________________________________________
Added: svn:executable
+*
\ No newline at end of property
Modified: trunk/Source/WebCore/Configurations/WebCore.xcconfig (295064 => 295065)
--- trunk/Source/WebCore/Configurations/WebCore.xcconfig 2022-05-31 21:13:16 UTC (rev 295064)
+++ trunk/Source/WebCore/Configurations/WebCore.xcconfig 2022-05-31 21:18:44 UTC (rev 295065)
@@ -29,6 +29,11 @@
GCC_PREFIX_HEADER = WebCorePrefix.h;
GCC_PREPROCESSOR_DEFINITIONS = $(DEBUG_DEFINES) BUILDING_WEBKIT GL_SILENCE_DEPRECATION=1 GLES_SILENCE_DEPRECATION=1 $(inherited);
+PROFILE_DATA_PATH = $(PROFILE_DATA_PATH_INTERNAL_$(USE_INTERNAL_SDK));
+PROFILE_DATA_PATH_INTERNAL_ = $(SRCROOT)/../../Tools/Profiling/Empty.profdata;
+PROFILE_DATA_PATH_INTERNAL_YES = $(BUILT_PRODUCTS_DIR)/usr/local/include/WebKitAdditions/Profiling/WebCore.profdata.compressed;
+PROFILE_DATA_PATH_INTERNAL_YES[config=Production] = $(SDK_DIR)/usr/local/include/WebKitAdditions/Profiling/WebCore.profdata.compressed;
+
PROFILE_DATA_FLAGS_ENABLED = -fprofile-instr-use=$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/WebCore.profdata;
PROFILE_DATA_FLAGS = $(PROFILE_DATA_FLAGS_$(CONFIGURATION)_$(WK_PLATFORM_NAME));
Modified: trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj (295064 => 295065)
--- trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj 2022-05-31 21:13:16 UTC (rev 295064)
+++ trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj 2022-05-31 21:18:44 UTC (rev 295065)
@@ -38939,9 +38939,9 @@
inputFileListPaths = (
);
inputPaths = (
- "$(BUILT_PRODUCTS_DIR)/usr/local/include/WebKitAdditions/Profiling/WebCore.profdata.compressed",
+ "$(PROFILE_DATA_PATH)",
"$(SRCROOT)/../../Tools/Profiling/Empty.profdata",
- "$(SDK_DIR)/usr/local/include/WebKitAdditions/Profiling/WebCore.profdata.compressed",
+ "$(_javascript_CORE_PRIVATE_HEADERS_DIR)/copy-profiling-data.sh",
);
name = "Copy Profiling Data";
outputFileListPaths = (
@@ -38951,7 +38951,7 @@
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "if [ \"${ACTION}\" = \"installhdrs\" -o \"${ACTION}\" = \"installapi\" ]; then\n exit 0;\nfi\n\nif [ -z \"${PROFILE_DATA_FLAGS}\" ]; then\n exit 0;\nfi\n\nRELATIVE_PROFILE_DATA_PATH=\"usr/local/include/WebKitAdditions/Profiling/WebCore.profdata.compressed\";\nABSOLUTE_PROFILE_DATA_PATH=\"${BUILT_PRODUCTS_DIR}/${RELATIVE_PROFILE_DATA_PATH}\";\n\nif [ ! -f \"${ABSOLUTE_PROFILE_DATA_PATH}\" ]; then\n ABSOLUTE_PROFILE_DATA_PATH=\"${SDK_DIR}/${RELATIVE_PROFILE_DATA_PATH}\";\nfi\n\nif [ ! -f \"${ABSOLUTE_PROFILE_DATA_PATH}\" ] || [ $(wc -c <${ABSOLUTE_PROFILE_DATA_PATH}) -lt 4096 ]; then\n if [ \"${CONFIGURATION}\" = \"Production\" ]; then\n echo \"Error: production build missing profiling data at both ${ABSOLUTE_PROFILE_DATA_PATH} and ${BUILT_PRODUCTS_DIR}/${RELATIVE_PROFILE_DATA_PATH}\";\n exit 1
;\n fi\n echo \"Missing or invalid profiling data at both ${ABSOLUTE_PROFILE_DATA_PATH} and ${BUILT_PRODUCTS_DIR}/${RELATIVE_PROFILE_DATA_PATH} - falling back to empty file\";\n cp ${SRCROOT}/../../Tools/Profiling/Empty.profdata ${BUILT_PRODUCTS_DIR}/DerivedSources/WebCore/WebCore.profdata;\nelse\n echo \"Copying profiling data at ${ABSOLUTE_PROFILE_DATA_PATH}\";\n compression_tool -decode -i ${ABSOLUTE_PROFILE_DATA_PATH} -o ${BUILT_PRODUCTS_DIR}/DerivedSources/WebCore/WebCore.profdata -a lzfse;\nfi\n";
+ shellScript = "if [ \"${ACTION}\" = \"installhdrs\" -o \"${ACTION}\" = \"installapi\" ]; then\n exit 0;\nfi\n${SCRIPT_INPUT_FILE_2}\n";
};
/* End PBXShellScriptBuildPhase section */
Modified: trunk/Source/WebKit/Configurations/BaseTarget.xcconfig (295064 => 295065)
--- trunk/Source/WebKit/Configurations/BaseTarget.xcconfig 2022-05-31 21:13:16 UTC (rev 295064)
+++ trunk/Source/WebKit/Configurations/BaseTarget.xcconfig 2022-05-31 21:18:44 UTC (rev 295065)
@@ -50,6 +50,11 @@
HEADER_SEARCH_PATHS = $(ALTERNATE_HEADER_SEARCH_PATHS) $(BUILT_PRODUCTS_DIR)/usr/local/include "$(WEBCORE_PRIVATE_HEADERS_DIR)/ForwardingHeaders" $(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit $(WEBGPU_HEADER_SEARCH_PATHS) $(WEBKITADDITIONS_HEADER_SEARCH_PATHS) $(LIBWEBRTC_HEADER_SEARCH_PATHS) $(SRCROOT) $(HEADER_SEARCH_PATHS);
+PROFILE_DATA_PATH = $(PROFILE_DATA_PATH_INTERNAL_$(USE_INTERNAL_SDK));
+PROFILE_DATA_PATH_INTERNAL_ = $(SRCROOT)/../../Tools/Profiling/Empty.profdata;
+PROFILE_DATA_PATH_INTERNAL_YES = $(BUILT_PRODUCTS_DIR)/usr/local/include/WebKitAdditions/Profiling/WebKit.profdata.compressed;
+PROFILE_DATA_PATH_INTERNAL_YES[config=Production] = $(SDK_DIR)/usr/local/include/WebKitAdditions/Profiling/WebKit.profdata.compressed;
+
PROFILE_DATA_FLAGS_ENABLED = -fprofile-instr-use=$(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit/WebKit.profdata;
PROFILE_DATA_FLAGS = $(PROFILE_DATA_FLAGS_$(CONFIGURATION)_$(WK_PLATFORM_NAME));
Modified: trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj (295064 => 295065)
--- trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj 2022-05-31 21:13:16 UTC (rev 295064)
+++ trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj 2022-05-31 21:18:44 UTC (rev 295065)
@@ -16567,9 +16567,9 @@
inputFileListPaths = (
);
inputPaths = (
- "$(BUILT_PRODUCTS_DIR)/usr/local/include/WebKitAdditions/Profiling/WebKit.profdata.compressed",
+ "$(PROFILE_DATA_PATH)",
"$(SRCROOT)/../../Tools/Profiling/Empty.profdata",
- "$(SDK_DIR)/usr/local/include/WebKitAdditions/Profiling/WebKit.profdata.compressed",
+ "$(_javascript_CORE_PRIVATE_HEADERS_DIR)/copy-profiling-data.sh",
);
name = "Copy Profiling Data";
outputFileListPaths = (
@@ -16579,7 +16579,7 @@
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "if [ \"${ACTION}\" = \"installhdrs\" -o \"${ACTION}\" = \"installapi\" ]; then\n exit 0;\nfi\n\nif [ -z \"${PROFILE_DATA_FLAGS}\" ]; then\n exit 0;\nfi\n\nRELATIVE_PROFILE_DATA_PATH=\"usr/local/include/WebKitAdditions/Profiling/WebKit.profdata.compressed\";\nABSOLUTE_PROFILE_DATA_PATH=\"${BUILT_PRODUCTS_DIR}/${RELATIVE_PROFILE_DATA_PATH}\";\n\nif [ ! -f \"${ABSOLUTE_PROFILE_DATA_PATH}\" ]; then\n ABSOLUTE_PROFILE_DATA_PATH=\"${SDK_DIR}/${RELATIVE_PROFILE_DATA_PATH}\";\nfi\n\nif [ ! -f \"${ABSOLUTE_PROFILE_DATA_PATH}\" ] || [ $(wc -c <${ABSOLUTE_PROFILE_DATA_PATH}) -lt 4096 ]; then\n if [ \"${CONFIGURATION}\" = \"Production\" ]; then\n echo \"Error: production build missing profiling data at both ${ABSOLUTE_PROFILE_DATA_PATH} and ${BUILT_PRODUCTS_DIR}/${RELATIVE_PROFILE_DATA_PATH}\";\n exit 1;
\n fi\n echo \"Missing or invalid profiling data at both ${ABSOLUTE_PROFILE_DATA_PATH} and ${BUILT_PRODUCTS_DIR}/${RELATIVE_PROFILE_DATA_PATH} - falling back to empty file\";\n cp ${SRCROOT}/../../Tools/Profiling/Empty.profdata ${BUILT_PRODUCTS_DIR}/DerivedSources/WebKit/WebKit.profdata;\nelse\n echo \"Copying profiling data at ${ABSOLUTE_PROFILE_DATA_PATH}\";\n compression_tool -decode -i ${ABSOLUTE_PROFILE_DATA_PATH} -o ${BUILT_PRODUCTS_DIR}/DerivedSources/WebKit/WebKit.profdata -a lzfse;\nfi\n";
+ shellScript = "if [ \"${ACTION}\" = \"installhdrs\" -o \"${ACTION}\" = \"installapi\" ]; then\n exit 0;\nfi\n${SCRIPT_INPUT_FILE_2}\n";
};
/* End PBXShellScriptBuildPhase section */