Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 9 additions & 2 deletions Source/ThirdParty/ANGLE/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,12 @@ set(ANGLE_SOURCES
src/libANGLE/capture/serialize_mock.cpp
)

if (USE_LINUX_FTRACE)
list(APPEND ANGLE_DEFINITIONS
ANGLE_ENABLE_DEBUG_TRACE=1
)
endif()

if (WIN32)
# FIXME: DX11 support will not compile if this preprocessor definition is set
# DirectX Documentation is setting that version to 0x700 but there is no
Expand Down Expand Up @@ -120,8 +126,8 @@ set(zlib_wrapper_sources
)

set(angle_gl_enum_utils
"src/libANGLE/gl_enum_utils.cpp"
"src/libANGLE/gl_enum_utils_autogen.cpp"
"src/common/gl_enum_utils.cpp"
"src/common/gl_enum_utils_autogen.cpp"
)

WEBKIT_INCLUDE_CONFIG_FILES_IF_EXISTS()
Expand All @@ -140,6 +146,7 @@ if (USE_ANGLE_EGL OR ENABLE_WEBGL)
${libangle_image_util_headers}
${xxhash_sources}
${zlib_wrapper_sources}
${angle_gl_enum_utils}
)
target_include_directories(ANGLE PRIVATE ${ANGLE_PRIVATE_INCLUDE_DIRECTORIES})
target_compile_definitions(ANGLE PRIVATE
Expand Down
10 changes: 10 additions & 0 deletions Source/ThirdParty/ANGLE/include/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,16 @@ if (ENABLE_WEBGL)
)
endif ()

if (USE_LINUX_FTRACE)
set(platform_headers ${includes})
list(FILTER platform_headers INCLUDE REGEX "platform/PlatformMethods.h")

WEBKIT_COPY_FILES(ANGLEPlatformHeaders
DESTINATION ${ANGLE_FRAMEWORK_HEADERS_DIR}/ANGLE
FILES ${platform_headers}
)
endif()

