DynamoRIO / DynamoRIO/dynamorio

Create project-wide header to share defines

Open
#8,001 0 comments 0 reactions 1 assignee Claimed by @derekbruening View on GitHub
Dominant language
C
Stars
3.2k
Forks
629
Avg merge
2d 15h
Merged PRs (30d)
31

Description

This issue is about two types of defines that apply to all our code:
+ Platform defines LINUX, MACOS, X64, X86_64, etc., and derived macros IF_WINDOWS, etc.
+ Other defines ALIGN_BACKWARD, BUFFER_SIZE_ELEMENTS, TESTALL, etc.

ASSERT and logging defines by necessity vary as different domains have different error reporting and logging environments; these are not part of the discussion here.

Today we duplicate some of these for our different domains:
+ suite/tests/*tools.h duplicates a number of the core/ defines, for use in tests
+ drcachesim/common/utils.h also duplicates
+ drcachesim/CMakeLists.txt duplicates platform defines

The proposal here is to create a top-level common/dr_project_wide_defines.h header that includes utilty defines that apply to all domains, to share the same defines across core/, suite/, clients/, and tools/.

For the platform defines: we already have configure.h; maybe clients/drcachesim/ should be including that?

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.