# Cocoa expects headers in an ANGLE directory
WEBKIT_COPY_FILES(GLSLANGHeaders
DESTINATION ${ANGLE_FRAMEWORK_HEADERS_DIR}/ANGLE
Expand Down
12 changes: 11 additions & 1 deletion Source/ThirdParty/skia/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -850,12 +850,14 @@ add_library(Skia STATIC
src/sksl/transform/SkSLEliminateDeadLocalVariables.cpp
src/sksl/transform/SkSLEliminateEmptyStatements.cpp
src/sksl/transform/SkSLEliminateUnreachableCode.cpp
src/sksl/transform/SkSLEliminateUnnecessaryBraces.cpp
src/sksl/transform/SkSLFindAndDeclareBuiltinFunctions.cpp
src/sksl/transform/SkSLFindAndDeclareBuiltinStructs.cpp
src/sksl/transform/SkSLFindAndDeclareBuiltinVariables.cpp
src/sksl/transform/SkSLHoistSwitchVarDeclarationsAtTopLevel.cpp
src/sksl/transform/SkSLRenamePrivateSymbols.cpp
src/sksl/transform/SkSLReplaceConstVarsWithLiterals.cpp
src/sksl/transform/SkSLReplaceSplatCastsWithSwizzles.cpp
src/sksl/transform/SkSLRewriteIndexedSwizzle.cpp

src/utils/SkCharToGlyphCache.cpp
Expand All @@ -871,6 +873,9 @@ add_library(Skia STATIC
src/utils/SkShaderUtils.cpp
src/utils/SkShadowTessellator.cpp
src/utils/SkShadowUtils.cpp
src/utils/SkJSON.cpp
src/utils/SkParse.cpp
src/utils/SkEventTracer.cpp

src/opts/SkOpts_hsw.cpp
src/opts/SkOpts_skx.cpp
Expand Down Expand Up @@ -962,7 +967,6 @@ target_compile_definitions(Skia PUBLIC
SK_DISABLE_LEGACY_IMAGE_READBUFFER
SK_DISABLE_LEGACY_INIT_DECODERS
SK_DISABLE_LEGACY_PNG_WRITEBUFFER
SK_DISABLE_TRACING
SK_DISABLE_WEBGL_INTERFACE

SK_ENABLE_PRECOMPILE
Expand All @@ -975,6 +979,12 @@ target_compile_definitions(Skia PUBLIC
SK_RELEASE
)

if (NOT USE_LINUX_FTRACE)
target_compile_definitions(Skia PUBLIC
SK_DISABLE_TRACING
)
endif()

#
# This saves some reference churning and ctor/dtor calls in the
# implementation of the sk_sp<> smart pointer template. It needs to
Expand Down
35 changes: 34 additions & 1 deletion Source/WTF/wtf/SystemTracing.h
Original file line number Diff line number Diff line change
Expand Up @@ -211,7 +211,7 @@ inline void tracePoint(TracePointCode code, uint64_t data1 = 0, uint64_t data2 =
UNUSED_PARAM(data3);
UNUSED_PARAM(data4);
#elif USE(LINUX_FTRACE)
SystemTracingFTrace::instance().tracePoint(code, data1);
SystemTracingFTrace::instance().tracePoint(code, data1, data2, data3, data4);
UNUSED_PARAM(data2);
UNUSED_PARAM(data3);
UNUSED_PARAM(data4);
Expand Down Expand Up @@ -420,6 +420,39 @@ enum WTFOSSignpostType {
#define WTFBeginSignpostAlwaysWithTimeDelta(pointer, name, timeDelta, ...) WTFBeginSignpostWithTimeDelta((pointer), name, (timeDelta), ##__VA_ARGS__)
#define WTFEndSignpostAlwaysWithTimeDelta(pointer, name, timeDelta, ...) WTFEndSignpostWithTimeDelta((pointer), name, (timeDelta), ##__VA_ARGS__)

#elif USE(LINUX_FTRACE)

#define WTFEmitSignpostWithPhase(phase, pointer, name, format, ...) \
do { \
if (SystemTracingFTrace::isEnabled()) \
SystemTracingFTrace::instance().addMark( \
phase, std::span(_STRINGIFY(name)), \
"p=%p" format, \
reinterpret_cast<const void*>(pointer) \
__VA_OPT__(,) __VA_ARGS__); \
} while (0)

#define WTFEmitSignpost(pointer, name, ...) \
WTFEmitSignpostWithPhase('I', pointer, name, __VA_OPT__(",") __VA_ARGS__) \

#define WTFBeginSignpost(pointer, name, ...) \
WTFEmitSignpostWithPhase('B', pointer, name, __VA_OPT__(",") __VA_ARGS__) \

#define WTFEndSignpost(pointer, name, ...) \
WTFEmitSignpostWithPhase('E', pointer, name, __VA_OPT__(",") __VA_ARGS__) \

#define WTFEmitSignpostAlways(pointer, name, ...) WTFEmitSignpost((pointer), name, ##__VA_ARGS__)
#define WTFBeginSignpostAlways(pointer, name, ...) WTFBeginSignpost((pointer), name, ##__VA_ARGS__)
#define WTFEndSignpostAlways(pointer, name, ...) WTFEndSignpost((pointer), name, ##__VA_ARGS__)

#define WTFEmitSignpostWithTimeDelta(pointer, name, timeDelta, ...) WTFEmitSignpost((pointer), name, ##__VA_ARGS__)
#define WTFBeginSignpostWithTimeDelta(pointer, name, timeDelta, ...) WTFBeginSignpost((pointer), name, ##__VA_ARGS__)
#define WTFEndSignpostWithTimeDelta(pointer, name, timeDelta, ...) WTFEndSignpost((pointer), name, ##__VA_ARGS__)

#define WTFEmitSignpostAlwaysWithTimeDelta(pointer, name, ...) WTFEmitSignpost((pointer), name, ##__VA_ARGS__)
#define WTFBeginSignpostAlwaysWithTimeDelta(pointer, name, ...) WTFBeginSignpost((pointer), name, ##__VA_ARGS__)
#define WTFEndSignpostAlwaysWithTimeDelta(pointer, name, ...) WTFEndSignpost((pointer), name, ##__VA_ARGS__)

#else

#define WTFEmitSignpost(pointer, name, ...) do { } while (0)
Expand Down
Loading