Code Monkey home page Code Monkey logo

drcctprof's Introduction

DrCCTProf

DrCCTProf is a fine-grained call path profiling framework for binaries running on ARM and X86 architectures. DrCCTProf (together with its predecessor CCTLib) won a numbe of paper awards, including ASPLOS'17 Highlight, ICSE'19 Distinguished Paper Award, SC'20 Best Paper Finalist.

build master Codacy Badge license

Contents

Installation

Linux

1 Install dependencies

In order to build you'll need the following packages:

  • gcc (>= 4.8)
  • binutils (>= 2.26)
  • cmake (>= 3.7)
  • perl

To avoid version conflicts with any packages, we recommend to use Spack to manage the above packages and create a virtual environment to build and run DrCCTProf.

2 Build

Use the following commands to get source code and build DrCCTProf:

$ git clone --recurse https://github.com/Xuhpclab/DrCCTProf.git
$ ./build.sh

Usage

Linux

To run DrCCTProf, one needs to use the following command:

1 Set the global environment variable

$ export drrun=/path/to/DrCCTProf/build/bin64/drrun

2 Run client tool

  • x86_64
$ $drrun -t <client tool> -- <application> [apllication args]

e.g. The command below will start the client drcctlib_instr_statistics_clean_call to analyze echo "Hello World!".

$ $drrun -t drcctlib_instr_statistics_clean_call -- echo "Hello World!"
  • aarch64
$ $drrun -unsafe_build_ldstex -t <client tool> -- <application> [apllication args]

Client tools

Internal client tools list

Name Features Status
drcctlib_cct_only_clean_call A tool that collects call path on each instruction. release
drcctlib_instr_statistics_clean_call A instruction counting tool that counts each instruction. release
drcctlib_reuse_distance_client_cache A reuse distance measurement tool. release
drcctlib_cct_only (Code cache mode)A tool that collects call path on each instruction. beta
drcctlib_instr_statistics (Code cache mode) A instruction counting tool that counts each instruction. beta
drcctlib_reuse_distance (Code cache mode) A reuse distance measurement tool. beta

Support Platforms

The following platforms pass our tests.

Linux

CPU System Architecture
Intel(R) Xeon(R) CPU E5-2699 v3 Ubuntu 18.04 x86_64
Intel(R) Xeon(R) CPU E5-2650 v4 Ubuntu 14.04 x86_64
Intel(R) Xeon(R) CPU E7-4830 v4 Red Hat 4.8.3 x86_64
Arm Cortex A53(Raspberry pi 3 b+) Ubuntu 18.04 aarch64
Arm Cortex-A57(Jetson Nano) Ubuntu 18.04 aarch64
ThunderX2 99xx Ubuntu 20.04 aarch64
AWS Graviton1 Ubuntu 18.04 aarch64
AWS Graviton2 Ubuntu 18.04 aarch64
Fujitsu A64FX CentOS 8.1 aarch64

Obtaining Help

Report an error case of building

Please use the build error report.

DrCCTProf is built atop DynamoRIO. If you get errors in building, you can also search the DynamoRIO's issues to get help.

Report a bug

Please use the bug report.

License

DrCCTProf is released under the MIT License.

Related Publication

  1. Milind Chabbi, Xu Liu, and John Mellor-Crummey. 2014. Call Paths for Pin Tools. In Proceedings of Annual IEEE/ACM International Symposium on Code Generation and Optimization (CGO '14). ACM, New York, NY, USA, , Pages 76 , 11 pages. DOI=http://dx.doi.org/10.1145/2544137.2544164
  2. Milind Chabbi, Wim Lavrijsen, Wibe de Jong, Koushik Sen, John Mellor-Crummey, and Costin Iancu. 2015. Barrier elision for production parallel programs. In Proceedings of the 20th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming (PPoPP 2015). ACM, New York, NY, USA, 109-119. DOI=http://dx.doi.org/10.1145/2688500.2688502
  3. Milind Chabbi and John Mellor-Crummey. 2012. DeadSpy: a tool to pinpoint program inefficiencies. In Proceedings of the Tenth International Symposium on Code Generation and Optimization (CGO '12). ACM, New York, NY, USA, 124-134. DOI=http://dx.doi.org/10.1145/2259016.2259033
  4. Shasha Wen, Xu Liu, Milind Chabbi, "Runtime Value Numbering: A Profiling Technique to Pinpoint Redundant Computations" The 24th International Conference on Parallel Architectures and Compilation Techniques (PACT'15), Oct 18-21, 2015, San Francisco, California, USA
  5. Shasha Wen, Milind Chabbi, and Xu Liu. 2017. REDSPY: Exploring Value Locality in Software. In Proceedings of the Twenty-Second International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS '17). ACM, New York, NY, USA, 47-61. DOI: https://doi.org/10.1145/3037697.3037729
  6. Pengfei Su, Shasha Wen, Hailong Yang, Milind Chabbi, and Xu Liu. 2019. Redundant Loads: A Software Inefficiency Indicator. In Proceedings of the 41st International Conference on Software Engineering (ICSE '19). IEEE Press, Piscataway, NJ, USA, 982-993. DOI: https://doi.org/10.1109/ICSE.2019.00103
  7. Jialiang Tan, Shuyin Jiao, Milind Chabbi, Xu Liu. What Every Scientific Programmer Should Know About Compiler Optimizations? The 34th ACM International Conference on Supercomputing (ICS'20), Jun 29 - Jul 2, 2020, Barcelona, Spain.
  8. Xin You, Hailong Yang, Zhongzhi Luan, Depei Qian, Xu Liu. Zerospy: Exploring the Software Inefficiencies with Redundant Zeros, The International Conference for High Performance Computing, Networking, Storage and Analysis (SC'20), Nov 15-20, 2020, Atlanta, GA, USA.
  9. Qidong Zhao, Xu Liu, Milind Chabbi. DRCCTPROF: A Fine-grained Call Path Profiler for ARM-based Clusters, The International Conference for High Performance Computing, Networking, Storage and Analysis (SC'20), Nov 15-20, 2020, Atlanta, GA, USA.

drcctprof's People

Contributors

czhong4 avatar dolanzhao avatar findhao avatar jsalzbergedu avatar osalbahr avatar xl10 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

drcctprof's Issues

Build error when including "drcctlib.h": uint8_t does not name a type

Describe the error

When building the most up-to-date version of DrCCTProf, my compilation errors when building custom clients with the following error:

[100%] Building CXX object clients/drcctlib_instr_analysis/CMakeFiles/drcctlib_instr_analysis.dir/drcctlib_instr_analysis.cpp.o
In file included from <LOCAL_DIR>/DrCCTProf/dynamorio/clients/drcctlib_instr_analysis/drcctlib_instr_analysis.cpp:2:
<LOCAL_DIR>/DrCCTProf/build/ext/include/drcctlib.h:143:5: error: ‘uint8_t’ does not name a type; did you mean ‘u_int8_t’?
  143 |     uint8_t object_type;
      |     ^~~~~~~
      |     u_int8_t

Minimum Reproducible Example

#include "dr_api.h"
#include "drcctlib.h"

// no body

Suggestions

It seems that simply including <cstdint> before drcctlib.h fixes this issue. Perhaps drcctlib.h ought to add this include?

Logs

logs/cmake.log

-- The C compiler identification is GNU 10.2.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/gcc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- The CXX compiler identification is GNU 10.2.0
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Version number: 8.0.18437
-- The ASM compiler identification is GNU
-- Found assembler: /usr/bin/as
-- Found Perl: /usr/bin/perl (found version "5.32.0") 
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of uint
-- Check size of uint - done
-- Check size of ushort
-- Check size of ushort - done
-- Check size of bool
-- Check size of bool - failed
-- Check size of byte
-- Check size of byte - failed
-- Check size of sbyte
-- Check size of sbyte - failed
-- Check size of uint32
-- Check size of uint32 - failed
-- Check size of uint64
-- Check size of uint64 - failed
-- Check size of int32
-- Check size of int32 - failed
-- Check size of int64
-- Check size of int64 - failed
-- Check size of _Bool
-- Check size of _Bool - done
-- Performing Test cxx17_available
-- Performing Test cxx17_available - Success
-- Performing Test no_stack_protector_avail
-- Performing Test no_stack_protector_avail - Success
-- Performing Test suggest_override_avail
-- Performing Test suggest_override_avail - Success
-- Performing Test nounused_avail
-- Performing Test nounused_avail - Success
-- Performing Test stringop_truncation_avail
-- Performing Test stringop_truncation_avail - Success
-- Performing Test format_truncation_avail
-- Performing Test format_truncation_avail - Success
-- Performing Test stringop_overflow_avail
-- Performing Test stringop_overflow_avail - Success
-- Performing Test HAVE_TYPELIMITS_CONTROL
-- Performing Test HAVE_TYPELIMITS_CONTROL - Success
-- Performing Test HAVE_FVISIBILITY_INTERNAL
-- Performing Test HAVE_FVISIBILITY_INTERNAL - Success
-- Performing Test HAVE_FVISIBILITY_HIDDEN
-- Performing Test HAVE_FVISIBILITY_HIDDEN - Success
-- Looking for linux/rseq.h
-- Looking for linux/rseq.h - found
-- Performing Test no_pie_avail
-- Performing Test no_pie_avail - Success
-- Found ZLIB: /usr/lib/libz.so (found version "1.2.11") 
-- Performing Test implicit_fallthrough_avail
-- Performing Test implicit_fallthrough_avail - Success
-- WARNING: vera++ not found: disabling code style checks
-- Found Qt 5: DrGUI will be built
CMake Deprecation Warning at ext/drgui/CMakeLists.txt:54 (cmake_policy):
  The OLD behavior for policy CMP0043 will be removed from a future version
  of CMake.

  The cmake-policies(7) manual explains that the OLD behaviors of all
  policies are deprecated and that a policy should be set to OLD only under
  specific short-term circumstances.  Projects should be ported to the NEW
  behavior and not rely on setting a policy to OLD.


-- Configuring done
-- Generating done
-- Build files have been written to: /home/USERNAME/test/DrCCTProf/build

logs/make.log

Scanning dependencies of target run_in_bg
[  1%] Generating moc_drgui_options_window.cpp
Scanning dependencies of target runstats
[  1%] Generating moc_drgui_main_window.cpp
Scanning dependencies of target nudgeunix
Scanning dependencies of target api_headers
Scanning dependencies of target drloader
Scanning dependencies of target drcpusim_ops
Scanning dependencies of target generate_syslog
Scanning dependencies of target drcachesim_ops
[  1%] Generating moc_drgui_tool_interface.cpp
[  1%] Generating moc_drgui_options_interface.cpp
[  1%] Building C object tools/CMakeFiles/nudgeunix.dir/nudgeunix.c.o
[  1%] Generating include/dr_app.h, include/dr_api.h
[  1%] Building C object tools/CMakeFiles/nudgeunix.dir/__/core/unix/nudgesig.c.o
[  1%] Building C object tools/CMakeFiles/run_in_bg.dir/run_in_bg.c.o
[  2%] Building CXX object clients/drcpusim/CMakeFiles/drcpusim_ops.dir/options.cpp.o
[  2%] Building C object tools/CMakeFiles/runstats.dir/runstats.c.o
[  2%] Building C object tools/CMakeFiles/drloader.dir/drloader.c.o
[  2%] Building CXX object clients/drcpusim/CMakeFiles/drcpusim_ops.dir/optionlist.cpp.o
[  2%] Building CXX object clients/drcachesim/CMakeFiles/drcachesim_ops.dir/common/options.cpp.o
[  2%] Building CXX object clients/drcachesim/CMakeFiles/drcachesim_ops.dir/optionlist.cpp.o
[  2%] Generating ../event_strings.h
[  2%] Built target generate_syslog
Scanning dependencies of target drgui
[  2%] Building CXX object ext/drgui/CMakeFiles/drgui.dir/drgui_main_window.cpp.o
[  2%] Building CXX object ext/drgui/CMakeFiles/drgui.dir/moc_drgui_options_window.cpp.o
[  2%] Building CXX object ext/drgui/CMakeFiles/drgui.dir/moc_drgui_options_interface.cpp.o
[  2%] Building CXX object ext/drgui/CMakeFiles/drgui.dir/drgui_options_window.cpp.o
[  2%] Building CXX object ext/drgui/CMakeFiles/drgui.dir/main.cpp.o
[  2%] Building CXX object ext/drgui/CMakeFiles/drgui.dir/moc_drgui_main_window.cpp.o
[  3%] Building CXX object ext/drgui/CMakeFiles/drgui.dir/moc_drgui_tool_interface.cpp.o
[  3%] Linking C executable ../bin64/drloader
Scanning dependencies of target drlibc
[  3%] Building ASM object core/CMakeFiles/drlibc.dir/drlibc/drlibc_xarch.asm.o
[  3%] Building ASM object core/CMakeFiles/drlibc.dir/drlibc/drlibc_x86.asm.o
[  4%] Building C object core/CMakeFiles/drlibc.dir/drlibc/drlibc.c.o
[  4%] Linking C executable ../bin64/run_in_bg
[  4%] Built target drloader
[  4%] Building C object core/CMakeFiles/drlibc.dir/drlibc/drlibc_notdr_dcxt.c.o
[  4%] Building C object core/CMakeFiles/drlibc.dir/drlibc/drlibc_notdr_logfile.c.o
[  4%] Linking C executable ../bin64/nudgeunix
[  4%] Building C object core/CMakeFiles/drlibc.dir/drlibc/drlibc_notdr_printlog.c.o
[  4%] Built target api_headers
[  4%] Building C object core/CMakeFiles/drlibc.dir/drlibc/drlibc_notdr_report.c.o
[  5%] Building C object core/CMakeFiles/drlibc.dir/drlibc/drlibc_notdr_saferead.c.o
[  5%] Building C object core/CMakeFiles/drlibc.dir/drlibc/drlibc_notdr_stats.c.o
[  5%] Built target run_in_bg
[  5%] Building C object core/CMakeFiles/drlibc.dir/drlibc/drlibc_unix.c.o
Scanning dependencies of target drmemtrace_histogram
[  6%] Linking C executable ../bin64/runstats
Scanning dependencies of target drmemfuncs
Scanning dependencies of target drmemtrace_reuse_time
[  6%] Building C object core/CMakeFiles/drlibc.dir/drlibc/drlibc_module_elf.c.o
Scanning dependencies of target drmemtrace_basic_counts
Scanning dependencies of target drmemtrace_reuse_distance
[  6%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_histogram.dir/tools/histogram.cpp.o
[  6%] Building ASM object core/CMakeFiles/drmemfuncs.dir/arch/x86/memfuncs.asm.o
Scanning dependencies of target drmemtrace_func_view
Scanning dependencies of target drmemtrace_simulator
[  6%] Building C object core/CMakeFiles/drmemfuncs.dir/lib/memmove.c.o
[  6%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_reuse_time.dir/tools/reuse_time.cpp.o
[  6%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_basic_counts.dir/tools/basic_counts.cpp.o
[  6%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_reuse_distance.dir/tools/reuse_distance.cpp.o
[  6%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_func_view.dir/tools/func_view.cpp.o
[  6%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_simulator.dir/simulator/simulator.cpp.o
[  6%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_simulator.dir/simulator/cache.cpp.o
[  6%] Built target nudgeunix
[  6%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_simulator.dir/simulator/cache_lru.cpp.o
[  6%] Built target runstats
[  6%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_simulator.dir/simulator/cache_fifo.cpp.o
[  7%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_simulator.dir/simulator/cache_miss_analyzer.cpp.o
[  7%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_simulator.dir/simulator/caching_device_stats.cpp.o
[  7%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_simulator.dir/simulator/caching_device.cpp.o
[  7%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_simulator.dir/simulator/cache_stats.cpp.o
[  8%] Linking C static library ../lib64/libdrmemfuncs.a
[  8%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_simulator.dir/simulator/prefetcher.cpp.o
[  8%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_simulator.dir/simulator/snoop_filter.cpp.o
[  9%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_simulator.dir/simulator/cache_simulator.cpp.o
[  9%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_simulator.dir/simulator/tlb.cpp.o
[  9%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_simulator.dir/simulator/tlb_simulator.cpp.o
[  9%] Built target drmemfuncs
[ 10%] Linking C static library ../lib64/libdrlibc.a
[ 10%] Built target drlibc
Scanning dependencies of target drpreload
Scanning dependencies of target drdecode
Scanning dependencies of target drfrontendlib
[ 10%] Building C object core/CMakeFiles/drpreload.dir/unix/preload.c.o
[ 10%] Building C object libutil/CMakeFiles/drfrontendlib.dir/dr_frontend_unix.c.o
[ 10%] Building C object core/CMakeFiles/drpreload.dir/config.c.o
[ 10%] Building C object core/CMakeFiles/drdecode.dir/ir/opnd_shared.c.o
[ 10%] Building C object core/CMakeFiles/drdecode.dir/ir/x86/opnd.c.o
[ 11%] Building C object libutil/CMakeFiles/drfrontendlib.dir/dr_frontend_common.c.o
[ 12%] Building C object core/CMakeFiles/drdecode.dir/ir/instr_shared.c.o
[ 12%] Building C object core/CMakeFiles/drdecode.dir/ir/x86/instr.c.o
[ 12%] Building C object core/CMakeFiles/drdecode.dir/ir/instrlist.c.o
[ 13%] Building C object core/CMakeFiles/drpreload.dir/string.c.o
[ 13%] Building C object core/CMakeFiles/drdecode.dir/ir/decode_shared.c.o
[ 13%] Building C object core/CMakeFiles/drpreload.dir/io.c.o
Scanning dependencies of target dynamorio_static
Scanning dependencies of target dynamorio
[ 13%] Building C object core/CMakeFiles/drdecode.dir/ir/x86/decode.c.o
[ 13%] Building C object core/CMakeFiles/drdecode.dir/ir/encode_shared.c.o
[ 14%] Building C object core/CMakeFiles/drdecode.dir/ir/x86/encode.c.o
[ 14%] Building C object core/CMakeFiles/dynamorio.dir/options.c.o
[ 15%] Building C object core/CMakeFiles/dynamorio.dir/dynamo.c.o
[ 15%] Building C object core/CMakeFiles/dynamorio_static.dir/options.c.o
[ 15%] Building C object core/CMakeFiles/drdecode.dir/ir/disassemble_shared.c.o
[ 15%] Building C object core/CMakeFiles/dynamorio.dir/fragment.c.o
[ 15%] Building C object core/CMakeFiles/dynamorio_static.dir/dynamo.c.o
[ 15%] Building C object core/CMakeFiles/dynamorio.dir/fcache.c.o
[ 16%] Building C object core/CMakeFiles/dynamorio_static.dir/fragment.c.o
/home/USERNAME/test/DrCCTProf/dynamorio/libutil/dr_frontend_unix.c: In function ‘drfront_get_env_var’:
/home/USERNAME/test/DrCCTProf/dynamorio/libutil/dr_frontend_unix.c:269:5: warning: ‘strncpy’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  269 |     strncpy(buf, tmp_buf, len_var + 1);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/USERNAME/test/DrCCTProf/dynamorio/libutil/dr_frontend_unix.c:264:15: note: length computed here
  264 |     len_var = strlen(tmp_buf);
      |               ^~~~~~~~~~~~~~~
[ 16%] Building C object core/CMakeFiles/dynamorio_static.dir/fcache.c.o
[ 16%] Building C object core/CMakeFiles/dynamorio_static.dir/link.c.o
[ 16%] Building C object core/CMakeFiles/dynamorio_static.dir/dispatch.c.o
[ 16%] Building C object core/CMakeFiles/drdecode.dir/ir/x86/disassemble.c.o
[ 16%] Building C object core/CMakeFiles/drdecode.dir/ir/ir_utils_shared.c.o
[ 17%] Building C object core/CMakeFiles/drdecode.dir/ir/x86/ir_utils.c.o
[ 17%] Building C object core/CMakeFiles/dynamorio.dir/link.c.o
[ 17%] Building C object core/CMakeFiles/dynamorio_static.dir/emit.c.o
[ 17%] Building C object core/CMakeFiles/dynamorio.dir/dispatch.c.o
[ 18%] Building C object core/CMakeFiles/dynamorio.dir/emit.c.o
[ 19%] Building C object core/CMakeFiles/dynamorio_static.dir/utils.c.o
[ 19%] Building C object core/CMakeFiles/dynamorio_static.dir/config.c.o
[ 19%] Building C object core/CMakeFiles/dynamorio.dir/utils.c.o
[ 19%] Building C object core/CMakeFiles/drdecode.dir/ir/x86/decode_table.c.o
[ 19%] Building C object core/CMakeFiles/dynamorio.dir/config.c.o
[ 19%] Building C object core/CMakeFiles/dynamorio_static.dir/stats.c.o
[ 19%] Building C object core/CMakeFiles/drdecode.dir/ir/x86/decode_fast.c.o
[ 19%] Building C object core/CMakeFiles/drdecode.dir/ir/decodelib.c.o
[ 19%] Building C object core/CMakeFiles/drdecode.dir/string.c.o
[ 20%] Building C object core/CMakeFiles/dynamorio_static.dir/perfctr.c.o
[ 20%] Building C object core/CMakeFiles/dynamorio_static.dir/monitor.c.o
[ 21%] Building C object core/CMakeFiles/drdecode.dir/io.c.o
[ 21%] Building C object core/CMakeFiles/dynamorio_static.dir/heap.c.o
[ 21%] Building C object core/CMakeFiles/dynamorio_static.dir/vmareas.c.o
[ 21%] Building C object core/CMakeFiles/dynamorio.dir/stats.c.o
[ 21%] Building C object core/CMakeFiles/dynamorio.dir/heap.c.o
[ 22%] Building C object core/CMakeFiles/dynamorio.dir/monitor.c.o
[ 22%] Building C object core/CMakeFiles/dynamorio_static.dir/rct.c.o
[ 22%] Linking C static library ../lib64/libdrfrontendlib.a
[ 22%] Building C object core/CMakeFiles/dynamorio_static.dir/hotpatch.c.o
[ 23%] Building C object core/CMakeFiles/dynamorio_static.dir/hashtable.c.o
[ 23%] Building C object core/CMakeFiles/dynamorio.dir/perfctr.c.o
[ 23%] Building C object core/CMakeFiles/dynamorio_static.dir/module_list.c.o
[ 23%] Building C object core/CMakeFiles/dynamorio.dir/vmareas.c.o
[ 23%] Building C object core/CMakeFiles/dynamorio.dir/rct.c.o
[ 24%] Building C object core/CMakeFiles/dynamorio.dir/hotpatch.c.o
[ 24%] Building C object core/CMakeFiles/dynamorio_static.dir/moduledb.c.o
[ 24%] Building C object core/CMakeFiles/dynamorio_static.dir/perscache.c.o
[ 24%] Building C object core/CMakeFiles/dynamorio_static.dir/nudge.c.o
[ 25%] Building C object core/CMakeFiles/dynamorio_static.dir/synch.c.o
[ 25%] Building C object core/CMakeFiles/dynamorio.dir/hashtable.c.o
[ 25%] Building C object core/CMakeFiles/dynamorio.dir/module_list.c.o
[ 25%] Building C object core/CMakeFiles/dynamorio.dir/moduledb.c.o
[ 25%] Building C object core/CMakeFiles/dynamorio.dir/perscache.c.o
[ 25%] Building C object core/CMakeFiles/dynamorio_static.dir/buildmark.c.o
[ 25%] Building C object core/CMakeFiles/dynamorio_static.dir/loader_shared.c.o
[ 25%] Building C object core/CMakeFiles/dynamorio_static.dir/io.c.o
[ 25%] Building C object core/CMakeFiles/dynamorio_static.dir/native_exec.c.o
[ 26%] Building C object core/CMakeFiles/dynamorio.dir/nudge.c.o
[ 26%] Building C object core/CMakeFiles/dynamorio.dir/synch.c.o
[ 26%] Building C object core/CMakeFiles/dynamorio.dir/buildmark.c.o
[ 26%] Building C object core/CMakeFiles/dynamorio.dir/loader_shared.c.o
[ 27%] Building C object core/CMakeFiles/dynamorio_static.dir/lib/instrument.c.o
[ 27%] Building C object core/CMakeFiles/dynamorio_static.dir/translate.c.o
[ 27%] Built target drfrontendlib
[ 27%] Building C object core/CMakeFiles/dynamorio_static.dir/jit_opt.c.o
[ 27%] Building C object core/CMakeFiles/dynamorio_static.dir/annotations.c.o
[ 27%] Building C object core/CMakeFiles/dynamorio.dir/io.c.o
[ 28%] Building C object core/CMakeFiles/dynamorio.dir/native_exec.c.o
[ 28%] Building C object core/CMakeFiles/dynamorio.dir/lib/instrument.c.o
Scanning dependencies of target directory_iterator
Scanning dependencies of target drconfiglib
[ 28%] Building C object core/CMakeFiles/dynamorio.dir/annotations.c.o
[ 28%] Building C object core/CMakeFiles/dynamorio.dir/translate.c.o
[ 29%] Building C object core/CMakeFiles/dynamorio_static.dir/string.c.o
[ 29%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/arch.c.o
[ 29%] Building CXX object clients/drcachesim/CMakeFiles/directory_iterator.dir/common/directory_iterator.cpp.o
[ 29%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/emit_utils_shared.c.o
[ 29%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/x86/emit_utils.c.o
[ 29%] Building C object libutil/CMakeFiles/drconfiglib.dir/dr_config.c.o
[ 29%] Building C object core/CMakeFiles/dynamorio_static.dir/ir/opnd_shared.c.o
[ 29%] Building C object libutil/CMakeFiles/drconfiglib.dir/utils.c.o
[ 30%] Building C object core/CMakeFiles/dynamorio.dir/jit_opt.c.o
[ 31%] Building C object libutil/CMakeFiles/drconfiglib.dir/__/core/io.c.o
[ 31%] Building C object core/CMakeFiles/dynamorio.dir/string.c.o
[ 32%] Building C object core/CMakeFiles/dynamorio_static.dir/ir/x86/opnd.c.o
[ 32%] Building C object core/CMakeFiles/dynamorio.dir/arch/arch.c.o
[ 32%] Building C object libutil/CMakeFiles/drconfiglib.dir/__/core/unix/nudgesig.c.o
[ 32%] Building C object core/CMakeFiles/dynamorio_static.dir/ir/instr_shared.c.o
[ 32%] Building C object core/CMakeFiles/dynamorio.dir/arch/emit_utils_shared.c.o
[ 32%] Building C object core/CMakeFiles/dynamorio_static.dir/ir/x86/instr.c.o
[ 32%] Building C object core/CMakeFiles/dynamorio_static.dir/ir/instrlist.c.o
[ 32%] Building C object core/CMakeFiles/dynamorio.dir/arch/x86/emit_utils.c.o
[ 33%] Building C object core/CMakeFiles/dynamorio_static.dir/ir/x86/decode.c.o
[ 33%] Building C object core/CMakeFiles/dynamorio_static.dir/ir/decode_shared.c.o
[ 34%] Building C object core/CMakeFiles/dynamorio.dir/ir/opnd_shared.c.o
[ 34%] Building C object core/CMakeFiles/dynamorio.dir/ir/x86/opnd.c.o
[ 34%] Building C object core/CMakeFiles/dynamorio.dir/ir/instr_shared.c.o
[ 34%] Building C object core/CMakeFiles/dynamorio_static.dir/ir/encode_shared.c.o
[ 34%] Building C object core/CMakeFiles/dynamorio.dir/ir/x86/instr.c.o
[ 34%] Building C object core/CMakeFiles/dynamorio_static.dir/ir/x86/encode.c.o
[ 34%] Building C object core/CMakeFiles/dynamorio_static.dir/ir/disassemble_shared.c.o
[ 34%] Building C object core/CMakeFiles/dynamorio.dir/ir/instrlist.c.o
[ 35%] Building C object core/CMakeFiles/dynamorio.dir/ir/decode_shared.c.o
[ 35%] Building C object core/CMakeFiles/dynamorio.dir/ir/x86/decode.c.o
[ 36%] Building C object core/CMakeFiles/dynamorio_static.dir/ir/x86/disassemble.c.o
[ 36%] Building C object core/CMakeFiles/dynamorio.dir/ir/encode_shared.c.o
[ 36%] Building C object core/CMakeFiles/dynamorio_static.dir/ir/ir_utils_shared.c.o
[ 36%] Building C object core/CMakeFiles/dynamorio_static.dir/ir/x86/ir_utils.c.o
[ 37%] Building C object core/CMakeFiles/dynamorio.dir/ir/disassemble_shared.c.o
[ 37%] Building C object core/CMakeFiles/dynamorio.dir/ir/x86/encode.c.o
[ 37%] Building C object core/CMakeFiles/dynamorio_static.dir/ir/x86/decode_table.c.o
[ 37%] Building C object core/CMakeFiles/dynamorio_static.dir/ir/x86/decode_fast.c.o
[ 37%] Building C object core/CMakeFiles/dynamorio.dir/ir/x86/disassemble.c.o
[ 37%] Linking CXX executable ../bin64/drcpusim_ops
[ 37%] Building C object core/CMakeFiles/dynamorio.dir/ir/ir_utils_shared.c.o
[ 37%] Building C object core/CMakeFiles/dynamorio.dir/ir/x86/ir_utils.c.o
[ 38%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/interp.c.o
[ 38%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/proc_shared.c.o
[ 38%] Building C object core/CMakeFiles/dynamorio.dir/ir/x86/decode_table.c.o
[ 38%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/x86/proc.c.o
[ 39%] Building C object core/CMakeFiles/dynamorio.dir/ir/x86/decode_fast.c.o
[ 39%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/mangle_shared.c.o
[ 39%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/x86/mangle.c.o
[ 39%] Building C object core/CMakeFiles/dynamorio.dir/arch/proc_shared.c.o
[ 39%] Building C object core/CMakeFiles/dynamorio.dir/arch/interp.c.o
[ 39%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/x86/clean_call_opt.c.o
[ 40%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/clean_call_opt_shared.c.o
In file included from /home/USERNAME/test/DrCCTProf/dynamorio/libutil/dr_config.c:42:
/home/USERNAME/test/DrCCTProf/dynamorio/libutil/dr_config.c: In function ‘read_options’:
/home/USERNAME/test/DrCCTProf/dynamorio/libutil/dr_frontend.h:105:22: warning: ‘strncpy’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  105 | #    define _tcsncpy strncpy
/home/USERNAME/test/DrCCTProf/dynamorio/libutil/dr_config.c:775:5: note: in expansion of macro ‘_tcsncpy’
  775 |     _tcsncpy(tmp, ptr, len);
      |     ^~~~~~~~
In file included from /home/USERNAME/test/DrCCTProf/dynamorio/libutil/share.h:68,
                 from /home/USERNAME/test/DrCCTProf/dynamorio/libutil/utils.h:37,
                 from /home/USERNAME/test/DrCCTProf/dynamorio/libutil/dr_config.c:37:
/home/USERNAME/test/DrCCTProf/dynamorio/libutil/dr_frontend.h:101:21: note: length computed here
  101 | #    define _tcslen strlen
/home/USERNAME/test/DrCCTProf/dynamorio/core/lib/globals_shared.h:441:32: note: in definition of macro ‘MIN’
  441 | #    define MIN(x, y) ((x) <= (y) ? (x) : (y))
      |                                ^
/home/USERNAME/test/DrCCTProf/dynamorio/libutil/dr_config.c:774:42: note: in expansion of macro ‘_tcslen’
  774 |     len = MIN(DR_MAX_OPTIONS_LENGTH - 1, _tcslen(ptr));
      |                                          ^~~~~~~
In file included from /home/USERNAME/test/DrCCTProf/dynamorio/libutil/dr_config.c:42:
In function ‘add_extra_option’,
    inlined from ‘add_extra_option’ at /home/USERNAME/test/DrCCTProf/dynamorio/libutil/dr_config.c:287:1,
    inlined from ‘read_options’ at /home/USERNAME/test/DrCCTProf/dynamorio/libutil/dr_config.c:887:17:
/home/USERNAME/test/DrCCTProf/dynamorio/libutil/dr_frontend.h:105:22: warning: ‘strncpy’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  105 | #    define _tcsncpy strncpy
/home/USERNAME/test/DrCCTProf/dynamorio/libutil/dr_config.c:299:9: note: in expansion of macro ‘_tcsncpy’
  299 |         _tcsncpy(opt_info->extra_opts[idx], opt, len);
      |         ^~~~~~~~
In file included from /home/USERNAME/test/DrCCTProf/dynamorio/libutil/share.h:68,
                 from /home/USERNAME/test/DrCCTProf/dynamorio/libutil/utils.h:37,
                 from /home/USERNAME/test/DrCCTProf/dynamorio/libutil/dr_config.c:37:
/home/USERNAME/test/DrCCTProf/dynamorio/libutil/dr_config.c: In function ‘read_options’:
/home/USERNAME/test/DrCCTProf/dynamorio/libutil/dr_frontend.h:101:21: note: length computed here
  101 | #    define _tcslen strlen
/home/USERNAME/test/DrCCTProf/dynamorio/core/lib/globals_shared.h:441:32: note: in definition of macro ‘MIN’
  441 | #    define MIN(x, y) ((x) <= (y) ? (x) : (y))
      |                                ^
/home/USERNAME/test/DrCCTProf/dynamorio/libutil/dr_config.c:296:46: note: in expansion of macro ‘_tcslen’
  296 |         len = MIN(DR_MAX_OPTIONS_LENGTH - 1, _tcslen(opt));
      |                                              ^~~~~~~
[ 40%] Building C object core/CMakeFiles/dynamorio.dir/arch/x86/proc.c.o
[ 40%] Building C object core/CMakeFiles/dynamorio.dir/arch/mangle_shared.c.o
[ 41%] Building C object core/CMakeFiles/dynamorio.dir/arch/x86/mangle.c.o
[ 41%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/steal_reg.c.o
[ 41%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/x86_code.c.o
[ 42%] Building ASM object core/CMakeFiles/dynamorio_static.dir/arch/x86/x86.asm.o
[ 42%] Building C object core/CMakeFiles/dynamorio.dir/arch/clean_call_opt_shared.c.o
[ 42%] Building C object core/CMakeFiles/dynamorio.dir/arch/x86/clean_call_opt.c.o
[ 42%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/x86/optimize.c.o
[ 42%] Building C object core/CMakeFiles/dynamorio.dir/arch/steal_reg.c.o
[ 42%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/sideline.c.o
[ 43%] Building C object core/CMakeFiles/dynamorio.dir/arch/x86_code.c.o
[ 43%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/retcheck.c.o
[ 43%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/x86/x86_to_x64.c.o
[ 43%] Building ASM object core/CMakeFiles/dynamorio.dir/arch/x86/x86.asm.o
[ 44%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/os.c.o
[ 44%] Building C object core/CMakeFiles/dynamorio.dir/arch/x86/optimize.c.o
[ 44%] Building C object core/CMakeFiles/dynamorio.dir/arch/sideline.c.o
[ 44%] Building C object core/CMakeFiles/dynamorio.dir/arch/retcheck.c.o
[ 44%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/signal.c.o
[ 45%] Building C object core/CMakeFiles/dynamorio.dir/arch/x86/x86_to_x64.c.o
[ 45%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/module.c.o
[ 45%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/pcprofile.c.o
[ 45%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/stackdump.c.o
[ 46%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/diagnost.c.o
[ 46%] Building C object core/CMakeFiles/dynamorio.dir/unix/os.c.o
[ 46%] Building C object core/CMakeFiles/dynamorio.dir/unix/signal.c.o
[ 46%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/loader.c.o
[ 46%] Building C object core/CMakeFiles/dynamorio.dir/unix/module.c.o
[ 46%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/loader_linux.c.o
[ 46%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/memquery_linux.c.o
[ 46%] Building C object core/CMakeFiles/dynamorio.dir/unix/pcprofile.c.o
[ 47%] Building C object core/CMakeFiles/dynamorio.dir/unix/stackdump.c.o
[ 48%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/memquery.c.o
[ 48%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/memcache.c.o
[ 48%] Building C object core/CMakeFiles/dynamorio.dir/unix/diagnost.c.o
[ 48%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/module_elf.c.o
[ 48%] Building C object core/CMakeFiles/dynamorio.dir/unix/loader.c.o
[ 48%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/ksynch_linux.c.o
[ 48%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/tls_linux_x86.c.o
[ 48%] Building C object core/CMakeFiles/dynamorio.dir/unix/loader_linux.c.o
[ 49%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/signal_linux.c.o
[ 50%] Building C object core/CMakeFiles/dynamorio.dir/unix/memquery_linux.c.o
[ 48%] Built target drcpusim_ops
[ 50%] Building C object core/CMakeFiles/dynamorio.dir/unix/memquery.c.o
[ 50%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/native_elf.c.o
[ 50%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/signal_linux_x86.c.o
[ 50%] Building C object core/CMakeFiles/dynamorio.dir/unix/memcache.c.o
[ 50%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/nudgesig.c.o
[ 50%] Building C object core/CMakeFiles/dynamorio.dir/unix/module_elf.c.o
In file included from /home/USERNAME/test/DrCCTProf/dynamorio/libutil/dr_config.c:42:
In function ‘add_extra_option’,
    inlined from ‘add_extra_option’ at /home/USERNAME/test/DrCCTProf/dynamorio/libutil/dr_config.c:287:1,
    inlined from ‘add_extra_option_char’ at /home/USERNAME/test/DrCCTProf/dynamorio/libutil/dr_config.c:315:16,
    inlined from ‘dr_register_process’ at /home/USERNAME/test/DrCCTProf/dynamorio/libutil/dr_config.c:1201:5:
/home/USERNAME/test/DrCCTProf/dynamorio/libutil/dr_frontend.h:105:22: warning: ‘strncpy’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  105 | #    define _tcsncpy strncpy
/home/USERNAME/test/DrCCTProf/dynamorio/libutil/dr_config.c:299:9: note: in expansion of macro ‘_tcsncpy’
  299 |         _tcsncpy(opt_info->extra_opts[idx], opt, len);
      |         ^~~~~~~~
In file included from /home/USERNAME/test/DrCCTProf/dynamorio/libutil/share.h:68,
                 from /home/USERNAME/test/DrCCTProf/dynamorio/libutil/utils.h:37,
                 from /home/USERNAME/test/DrCCTProf/dynamorio/libutil/dr_config.c:37:
/home/USERNAME/test/DrCCTProf/dynamorio/libutil/dr_config.c: In function ‘dr_register_process’:
/home/USERNAME/test/DrCCTProf/dynamorio/libutil/dr_frontend.h:101:21: note: length computed here
  101 | #    define _tcslen strlen
/home/USERNAME/test/DrCCTProf/dynamorio/core/lib/globals_shared.h:441:32: note: in definition of macro ‘MIN’
  441 | #    define MIN(x, y) ((x) <= (y) ? (x) : (y))
      |                                ^
/home/USERNAME/test/DrCCTProf/dynamorio/libutil/dr_config.c:296:46: note: in expansion of macro ‘_tcslen’
  296 |         len = MIN(DR_MAX_OPTIONS_LENGTH - 1, _tcslen(opt));
      |                                              ^~~~~~~
[ 50%] Building C object core/CMakeFiles/dynamorio.dir/unix/ksynch_linux.c.o
[ 51%] Building C object core/CMakeFiles/dynamorio.dir/unix/tls_linux_x86.c.o
[ 51%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/rseq_linux.c.o
[ 51%] Building C object core/CMakeFiles/dynamorio.dir/unix/signal_linux.c.o
[ 51%] Building C object core/CMakeFiles/dynamorio.dir/unix/signal_linux_x86.c.o
[ 51%] Building C object core/CMakeFiles/dynamorio.dir/unix/native_elf.c.o
[ 51%] Building C object core/CMakeFiles/dynamorio.dir/unix/nudgesig.c.o
[ 52%] Building C object core/CMakeFiles/dynamorio.dir/unix/rseq_linux.c.o
[ 52%] Linking CXX static library ../lib64/release/libdirectory_iterator.a
[ 52%] Linking CXX static library ../lib64/release/libdrmemtrace_histogram.a
[ 52%] Linking CXX static library ../lib64/release/libdrmemtrace_basic_counts.a
[ 52%] Built target directory_iterator
Scanning dependencies of target drmemtrace_analyzer
[ 52%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_analyzer.dir/analyzer.cpp.o
[ 52%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_analyzer.dir/common/trace_entry.cpp.o
[ 52%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_analyzer.dir/reader/reader.cpp.o
[ 53%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_analyzer.dir/reader/config_reader.cpp.o
[ 53%] Built target drmemtrace_histogram
[ 53%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_analyzer.dir/reader/compressed_file_reader.cpp.o
[ 53%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_analyzer.dir/reader/file_reader.cpp.o
[ 53%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_analyzer.dir/reader/crc32c.cpp.o
[ 53%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_analyzer.dir/reader/snappy_file_reader.cpp.o
[ 53%] Built target drmemtrace_basic_counts
[ 54%] Linking CXX static library ../lib64/release/libdrmemtrace_reuse_time.a
[ 54%] Linking C shared library ../lib64/release/libdrpreload.so
[ 54%] Built target drmemtrace_reuse_time
[ 54%] Built target drpreload
[ 54%] Linking C static library ../lib64/libdrconfiglib.a
[ 54%] Linking C static library ../lib64/libdrdecode.a
[ 54%] Built target drconfiglib
Scanning dependencies of target drconfig
[ 54%] Building C object tools/CMakeFiles/drconfig.dir/drdeploy.c.o
[ 54%] Built target drdecode
[ 54%] Linking CXX static library ../lib64/release/libdrmemtrace_reuse_distance.a
Scanning dependencies of target drinjectlib
Scanning dependencies of target drdisas
[ 54%] Building C object core/CMakeFiles/drinjectlib.dir/unix/injector.c.o
[ 54%] Building C object core/CMakeFiles/drinjectlib.dir/config.c.o
[ 54%] Building CXX object clients/drdisas/CMakeFiles/drdisas.dir/drdisas.cpp.o
[ 55%] Building C object core/CMakeFiles/drinjectlib.dir/string.c.o
[ 55%] Building C object core/CMakeFiles/drinjectlib.dir/io.c.o
[ 55%] Built target drmemtrace_reuse_distance
[ 55%] Linking C executable ../bin64/drconfig
[ 56%] Linking CXX static library ../lib64/release/libdrmemtrace_func_view.a
[ 56%] Built target drmemtrace_func_view
[ 56%] Built target drconfig
[ 57%] Linking CXX static library ../lib64/release/libdrmemtrace_simulator.a
[ 57%] Built target drmemtrace_simulator
[ 57%] Linking CXX executable ../bin64/drgui
[ 58%] Linking C static library ../lib64/release/libdynamorio_static.a
[ 58%] Linking C static library ../lib64/libdrinjectlib.a
[ 58%] Linking C shared library ../lib64/release/libdynamorio.so
[ 58%] Built target drinjectlib
Scanning dependencies of target drrun
Scanning dependencies of target drinject
[ 59%] Building C object tools/CMakeFiles/drinject.dir/drdeploy.c.o
[ 59%] Building C object tools/CMakeFiles/drrun.dir/drdeploy.c.o
[ 59%] Built target drgui
[ 59%] Linking C executable ../bin64/drinject
[ 59%] Linking CXX executable ../bin64/drdisas
[ 59%] Linking C executable ../bin64/drrun
[ 59%] Built target drinject
[ 59%] Built target drdisas
[ 59%] Built target dynamorio
Scanning dependencies of target drcontainers
Scanning dependencies of target drmemtrace_opcode_mix
Scanning dependencies of target drmemtrace_view
[ 59%] Building C object ext/drcontainers/CMakeFiles/drcontainers.dir/hashtable.c.o
[ 59%] Building C object ext/drcontainers/CMakeFiles/drcontainers.dir/drvector.c.o
[ 60%] Building C object ext/drcontainers/CMakeFiles/drcontainers.dir/drtable.c.o
[ 60%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_opcode_mix.dir/tools/opcode_mix.cpp.o
[ 60%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_view.dir/tools/view.cpp.o
[ 60%] Built target drrun
/home/USERNAME/test/DrCCTProf/dynamorio/ext/drcontainers/hashtable.c: In function ‘hashtable_add’:
/home/USERNAME/test/DrCCTProf/dynamorio/ext/drcontainers/hashtable.c:348:9: warning: ‘strncpy’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  348 |         strncpy((char *)e->key, s, strlen(s) + 1);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/USERNAME/test/DrCCTProf/dynamorio/ext/drcontainers/hashtable.c:348:36: note: length computed here
  348 |         strncpy((char *)e->key, s, strlen(s) + 1);
      |                                    ^~~~~~~~~
/home/USERNAME/test/DrCCTProf/dynamorio/ext/drcontainers/hashtable.c: In function ‘hashtable_add_replace’:
/home/USERNAME/test/DrCCTProf/dynamorio/ext/drcontainers/hashtable.c:376:9: warning: ‘strncpy’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  376 |         strncpy((char *)new_e->key, s, strlen(s) + 1);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/USERNAME/test/DrCCTProf/dynamorio/ext/drcontainers/hashtable.c:376:40: note: length computed here
  376 |         strncpy((char *)new_e->key, s, strlen(s) + 1);
      |                                        ^~~~~~~~~
[ 61%] Linking CXX static library ../lib64/release/libdrmemtrace_analyzer.a
[ 61%] Linking C static library ../lib64/release/libdrcontainers.a
[ 61%] Built target drmemtrace_analyzer
Scanning dependencies of target histogram_launcher
[ 61%] Building CXX object clients/drcachesim/CMakeFiles/histogram_launcher.dir/tests/trace_invariants.cpp.o
[ 61%] Building CXX object clients/drcachesim/CMakeFiles/histogram_launcher.dir/tools/histogram_launcher.cpp.o
[ 61%] Built target drcontainers
Scanning dependencies of target drsyms_static
Scanning dependencies of target drsyms
[ 62%] Building C object ext/drsyms/CMakeFiles/drsyms.dir/drsyms_unix_frontend.c.o
[ 62%] Building C object ext/drsyms/CMakeFiles/drsyms_static.dir/drsyms_unix_frontend.c.o
[ 62%] Building C object ext/drsyms/CMakeFiles/drsyms.dir/drsyms_dwarf.c.o
[ 62%] Building C object ext/drsyms/CMakeFiles/drsyms.dir/drsyms_unix_common.c.o
[ 63%] Building C object ext/drsyms/CMakeFiles/drsyms_static.dir/drsyms_unix_common.c.o
[ 63%] Building CXX object ext/drsyms/CMakeFiles/drsyms.dir/demangle.cc.o
[ 63%] Building C object ext/drsyms/CMakeFiles/drsyms_static.dir/drsyms_common.c.o
Scanning dependencies of target drmgr
Scanning dependencies of target drmgr_static
[ 63%] Building C object ext/drsyms/CMakeFiles/drsyms_static.dir/drsyms_elf.c.o
[ 64%] Building C object ext/drsyms/CMakeFiles/drsyms.dir/drsyms_elf.c.o
[ 64%] Building C object ext/drsyms/CMakeFiles/drsyms_static.dir/drsyms_dwarf.c.o
[ 64%] Building C object ext/drsyms/CMakeFiles/drsyms.dir/drsyms_common.c.o
[ 64%] Building CXX object ext/drsyms/CMakeFiles/drsyms_static.dir/demangle.cc.o
[ 64%] Building C object ext/drmgr/CMakeFiles/drmgr_static.dir/drmgr.c.o
[ 64%] Building C object ext/drmgr/CMakeFiles/drmgr.dir/drmgr.c.o
[ 65%] Linking CXX executable ../bin64/drcachesim_ops
[ 65%] Built target dynamorio_static
[ 65%] Built target drcachesim_ops
[ 65%] Linking CXX shared library ../lib64/release/libdrsyms.so
[ 66%] Linking CXX static library ../lib64/release/libdrsyms_static.a
[ 66%] Linking CXX static library ../lib64/release/libdrmemtrace_view.a
[ 66%] Built target drsyms
Scanning dependencies of target drsyms_bench
[ 66%] Built target drsyms_static
[ 66%] Building C object ext/drsyms/CMakeFiles/drsyms_bench.dir/drsyms_bench.c.o
[ 66%] Built target drmemtrace_view
[ 66%] Linking C static library ../lib64/release/libdrmgr_static.a
[ 66%] Linking C executable ../drsyms_bench
[ 67%] Linking C shared library ../lib64/release/libdrmgr.so
[ 67%] Built target drmgr_static
Scanning dependencies of target drwrap_static
Scanning dependencies of target drutil_static
Scanning dependencies of target drreg_static
[ 67%] Building C object ext/drutil/CMakeFiles/drutil_static.dir/drutil.c.o
[ 67%] Building C object ext/drwrap/CMakeFiles/drwrap_static.dir/drwrap.c.o
[ 68%] Building ASM object ext/drwrap/CMakeFiles/drwrap_static.dir/drwrap_asm_x86.asm.o
[ 68%] Built target drmgr
[ 69%] Building C object ext/drreg/CMakeFiles/drreg_static.dir/drreg.c.o
Scanning dependencies of target drwrap
Scanning dependencies of target drutil
Scanning dependencies of target drreg
[ 69%] Building C object ext/drwrap/CMakeFiles/drwrap.dir/drwrap.c.o
[ 69%] Building ASM object ext/drwrap/CMakeFiles/drwrap.dir/drwrap_asm_x86.asm.o
[ 69%] Building C object ext/drutil/CMakeFiles/drutil.dir/drutil.c.o
[ 69%] Building C object ext/drreg/CMakeFiles/drreg.dir/drreg.c.o
[ 69%] Built target drsyms_bench
[ 69%] Linking CXX static library ../lib64/release/libdrmemtrace_opcode_mix.a
[ 70%] Linking C static library ../lib64/release/libdrutil_static.a
[ 70%] Linking C shared library ../lib64/release/libdrutil.so
[ 70%] Built target drutil_static
[ 70%] Built target drmemtrace_opcode_mix
Scanning dependencies of target drmemtrace_raw2trace
[ 70%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_raw2trace.dir/tracer/instru.cpp.o
[ 70%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_raw2trace.dir/tracer/instru_offline.cpp.o
[ 71%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_raw2trace.dir/tracer/raw2trace.cpp.o
[ 71%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_raw2trace.dir/tracer/raw2trace_directory.cpp.o
[ 71%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_raw2trace.dir/tracer/instru_online.cpp.o
[ 71%] Built target drutil
[ 71%] Linking C static library ../lib64/release/libdrwrap_static.a
[ 71%] Built target drwrap_static
[ 72%] Linking CXX executable ../bin64/histogram_launcher
[ 72%] Linking C shared library ../lib64/release/libdrwrap.so
[ 72%] Linking C static library ../lib64/release/libdrreg_static.a
[ 72%] Built target drwrap
[ 72%] Built target drreg_static
Scanning dependencies of target drx_static
Scanning dependencies of target drbbdup_static
Scanning dependencies of target drcctlib_static
[ 72%] Linking C shared library ../lib64/release/libdrreg.so
[ 72%] Building C object ext/drbbdup/CMakeFiles/drbbdup_static.dir/drbbdup.c.o
[ 73%] Building C object ext/drx/CMakeFiles/drx_static.dir/drx.c.o
[ 73%] Building C object ext/drx/CMakeFiles/drx_static.dir/drx_buf.c.o
[ 73%] Building CXX object ext/drcctlib/CMakeFiles/drcctlib_static.dir/drcctlib.cpp.o
[ 73%] Building CXX object ext/drcctlib/CMakeFiles/drcctlib_static.dir/drcctlib_hpcviewer_format.cpp.o
[ 73%] Building C object ext/drcctlib/CMakeFiles/drcctlib_static.dir/splay_tree.c.o
[ 73%] Built target histogram_launcher
[ 73%] Built target drreg
Scanning dependencies of target drbbdup
Scanning dependencies of target drx
Scanning dependencies of target drcctlib
[ 73%] Building C object ext/drbbdup/CMakeFiles/drbbdup.dir/drbbdup.c.o
[ 73%] Building C object ext/drx/CMakeFiles/drx.dir/drx_buf.c.o
[ 73%] Building C object ext/drx/CMakeFiles/drx.dir/drx.c.o
[ 73%] Building CXX object ext/drcctlib/CMakeFiles/drcctlib.dir/drcctlib_hpcviewer_format.cpp.o
[ 73%] Building C object ext/drcctlib/CMakeFiles/drcctlib.dir/splay_tree.c.o
[ 73%] Building CXX object ext/drcctlib/CMakeFiles/drcctlib.dir/drcctlib.cpp.o
[ 73%] Linking C static library ../lib64/release/libdrbbdup_static.a
[ 74%] Linking C shared library ../lib64/release/libdrbbdup.so
[ 74%] Built target drbbdup_static
[ 74%] Built target drbbdup
[ 74%] Linking C static library ../lib64/release/libdrx_static.a
[ 74%] Linking C shared library ../lib64/release/libdrx.so
[ 74%] Built target drx_static
Scanning dependencies of target drcovlib_static
[ 74%] Built target drx
[ 74%] Building C object ext/drcovlib/CMakeFiles/drcovlib_static.dir/modules.c.o
[ 74%] Building C object ext/drcovlib/CMakeFiles/drcovlib_static.dir/drcovlib.c.o
Scanning dependencies of target drcpusim
Scanning dependencies of target drcovlib
[ 75%] Building CXX object clients/drcpusim/CMakeFiles/drcpusim.dir/options.cpp.o
[ 75%] Building CXX object clients/drcpusim/CMakeFiles/drcpusim.dir/drcpusim.cpp.o
[ 75%] Building C object ext/drcovlib/CMakeFiles/drcovlib.dir/drcovlib.c.o
[ 75%] Building C object ext/drcovlib/CMakeFiles/drcovlib.dir/modules.c.o
[ 76%] Linking C shared library ../lib64/release/libdrcovlib.so
[ 76%] Linking C static library ../lib64/release/libdrcovlib_static.a
[ 76%] Built target drcovlib
Scanning dependencies of target drcov
Scanning dependencies of target drmemtrace
[ 76%] Building C object clients/drcov/CMakeFiles/drcov.dir/drcov.c.o
[ 77%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace.dir/tracer/tracer.cpp.o
[ 77%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace.dir/tracer/physaddr.cpp.o
[ 77%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace.dir/tracer/instru_online.cpp.o
[ 77%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace.dir/tracer/instru.cpp.o
[ 77%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace.dir/common/options.cpp.o
[ 77%] Built target drcovlib_static
[ 77%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace.dir/tracer/instru_offline.cpp.o
[ 77%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace.dir/tracer/func_trace.cpp.o
[ 78%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace.dir/common/named_pipe_unix.cpp.o
[ 78%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace.dir/common/trace_entry.cpp.o
Scanning dependencies of target drcov2lcov
Scanning dependencies of target drmemtrace_static
[ 79%] Building CXX object clients/drcov/CMakeFiles/drcov2lcov.dir/postprocess/drcov2lcov.cpp.o
[ 79%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_static.dir/tracer/tracer.cpp.o
[ 79%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_static.dir/tracer/instru.cpp.o
[ 79%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_static.dir/tracer/instru_offline.cpp.o
[ 79%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_static.dir/tracer/instru_online.cpp.o
[ 80%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_static.dir/tracer/physaddr.cpp.o
[ 80%] Linking C shared library ../lib64/release/libdrcov.so
[ 80%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_static.dir/tracer/func_trace.cpp.o
[ 80%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_static.dir/common/named_pipe_unix.cpp.o
[ 80%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_static.dir/common/options.cpp.o
[ 81%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_static.dir/common/trace_entry.cpp.o
Usage: pass to drconfig or drrun: -t drcov
[ 81%] Built target drcov
In function ‘bool search_cb(drsym_info_t*, drsym_error_t, void*)’,
    inlined from ‘bool search_cb(drsym_info_t*, drsym_error_t, void*)’ at /home/USERNAME/test/DrCCTProf/dynamorio/clients/drcov/postprocess/drcov2lcov.cpp:668:1:
/home/USERNAME/test/DrCCTProf/dynamorio/clients/drcov/postprocess/drcov2lcov.cpp:675:16: warning: ‘char* strncpy(char*, const char*, size_t)’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  675 |         strncpy(name, info->name, strlen(info->name) + 1);
      |         ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/USERNAME/test/DrCCTProf/dynamorio/clients/drcov/postprocess/drcov2lcov.cpp: In function ‘bool search_cb(drsym_info_t*, drsym_error_t, void*)’:
/home/USERNAME/test/DrCCTProf/dynamorio/clients/drcov/postprocess/drcov2lcov.cpp:675:41: note: length computed here
  675 |         strncpy(name, info->name, strlen(info->name) + 1);
      |                                   ~~~~~~^~~~~~~~~~~~
[ 81%] Linking CXX shared library ../lib64/release/libdrcctlib.so
[ 82%] Linking CXX static library ../lib64/release/libdrcctlib_static.a
[ 82%] Linking CXX shared library ../lib64/release/libdrcpusim.so
[ 82%] Built target drcctlib_static
[ 82%] Built target drcctlib
Scanning dependencies of target drcctlib_instr_statistics
Scanning dependencies of target drcctlib_all_instr_cct_hpc_fmt
Scanning dependencies of target drcctlib_cct_only
Scanning dependencies of target drcctlib_all_instr_cct_with_data_centric
Scanning dependencies of target drcctlib_cct_only_clean_call
Scanning dependencies of target drcctlib_cct_only_no_cache
Scanning dependencies of target drcctlib_all_instr_cct
Scanning dependencies of target drcctlib_instr_statistics_clean_call
Scanning dependencies of target drcctlib_all_instr_cct_no_cache
Scanning dependencies of target drcctlib_instr_statistics_hpc_fmt
Scanning dependencies of target drcctlib_memory_only
Scanning dependencies of target drcctlib_instr_analysis
Scanning dependencies of target drcctlib_memory_only_clean_call
[ 82%] Building CXX object clients/drcctlib_all_instr_cct_hpc_fmt/CMakeFiles/drcctlib_all_instr_cct_hpc_fmt.dir/drcctlib_all_instr_cct_hpc_fmt.cpp.o
[ 83%] Building CXX object clients/drcctlib_all_instr_cct/CMakeFiles/drcctlib_all_instr_cct.dir/drcctlib_all_instr_cct.cpp.o
Scanning dependencies of target drcctlib_memory_with_data_centric
[ 83%] Building CXX object clients/drcctlib_all_instr_cct_with_data_centric/CMakeFiles/drcctlib_all_instr_cct_with_data_centric.dir/drcctlib_all_instr_cct_with_data_centric.cpp.o
[ 83%] Building CXX object clients/drcctlib_cct_only_clean_call/CMakeFiles/drcctlib_cct_only_clean_call.dir/drcctlib_cct_only_clean_call.cpp.o
[ 83%] Building CXX object clients/drcctlib_cct_only/CMakeFiles/drcctlib_cct_only.dir/drcctlib_cct_only.cpp.o
[ 83%] Building CXX object clients/drcctlib_all_instr_cct_no_cache/CMakeFiles/drcctlib_all_instr_cct_no_cache.dir/drcctlib_all_instr_cct_no_cache.cpp.o
[ 83%] Building CXX object clients/drcctlib_cct_only_no_cache/CMakeFiles/drcctlib_cct_only_no_cache.dir/drcctlib_cct_only_no_cache.cpp.o
[ 84%] Building CXX object clients/drcctlib_instr_analysis/CMakeFiles/drcctlib_instr_analysis.dir/drcctlib_instr_analysis.cpp.o
[ 84%] Building CXX object clients/drcctlib_instr_statistics/CMakeFiles/drcctlib_instr_statistics.dir/drcctlib_instr_statistics.cpp.o
[ 84%] Building CXX object clients/drcctlib_memory_only/CMakeFiles/drcctlib_memory_only.dir/drcctlib_memory_only.cpp.o
[ 84%] Building CXX object clients/drcctlib_instr_statistics_clean_call/CMakeFiles/drcctlib_instr_statistics_clean_call.dir/drcctlib_instr_statistics_clean_call.cpp.o
[ 84%] Building CXX object clients/drcctlib_instr_statistics_hpc_fmt/CMakeFiles/drcctlib_instr_statistics_hpc_fmt.dir/drcctlib_instr_statistics_hpc_fmt.cpp.o
Scanning dependencies of target drcctlib_memory_with_data_centric_clean_call
[ 84%] Building CXX object clients/drcctlib_memory_only_clean_call/CMakeFiles/drcctlib_memory_only_clean_call.dir/drcctlib_memory_only_clean_call.cpp.o
[ 84%] Building CXX object clients/drcctlib_memory_with_data_centric/CMakeFiles/drcctlib_memory_with_data_centric.dir/drcctlib_memory_with_data_centric.cpp.o
[ 85%] Building CXX object clients/drcctlib_memory_with_data_centric_clean_call/CMakeFiles/drcctlib_memory_with_data_centric_clean_call.dir/drcctlib_memory_with_data_centric_clean_call.cpp.o
Scanning dependencies of target drcctlib_memory_with_data_centric_with_search
Scanning dependencies of target drcctlib_reuse_distance
Scanning dependencies of target drcctlib_overhead_test
Scanning dependencies of target drcctlib_memory_with_data_centric_with_search_clean_call
Scanning dependencies of target drcctlib_reuse_distance_client_cache
[ 85%] Building CXX object clients/drcctlib_memory_with_data_centric_with_search/CMakeFiles/drcctlib_memory_with_data_centric_with_search.dir/drcctlib_memory_with_data_centric_with_search.cpp.o
Scanning dependencies of target drcctlib_reuse_distance_hpc_fmt
Scanning dependencies of target drcctlib_reuse_distance_hpc_fmt_for_sweep3d
Scanning dependencies of target drcctlib_reuse_distance_mpi
Usage: pass to drconfig or drrun: -t drcpusim
[ 85%] Building CXX object clients/drcctlib_memory_with_data_centric_with_search_clean_call/CMakeFiles/drcctlib_memory_with_data_centric_with_search_clean_call.dir/drcctlib_memory_with_data_centric_with_search_clean_call.cpp.o
[ 85%] Building CXX object clients/drcctlib_overhead_test/CMakeFiles/drcctlib_overhead_test.dir/drcctlib_overhead_test.cpp.o
In file included from /home/USERNAME/test/DrCCTProf/dynamorio/clients/drcctlib_instr_analysis/drcctlib_instr_analysis.cpp:2:
/home/USERNAME/test/DrCCTProf/build/ext/include/drcctlib.h:143:5: error: ‘uint8_t’ does not name a type; did you mean ‘u_int8_t’?
  143 |     uint8_t object_type;
      |     ^~~~~~~
      |     u_int8_t
[ 85%] Built target drcpusim
make[2]: *** [clients/drcctlib_instr_analysis/CMakeFiles/drcctlib_instr_analysis.dir/build.make:82: clients/drcctlib_instr_analysis/CMakeFiles/drcctlib_instr_analysis.dir/drcctlib_instr_analysis.cpp.o] Error 1
[ 85%] Building CXX object clients/drcctlib_reuse_distance_client_cache/CMakeFiles/drcctlib_reuse_distance_client_cache.dir/drcctlib_reuse_distance_client_cache.cpp.o
make[1]: *** [CMakeFiles/Makefile2:2513: clients/drcctlib_instr_analysis/CMakeFiles/drcctlib_instr_analysis.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 85%] Building CXX object clients/drcctlib_reuse_distance/CMakeFiles/drcctlib_reuse_distance.dir/drcctlib_reuse_distance.cpp.o
[ 86%] Building CXX object clients/drcctlib_reuse_distance_hpc_fmt_for_sweep3d/CMakeFiles/drcctlib_reuse_distance_hpc_fmt_for_sweep3d.dir/drcctlib_reuse_distance_hpc_fmt_for_sweep3d.cpp.o
[ 86%] Building CXX object clients/drcctlib_reuse_distance_hpc_fmt/CMakeFiles/drcctlib_reuse_distance_hpc_fmt.dir/drcctlib_reuse_distance_hpc_fmt.cpp.o
[ 86%] Building CXX object clients/drcctlib_reuse_distance_mpi/CMakeFiles/drcctlib_reuse_distance_mpi.dir/drcctlib_reuse_distance_mpi.cpp.o
[ 86%] Linking CXX shared library ../lib64/release/libdrcctlib_cct_only_clean_call.so
[ 87%] Linking CXX shared library ../lib64/release/libdrcctlib_all_instr_cct_no_cache.so
[ 87%] Linking CXX shared library ../lib64/release/libdrcctlib_all_instr_cct.so
[ 87%] Linking CXX shared library ../lib64/release/libdrcctlib_all_instr_cct_with_data_centric.so
[ 87%] Linking CXX shared library ../lib64/release/libdrcctlib_all_instr_cct_hpc_fmt.so
Usage: pass to drconfig or drrun: -t drcctlib_cct_only_clean_call
[ 87%] Linking CXX shared library ../lib64/release/libdrcctlib_cct_only_no_cache.so
[ 87%] Built target drcctlib_cct_only_clean_call
[ 87%] Linking CXX shared library ../lib64/release/libdrcctlib_instr_statistics.so
[ 87%] Linking CXX shared library ../lib64/release/libdrcctlib_memory_only_clean_call.so
[ 88%] Linking CXX shared library ../lib64/release/libdrcctlib_cct_only.so
[ 88%] Linking CXX shared library ../lib64/release/libdrcctlib_memory_with_data_centric.so
[ 88%] Linking CXX shared library ../lib64/release/libdrcctlib_overhead_test.so
[ 89%] Linking CXX shared library ../lib64/release/libdrcctlib_memory_only.so
[ 90%] Linking CXX static library ../lib64/release/libdrmemtrace_raw2trace.a
[ 90%] Linking CXX shared library ../lib64/release/libdrcctlib_memory_with_data_centric_with_search.so
[ 90%] Linking CXX shared library ../lib64/release/libdrcctlib_memory_with_data_centric_clean_call.so
[ 91%] Linking CXX shared library ../lib64/release/libdrcctlib_instr_statistics_clean_call.so
Usage: pass to drconfig or drrun: -t drcctlib_all_instr_cct
Usage: pass to drconfig or drrun: -t drcctlib_all_instr_cct_no_cache
[ 91%] Built target drcctlib_all_instr_cct
[ 92%] Linking CXX shared library ../lib64/release/libdrcctlib_memory_with_data_centric_with_search_clean_call.so
[ 92%] Built target drcctlib_all_instr_cct_no_cache
Usage: pass to drconfig or drrun: -t drcctlib_all_instr_cct_with_data_centric
[ 92%] Built target drcctlib_all_instr_cct_with_data_centric
Usage: pass to drconfig or drrun: -t drcctlib_instr_statistics
[ 92%] Built target drcctlib_instr_statistics
Usage: pass to drconfig or drrun: -t drcctlib_cct_only_no_cache
[ 92%] Built target drcctlib_cct_only_no_cache
Usage: pass to drconfig or drrun: -t drcctlib_memory_with_data_centric
Usage: pass to drconfig or drrun: -t drcctlib_cct_only
Usage: pass to drconfig or drrun: -t drcctlib_all_instr_cct_hpc_fmt
[ 92%] Built target drmemtrace_raw2trace
Usage: pass to drconfig or drrun: -t drcctlib_memory_only
Usage: pass to drconfig or drrun: -t drcctlib_memory_only_clean_call
[ 92%] Built target drcctlib_all_instr_cct_hpc_fmt
[ 92%] Built target drcctlib_memory_with_data_centric
[ 92%] Built target drcctlib_memory_only_clean_call
[ 92%] Built target drcctlib_cct_only
[ 92%] Built target drcctlib_memory_only
Usage: pass to drconfig or drrun: -t drcctlib_overhead_test
[ 92%] Built target drcctlib_overhead_test
Usage: pass to drconfig or drrun: -t drcctlib_instr_statistics_clean_call
Usage: pass to drconfig or drrun: -t drcctlib_memory_with_data_centric_with_search
[ 92%] Built target drcctlib_instr_statistics_clean_call
[ 92%] Linking CXX shared library ../lib64/release/libdrcctlib_reuse_distance_mpi.so
[ 92%] Built target drcctlib_memory_with_data_centric_with_search
Usage: pass to drconfig or drrun: -t drcctlib_memory_with_data_centric_clean_call
[ 92%] Linking CXX shared library ../lib64/release/libdrcctlib_reuse_distance_client_cache.so
[ 92%] Built target drcctlib_memory_with_data_centric_clean_call
Usage: pass to drconfig or drrun: -t drcctlib_memory_with_data_centric_with_search_clean_call
[ 93%] Linking CXX shared library ../lib64/release/libdrcctlib_reuse_distance.so
[ 93%] Built target drcctlib_memory_with_data_centric_with_search_clean_call
[ 93%] Linking CXX shared library ../lib64/release/libdrcctlib_instr_statistics_hpc_fmt.so
Usage: pass to drconfig or drrun: -t drcctlib_reuse_distance_client_cache
[ 93%] Linking CXX shared library ../lib64/release/libdrcctlib_reuse_distance_hpc_fmt.so
[ 93%] Built target drcctlib_reuse_distance_client_cache
Usage: pass to drconfig or drrun: -t drcctlib_reuse_distance_mpi
[ 93%] Built target drcctlib_reuse_distance_mpi
Usage: pass to drconfig or drrun: -t drcctlib_reuse_distance
[ 93%] Built target drcctlib_reuse_distance
Usage: pass to drconfig or drrun: -t drcctlib_instr_statistics_hpc_fmt
[ 93%] Built target drcctlib_instr_statistics_hpc_fmt
Usage: pass to drconfig or drrun: -t drcctlib_reuse_distance_hpc_fmt
[ 93%] Built target drcctlib_reuse_distance_hpc_fmt
[ 93%] Linking CXX shared library ../lib64/release/libdrcctlib_reuse_distance_hpc_fmt_for_sweep3d.so
Usage: pass to drconfig or drrun: -t drcctlib_reuse_distance_hpc_fmt_for_sweep3d
[ 93%] Built target drcctlib_reuse_distance_hpc_fmt_for_sweep3d
[ 93%] Linking CXX executable ../bin64/drcov2lcov
Make sure the loader finds the dynamorio library (set LD_LIBRARY_PATH)
[ 93%] Built target drcov2lcov
[ 93%] Linking CXX shared library ../lib64/release/libdrmemtrace.so
[ 93%] Linking CXX static library ../lib64/release/libdrmemtrace_static.a
Usage: pass to drconfig or drrun: -t drcachesim
[ 93%] Built target drmemtrace
[ 93%] Built target drmemtrace_static
make: *** [Makefile:171: all] Error 2

Information on your system:

  • System Version: Linux archlinux 5.8.2-arch1-1 #1 SMP PREEMPT Thu, 20 Aug 2020 20:45:00 +0000 x86_64 GNU/Linux
  • Depend Package Version: [email protected]

DrCCTProf requires Old Versions of CMake, GCC

sh build.sh fails when using cmake 13.17.3 and gcc 10.

This is related to two issues in building dynamorio:
one with cmake,and one with gcc 10.

To solve this on my computer, I had to

  1. Wget an old version of cmake and add it to my path:
wget https://github.com/Kitware/CMake/releases/download/v3.17.3/cmake-3.17.3-Linux-x86_64.sh
export PATH=$(realpath ./cmake-3.17.3-Linux-x86_64/bin):$PATH

And edit scripts/build_tool/make.sh to use the option -DCMAKE_C_COMPILER=gcc-9 (instead of -DCMAKE_C_COMPILER=gcc) on both line 45 and line 47.

After those changes were made, I was able to compile DrCCTProf using sh build.sh.

Thanks :)

Build error: Failure to build DrCCTProf on recent kernel versions

Describe the error

DrCCTProf fails to build on recent linux kernels due to the following commit torvalds/linux@bfdf4e6. The failure is due to DrCCTProf depending on a Dynamorio version that is incompatible with change in the kernel. The Dynamorio project appears to have fixed this in DynamoRIO/dynamorio#5469.

Screenshots or Pasted Text

logs/cmake.log.1658508162

-- The C compiler identification is GNU 12.1.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/gcc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- The CXX compiler identification is GNU 12.1.0
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Building for x86
-- Version number: 9.0.19016
-- Performing Test proc_found_avx
-- Performing Test proc_found_avx - Success
-- Compiler and processor support AVX.
-- Performing Test proc_found_avx2
-- Performing Test proc_found_avx2 - Success
-- Compiler and processor support AVX2.
-- Performing Test proc_found_avx512
-- Performing Test proc_found_avx512 - Failed
-- WARNING: Compiler or processor do not support AVX-512. Skipping tests
-- The ASM compiler identification is GNU
-- Found assembler: /usr/bin/as
-- Found Perl: /usr/bin/perl (found version "5.36.0") 
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of uint
-- Check size of uint - done
-- Check size of ushort
-- Check size of ushort - done
-- Check size of bool
-- Check size of bool - failed
-- Check size of byte
-- Check size of byte - failed
-- Check size of sbyte
-- Check size of sbyte - failed
-- Check size of uint32
-- Check size of uint32 - failed
-- Check size of uint64
-- Check size of uint64 - failed
-- Check size of int32
-- Check size of int32 - failed
-- Check size of int64
-- Check size of int64 - failed
-- Check size of _Bool
-- Check size of _Bool - done
-- Performing Test cxx17_available
-- Performing Test cxx17_available - Success
-- Performing Test no_stack_protector_avail
-- Performing Test no_stack_protector_avail - Success
-- Performing Test suggest_override_avail
-- Performing Test suggest_override_avail - Success
-- Performing Test nounused_avail
-- Performing Test nounused_avail - Success
-- Performing Test stringop_truncation_avail
-- Performing Test stringop_truncation_avail - Success
-- Performing Test format_truncation_avail
-- Performing Test format_truncation_avail - Success
-- Performing Test stringop_overflow_avail
-- Performing Test stringop_overflow_avail - Success
-- Performing Test HAVE_TYPELIMITS_CONTROL
-- Performing Test HAVE_TYPELIMITS_CONTROL - Success
-- Performing Test HAVE_FVISIBILITY_INTERNAL
-- Performing Test HAVE_FVISIBILITY_INTERNAL - Success
-- Performing Test HAVE_FVISIBILITY_HIDDEN
-- Performing Test HAVE_FVISIBILITY_HIDDEN - Success
-- Looking for linux/rseq.h
-- Looking for linux/rseq.h - found
-- Looking for libunwind.h
-- Looking for libunwind.h - found
-- Performing Test no_pie_avail
-- Performing Test no_pie_avail - Success
-- Found ZLIB: /usr/lib/libz.so (found version "1.2.12") 
-- Performing Test implicit_fallthrough_avail
-- Performing Test implicit_fallthrough_avail - Success
CMake Deprecation Warning at clients/drcctlib_memory_instr_statistics_clean_call/CMakeLists.txt:7 (cmake_minimum_required):
  Compatibility with CMake < 2.8.12 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.


-- WARNING: vera++ not found: disabling code style checks
-- Found Qt 5: DrGUI will be built
CMake Deprecation Warning at ext/drgui/CMakeLists.txt:54 (cmake_policy):
  The OLD behavior for policy CMP0043 will be removed from a future version
  of CMake.

  The cmake-policies(7) manual explains that the OLD behaviors of all
  policies are deprecated and that a policy should be set to OLD only under
  specific short-term circumstances.  Projects should be ported to the NEW
  behavior and not rely on setting a policy to OLD.


-- Configuring done
-- Generating done
-- Build files have been written to: /home/sal/repos/other/DrCCTProf/build

logs/make.log.1658508162

[  0%] Generating moc_drgui_tool_interface.cpp
[  1%] Generating moc_drgui_main_window.cpp
[  1%] Generating moc_drgui_options_interface.cpp
[  1%] Generating moc_drgui_options_window.cpp
[  3%] Building CXX object clients/drcpusim/CMakeFiles/drcpusim_ops.dir/optionlist.cpp.o
[  3%] Built target api_headers
[  3%] Building C object tools/CMakeFiles/run_in_bg.dir/run_in_bg.c.o
[  3%] Building C object tools/CMakeFiles/drloader.dir/drloader.c.o
[  3%] Building CXX object clients/drcpusim/CMakeFiles/drcpusim_ops.dir/options.cpp.o
[  3%] Building C object tools/CMakeFiles/runstats.dir/runstats.c.o
[  3%] Building CXX object clients/drcachesim/CMakeFiles/drcachesim_ops.dir/common/options.cpp.o
[  3%] Generating ../event_strings.h
[  3%] Building C object tools/CMakeFiles/nudgeunix.dir/nudgeunix.c.o
[  3%] Building C object tools/CMakeFiles/nudgeunix.dir/__/core/unix/nudgesig.c.o
[  3%] Building CXX object clients/drcachesim/CMakeFiles/drcachesim_ops.dir/optionlist.cpp.o
[  3%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_histogram.dir/tools/histogram.cpp.o
[  3%] Building CXX object ext/drgui/CMakeFiles/drgui.dir/drgui_options_window.cpp.o
[  3%] Built target generate_syslog
[  3%] Building CXX object ext/drgui/CMakeFiles/drgui.dir/moc_drgui_tool_interface.cpp.o
[  3%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_basic_counts.dir/tools/basic_counts.cpp.o
[  3%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_reuse_distance.dir/tools/reuse_distance.cpp.o
[  3%] Building CXX object ext/drgui/CMakeFiles/drgui.dir/main.cpp.o
[  4%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_func_view.dir/tools/func_view.cpp.o
[  4%] Building CXX object ext/drgui/CMakeFiles/drgui.dir/drgui_main_window.cpp.o
[  5%] Building CXX object ext/drgui/CMakeFiles/drgui.dir/moc_drgui_options_interface.cpp.o
[  5%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_reuse_time.dir/tools/reuse_time.cpp.o
[  5%] Building CXX object ext/drgui/CMakeFiles/drgui.dir/moc_drgui_options_window.cpp.o
[  5%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_simulator.dir/simulator/cache_lru.cpp.o
[  6%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_simulator.dir/simulator/simulator.cpp.o
Scanning dependencies of target drmemfuncs
[  6%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_simulator.dir/simulator/cache.cpp.o
[  6%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_simulator.dir/simulator/cache_fifo.cpp.o
[  6%] Building CXX object ext/drgui/CMakeFiles/drgui.dir/moc_drgui_main_window.cpp.o
[  6%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_simulator.dir/simulator/cache_miss_analyzer.cpp.o
Scanning dependencies of target drlibc
[  6%] Building ASM object core/CMakeFiles/drmemfuncs.dir/arch/x86/memfuncs.asm.o
[  6%] Building C object core/CMakeFiles/drmemfuncs.dir/lib/memmove.c.o
[  7%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_simulator.dir/simulator/caching_device.cpp.o
[  7%] Building ASM object core/CMakeFiles/drlibc.dir/drlibc/drlibc_xarch.asm.o
[  7%] Building ASM object core/CMakeFiles/drlibc.dir/drlibc/drlibc_x86.asm.o
[  7%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_simulator.dir/simulator/caching_device_stats.cpp.o
[  7%] Building C object core/CMakeFiles/drlibc.dir/drlibc/drlibc.c.o
[  7%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_simulator.dir/simulator/cache_stats.cpp.o
[  8%] Building C object core/CMakeFiles/drlibc.dir/drlibc/drlibc_notdr_dcxt.c.o
[  8%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_simulator.dir/simulator/prefetcher.cpp.o
[  8%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_simulator.dir/simulator/cache_simulator.cpp.o
[  8%] Linking C executable ../bin64/drloader
[  8%] Linking C executable ../bin64/nudgeunix
[  9%] Building C object core/CMakeFiles/drlibc.dir/drlibc/drlibc_notdr_error.c.o
[  9%] Linking C executable ../bin64/run_in_bg
[  9%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_simulator.dir/simulator/tlb.cpp.o
[ 10%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_simulator.dir/simulator/tlb_simulator.cpp.o
[  9%] Building C object core/CMakeFiles/drlibc.dir/drlibc/drlibc_notdr_ignoreassert.c.o
[ 10%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_simulator.dir/simulator/snoop_filter.cpp.o
[ 10%] Building C object core/CMakeFiles/drlibc.dir/drlibc/drlibc_notdr_logfile.c.o
[ 10%] Building C object core/CMakeFiles/drlibc.dir/drlibc/drlibc_notdr_printlog.c.o
[ 10%] Building C object core/CMakeFiles/drlibc.dir/drlibc/drlibc_notdr_report.c.o
[ 10%] Building C object core/CMakeFiles/drlibc.dir/drlibc/drlibc_notdr_saferead.c.o
[ 11%] Building C object core/CMakeFiles/drlibc.dir/drlibc/drlibc_notdr_stats.c.o
[ 11%] Building C object core/CMakeFiles/drlibc.dir/drlibc/drlibc_module_elf.c.o
[ 10%] Building C object core/CMakeFiles/drlibc.dir/drlibc/drlibc_unix.c.o
[ 11%] Linking C static library ../lib64/libdrmemfuncs.a
[ 11%] Built target drloader
[ 11%] Built target run_in_bg
[ 11%] Linking C executable ../bin64/runstats
[ 11%] Built target nudgeunix
[ 11%] Built target drmemfuncs
[ 11%] Built target runstats
[ 11%] Linking C static library ../lib64/libdrlibc.a
[ 11%] Built target drlibc
Scanning dependencies of target dynamorio
Scanning dependencies of target dynamorio_static
[ 11%] Building C object core/CMakeFiles/dynamorio.dir/options.c.o
[ 12%] Building C object core/CMakeFiles/dynamorio.dir/dynamo.c.o
[ 12%] Building C object core/CMakeFiles/dynamorio_static.dir/dynamo.c.o
[ 12%] Building C object core/CMakeFiles/drpreload.dir/unix/preload.c.o
[ 12%] Building C object core/CMakeFiles/dynamorio.dir/fragment.c.o
[ 12%] Building C object core/CMakeFiles/drdecode.dir/ir/opnd_shared.c.o
[ 13%] Building C object core/CMakeFiles/dynamorio_static.dir/options.c.o
[ 14%] Building C object core/CMakeFiles/drpreload.dir/config.c.o
[ 14%] Building C object core/CMakeFiles/dynamorio_static.dir/fragment.c.o
[ 14%] Building C object libutil/CMakeFiles/drfrontendlib.dir/dr_frontend_unix.c.o
[ 14%] Building C object core/CMakeFiles/dynamorio_static.dir/fcache.c.o
[ 15%] Building C object libutil/CMakeFiles/drfrontendlib.dir/dr_frontend_common.c.o
[ 15%] Building C object core/CMakeFiles/dynamorio_static.dir/link.c.o
[ 16%] Building C object core/CMakeFiles/drdecode.dir/ir/x86/opnd.c.o
[ 16%] Building C object core/CMakeFiles/dynamorio.dir/fcache.c.o
[ 16%] Building C object core/CMakeFiles/drpreload.dir/string.c.o
[ 16%] Building C object core/CMakeFiles/drdecode.dir/ir/instr_shared.c.o
[ 17%] Building C object core/CMakeFiles/dynamorio_static.dir/dispatch.c.o
[ 17%] Building C object core/CMakeFiles/drpreload.dir/io.c.o
[ 17%] Building C object core/CMakeFiles/drdecode.dir/ir/x86/instr.c.o
[ 17%] Building C object core/CMakeFiles/dynamorio.dir/link.c.o
[ 17%] Building C object core/CMakeFiles/drdecode.dir/ir/instrlist.c.o
[ 17%] Building C object core/CMakeFiles/dynamorio.dir/dispatch.c.o
[ 17%] Building C object core/CMakeFiles/dynamorio_static.dir/emit.c.o
[ 18%] Building C object core/CMakeFiles/dynamorio.dir/emit.c.o
[ 18%] Building C object core/CMakeFiles/dynamorio_static.dir/utils.c.o
[ 18%] Building C object core/CMakeFiles/dynamorio_static.dir/stats.c.o
[ 18%] Building C object core/CMakeFiles/dynamorio_static.dir/config.c.o
[ 18%] Building C object core/CMakeFiles/dynamorio.dir/utils.c.o
[ 18%] Building C object core/CMakeFiles/drdecode.dir/ir/decode_shared.c.o
[ 19%] Building C object core/CMakeFiles/drdecode.dir/ir/x86/decode.c.o
[ 20%] Building C object core/CMakeFiles/dynamorio_static.dir/heap.c.o
[ 20%] Building C object core/CMakeFiles/dynamorio.dir/config.c.o
[ 20%] Building C object core/CMakeFiles/dynamorio_static.dir/monitor.c.o
[ 20%] Building C object core/CMakeFiles/dynamorio_static.dir/perfctr.c.o
[ 20%] Building C object core/CMakeFiles/dynamorio.dir/stats.c.o
[ 20%] Building C object core/CMakeFiles/dynamorio.dir/heap.c.o
[ 20%] Building C object core/CMakeFiles/drdecode.dir/ir/encode_shared.c.o
[ 20%] Building C object core/CMakeFiles/dynamorio_static.dir/vmareas.c.o
[ 20%] Building C object core/CMakeFiles/dynamorio_static.dir/rct.c.o
[ 21%] Building C object core/CMakeFiles/dynamorio.dir/monitor.c.o
[ 21%] Building C object core/CMakeFiles/drdecode.dir/ir/x86/encode.c.o
[ 21%] Building C object core/CMakeFiles/drdecode.dir/ir/disassemble_shared.c.o
[ 22%] Building C object core/CMakeFiles/dynamorio_static.dir/hotpatch.c.o
[ 22%] Building C object core/CMakeFiles/drdecode.dir/ir/x86/disassemble.c.o
[ 22%] Building C object core/CMakeFiles/dynamorio_static.dir/hashtable.c.o
[ 22%] Building C object core/CMakeFiles/dynamorio.dir/perfctr.c.o
[ 23%] Building C object core/CMakeFiles/drdecode.dir/ir/x86/ir_utils.c.o
[ 23%] Building C object core/CMakeFiles/dynamorio.dir/vmareas.c.o
[ 23%] Building C object core/CMakeFiles/dynamorio.dir/rct.c.o
[ 23%] Building C object core/CMakeFiles/drdecode.dir/ir/ir_utils_shared.c.o
[ 23%] Building C object core/CMakeFiles/drdecode.dir/ir/x86/decode_table.c.o
[ 23%] Building C object core/CMakeFiles/drdecode.dir/ir/x86/decode_fast.c.o
[ 23%] Building C object core/CMakeFiles/dynamorio_static.dir/module_list.c.o
[ 23%] Building C object core/CMakeFiles/dynamorio.dir/hotpatch.c.o
[ 23%] Building C object core/CMakeFiles/dynamorio_static.dir/moduledb.c.o
[ 23%] Building C object core/CMakeFiles/dynamorio_static.dir/perscache.c.o
[ 24%] Building C object core/CMakeFiles/dynamorio.dir/hashtable.c.o
[ 25%] Building C object core/CMakeFiles/dynamorio_static.dir/nudge.c.o
[ 25%] Building C object core/CMakeFiles/dynamorio.dir/module_list.c.o
[ 25%] Building C object core/CMakeFiles/dynamorio.dir/moduledb.c.o
[ 25%] Building C object core/CMakeFiles/dynamorio.dir/perscache.c.o
[ 25%] Building C object core/CMakeFiles/drdecode.dir/ir/decodelib.c.o
[ 26%] Building C object core/CMakeFiles/drdecode.dir/io.c.o
[ 26%] Building C object core/CMakeFiles/drdecode.dir/string.c.o
[ 26%] Building C object core/CMakeFiles/dynamorio_static.dir/synch.c.o
[ 26%] Building C object core/CMakeFiles/dynamorio.dir/nudge.c.o
[ 26%] Building C object core/CMakeFiles/dynamorio_static.dir/buildmark.c.o
[ 26%] Building C object core/CMakeFiles/dynamorio_static.dir/loader_shared.c.o
[ 26%] Building C object core/CMakeFiles/dynamorio_static.dir/io.c.o
[ 26%] Building C object core/CMakeFiles/dynamorio_static.dir/native_exec.c.o
[ 27%] Building C object core/CMakeFiles/dynamorio.dir/synch.c.o
[ 27%] Building C object core/CMakeFiles/dynamorio.dir/buildmark.c.o
[ 28%] Building C object core/CMakeFiles/dynamorio_static.dir/lib/instrument.c.o
[ 28%] Building C object core/CMakeFiles/dynamorio.dir/loader_shared.c.o
[ 28%] Building C object core/CMakeFiles/dynamorio_static.dir/lib/module_api.c.o
[ 28%] Building C object core/CMakeFiles/dynamorio_static.dir/translate.c.o
[ 28%] Building C object core/CMakeFiles/dynamorio_static.dir/annotations.c.o
[ 28%] Building C object core/CMakeFiles/dynamorio.dir/io.c.o
[ 28%] Building C object core/CMakeFiles/dynamorio.dir/lib/module_api.c.o
[ 28%] Building C object core/CMakeFiles/dynamorio.dir/native_exec.c.o
[ 29%] Building C object core/CMakeFiles/dynamorio.dir/lib/instrument.c.o
[ 29%] Building C object core/CMakeFiles/dynamorio_static.dir/jit_opt.c.o
[ 29%] Building C object core/CMakeFiles/dynamorio.dir/annotations.c.o
[ 29%] Building C object core/CMakeFiles/dynamorio.dir/translate.c.o
[ 30%] Building C object core/CMakeFiles/dynamorio_static.dir/string.c.o
[ 30%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/arch.c.o
[ 30%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/emit_utils_shared.c.o
[ 30%] Building C object core/CMakeFiles/dynamorio.dir/jit_opt.c.o
[ 30%] Building C object core/CMakeFiles/dynamorio.dir/string.c.o
[ 30%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/x86/emit_utils.c.o
[ 31%] Building C object core/CMakeFiles/dynamorio.dir/arch/arch.c.o
[ 31%] Building C object core/CMakeFiles/dynamorio_static.dir/ir/opnd_shared.c.o
[ 32%] Building C object core/CMakeFiles/dynamorio_static.dir/ir/x86/opnd.c.o
[ 32%] Building C object core/CMakeFiles/dynamorio_static.dir/ir/instr_shared.c.o
[ 32%] Building C object core/CMakeFiles/dynamorio.dir/arch/emit_utils_shared.c.o
[ 32%] Building C object core/CMakeFiles/dynamorio_static.dir/ir/x86/instr.c.o
[ 32%] Building C object core/CMakeFiles/dynamorio.dir/arch/x86/emit_utils.c.o
[ 32%] Building C object core/CMakeFiles/dynamorio.dir/ir/x86/opnd.c.o
[ 32%] Building C object core/CMakeFiles/dynamorio.dir/ir/opnd_shared.c.o
[ 32%] Building C object core/CMakeFiles/dynamorio_static.dir/ir/instrlist.c.o
[ 33%] Building C object core/CMakeFiles/dynamorio.dir/ir/instr_shared.c.o
[ 33%] Building C object core/CMakeFiles/dynamorio_static.dir/ir/decode_shared.c.o
[ 34%] Building C object core/CMakeFiles/dynamorio_static.dir/ir/x86/decode.c.o
[ 34%] Building C object core/CMakeFiles/dynamorio.dir/ir/x86/instr.c.o
[ 34%] Building C object core/CMakeFiles/dynamorio_static.dir/ir/encode_shared.c.o
[ 34%] Linking C static library ../lib64/libdrfrontendlib.a
[ 34%] Building C object core/CMakeFiles/dynamorio.dir/ir/instrlist.c.o
[ 34%] Building C object core/CMakeFiles/dynamorio_static.dir/ir/x86/encode.c.o
[ 34%] Building C object core/CMakeFiles/dynamorio.dir/ir/decode_shared.c.o
[ 34%] Building C object core/CMakeFiles/dynamorio.dir/ir/x86/decode.c.o
[ 35%] Building C object core/CMakeFiles/dynamorio.dir/ir/encode_shared.c.o
[ 35%] Building C object core/CMakeFiles/dynamorio.dir/ir/disassemble_shared.c.o
[ 35%] Building C object core/CMakeFiles/dynamorio.dir/ir/x86/disassemble.c.o
[ 35%] Building C object core/CMakeFiles/dynamorio.dir/ir/x86/encode.c.o
[ 35%] Building C object core/CMakeFiles/dynamorio_static.dir/ir/x86/decode_table.c.o
[ 35%] Building C object core/CMakeFiles/dynamorio_static.dir/ir/disassemble_shared.c.o
[ 35%] Building C object core/CMakeFiles/dynamorio_static.dir/ir/x86/disassemble.c.o
[ 35%] Building C object core/CMakeFiles/dynamorio.dir/arch/proc_shared.c.o
[ 35%] Building C object core/CMakeFiles/dynamorio.dir/ir/x86/decode_fast.c.o
[ 36%] Building C object core/CMakeFiles/dynamorio.dir/ir/ir_utils_shared.c.o
[ 36%] Building C object core/CMakeFiles/dynamorio_static.dir/ir/ir_utils_shared.c.o
[ 37%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/x86/optimize.c.o
[ 37%] Building C object core/CMakeFiles/dynamorio.dir/ir/x86/ir_utils.c.o
[ 37%] Building C object core/CMakeFiles/dynamorio_static.dir/ir/x86/ir_utils.c.o
[ 37%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/x86/mangle.c.o
[ 37%] Building C object core/CMakeFiles/dynamorio.dir/arch/interp.c.o
[ 38%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/proc_shared.c.o
[ 38%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/interp.c.o
[ 39%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/mangle_shared.c.o
[ 39%] Building ASM object core/CMakeFiles/dynamorio_static.dir/arch/x86/x86.asm.o
[ 39%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/x86_code.c.o
[ 39%] Building C object core/CMakeFiles/dynamorio.dir/arch/x86/mangle.c.o
[ 39%] Building C object core/CMakeFiles/dynamorio.dir/arch/x86/proc.c.o
[ 39%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/x86/x86_to_x64.c.o
[ 39%] Building C object core/CMakeFiles/dynamorio.dir/arch/x86/clean_call_opt.c.o
[ 39%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/x86/proc.c.o
[ 40%] Building C object core/CMakeFiles/dynamorio.dir/arch/clean_call_opt_shared.c.o
[ 40%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/x86/clean_call_opt.c.o
[ 40%] Building C object core/CMakeFiles/dynamorio.dir/arch/mangle_shared.c.o
[ 40%] Building C object core/CMakeFiles/dynamorio_static.dir/ir/x86/decode_fast.c.o
[ 40%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/clean_call_opt_shared.c.o
[ 40%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/sideline.c.o
[ 40%] Building C object core/CMakeFiles/dynamorio.dir/ir/x86/decode_table.c.o
[ 40%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/os.c.o
[ 41%] Building C object core/CMakeFiles/dynamorio.dir/arch/x86_code.c.o
[ 42%] Building C object core/CMakeFiles/dynamorio_static.dir/arch/retcheck.c.o
[ 42%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/signal.c.o
[ 42%] Building C object core/CMakeFiles/dynamorio.dir/arch/x86/optimize.c.o
[ 42%] Building C object core/CMakeFiles/dynamorio.dir/arch/sideline.c.o
[ 43%] Building C object core/CMakeFiles/dynamorio.dir/arch/x86/x86_to_x64.c.o
[ 43%] Building C object core/CMakeFiles/dynamorio.dir/unix/signal.c.o
[ 43%] Building C object core/CMakeFiles/dynamorio.dir/arch/retcheck.c.o
[ 43%] Linking CXX static library ../lib64/release/libdrmemtrace_histogram.a
[ 43%] Building ASM object core/CMakeFiles/dynamorio.dir/arch/x86/x86.asm.o
[ 43%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/pcprofile.c.o
[ 43%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/module.c.o
[ 44%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/stackdump.c.o
[ 44%] Building C object core/CMakeFiles/dynamorio.dir/unix/loader_linux.c.o
[ 45%] Building C object core/CMakeFiles/dynamorio.dir/unix/diagnost.c.o
[ 45%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/loader_linux.c.o
[ 44%] Building C object core/CMakeFiles/dynamorio.dir/unix/os.c.o
[ 45%] Building C object core/CMakeFiles/dynamorio.dir/unix/memquery_linux.c.o
[ 45%] Building C object core/CMakeFiles/dynamorio.dir/unix/memquery.c.o
[ 45%] Building C object core/CMakeFiles/dynamorio.dir/unix/stackdump.c.o
[ 45%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/loader.c.o
[ 45%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/memquery_linux.c.o
[ 45%] Building C object core/CMakeFiles/dynamorio.dir/unix/pcprofile.c.o
[ 45%] Building C object core/CMakeFiles/dynamorio.dir/unix/module_elf.c.o
[ 45%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/memcache.c.o
[ 46%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/memquery.c.o
[ 47%] Building C object core/CMakeFiles/dynamorio.dir/unix/memcache.c.o
[ 47%] Building C object core/CMakeFiles/dynamorio.dir/unix/module.c.o
[ 47%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/diagnost.c.o
[ 47%] Building C object core/CMakeFiles/dynamorio.dir/unix/loader.c.o
[ 47%] Building C object core/CMakeFiles/dynamorio.dir/unix/tls_linux_x86.c.o
[ 47%] Building C object core/CMakeFiles/dynamorio.dir/unix/ksynch_linux.c.o
[ 47%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/tls_linux_x86.c.o
[ 47%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/native_elf.c.o
[ 47%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/ksynch_linux.c.o
[ 47%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/signal_linux_x86.c.o
[ 50%] Building C object core/CMakeFiles/dynamorio.dir/unix/signal_linux_x86.c.o
[ 50%] Building C object core/CMakeFiles/dynamorio.dir/unix/native_elf.c.o
[ 50%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/rseq_linux.c.o
[ 50%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/signal_linux.c.o
[ 50%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/module_elf.c.o
[ 50%] Building C object core/CMakeFiles/dynamorio_static.dir/unix/nudgesig.c.o
[ 50%] Building C object core/CMakeFiles/dynamorio.dir/unix/signal_linux.c.o
[ 50%] Building C object core/CMakeFiles/dynamorio.dir/unix/nudgesig.c.o
[ 50%] Building C object core/CMakeFiles/dynamorio.dir/unix/rseq_linux.c.o
/home/sal/repos/other/DrCCTProf/dynamorio/core/unix/rseq_linux.c: In function ‘rseq_clear_tls_ptr’:
/home/sal/repos/other/DrCCTProf/dynamorio/core/unix/rseq_linux.c:221:64: error: request for member ‘ptr64’ in something not a structure or union
  221 |     if (is_dynamo_address((byte *)(ptr_uint_t)app_rseq->rseq_cs.ptr64))
      |                                                                ^
/home/sal/repos/other/DrCCTProf/dynamorio/core/unix/rseq_linux.c:222:26: error: request for member ‘ptr64’ in something not a structure or union
  222 |         app_rseq->rseq_cs.ptr64 = 0;
      |                          ^
[ 50%] Built target drfrontendlib
make[2]: *** [core/CMakeFiles/dynamorio_static.dir/build.make:1214: core/CMakeFiles/dynamorio_static.dir/unix/rseq_linux.c.o] Error 1
make[2]: *** Waiting for unfinished jobs....
[ 50%] Built target drmemtrace_histogram
[ 50%] Building C object libutil/CMakeFiles/drconfiglib.dir/dr_config.c.o
[ 50%] Building C object libutil/CMakeFiles/drconfiglib.dir/utils.c.o
[ 50%] Building CXX object clients/drcachesim/CMakeFiles/directory_iterator.dir/common/directory_iterator.cpp.o
[ 50%] Building C object libutil/CMakeFiles/drconfiglib.dir/__/core/io.c.o
[ 51%] Building C object libutil/CMakeFiles/drconfiglib.dir/__/core/unix/nudgesig.c.o
/home/sal/repos/other/DrCCTProf/dynamorio/core/unix/rseq_linux.c: In function ‘rseq_clear_tls_ptr’:
/home/sal/repos/other/DrCCTProf/dynamorio/core/unix/rseq_linux.c:221:64: error: request for member ‘ptr64’ in something not a structure or union
  221 |     if (is_dynamo_address((byte *)(ptr_uint_t)app_rseq->rseq_cs.ptr64))
      |                                                                ^
/home/sal/repos/other/DrCCTProf/dynamorio/core/unix/rseq_linux.c:222:26: error: request for member ‘ptr64’ in something not a structure or union
  222 |         app_rseq->rseq_cs.ptr64 = 0;
      |                          ^
make[2]: *** [core/CMakeFiles/dynamorio.dir/build.make:1214: core/CMakeFiles/dynamorio.dir/unix/rseq_linux.c.o] Error 1
make[2]: *** Waiting for unfinished jobs....
[ 51%] Linking CXX static library ../lib64/release/libdrmemtrace_basic_counts.a
[ 51%] Built target drmemtrace_basic_counts
[ 51%] Linking CXX static library ../lib64/release/libdirectory_iterator.a
[ 51%] Linking CXX static library ../lib64/release/libdrmemtrace_reuse_distance.a
[ 51%] Built target directory_iterator
[ 51%] Built target drmemtrace_reuse_distance
[ 51%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_analyzer.dir/analyzer.cpp.o
[ 52%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_analyzer.dir/common/trace_entry.cpp.o
[ 52%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_analyzer.dir/reader/reader.cpp.o
[ 52%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_analyzer.dir/reader/compressed_file_reader.cpp.o
[ 52%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_analyzer.dir/reader/config_reader.cpp.o
[ 52%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_analyzer.dir/reader/file_reader.cpp.o
[ 52%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_analyzer.dir/reader/crc32c.cpp.o
[ 53%] Building CXX object clients/drcachesim/CMakeFiles/drmemtrace_analyzer.dir/reader/snappy_file_reader.cpp.o
[ 53%] Linking CXX executable ../bin64/drcpusim_ops
[ 53%] Linking C shared library ../lib64/release/libdrpreload.so
[ 53%] Built target drcpusim_ops
[ 53%] Linking CXX static library ../lib64/release/libdrmemtrace_reuse_time.a
[ 53%] Linking CXX static library ../lib64/release/libdrmemtrace_func_view.a
[ 53%] Built target drpreload
[ 53%] Built target drmemtrace_reuse_time
[ 53%] Built target drmemtrace_func_view
[ 53%] Linking C static library ../lib64/libdrconfiglib.a
[ 53%] Built target drconfiglib
[ 53%] Building C object tools/CMakeFiles/drconfig.dir/drdeploy.c.o
[ 53%] Linking C static library ../lib64/libdrdecode.a
[ 53%] Built target drdecode
/home/sal/repos/other/DrCCTProf/dynamorio/core/unix/os.c: In function ‘pre_system_call’:
/home/sal/repos/other/DrCCTProf/dynamorio/core/unix/os.c:7717:19: error: ‘cur_range_first_fd’ may be used uninitialized [-Werror=maybe-uninitialized]
 7717 |             ret = dynamorio_syscall(SYS_close_range, 3, cur_range_first_fd,
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 7718 |                                     cur_range_last_fd, flags);
      |                                     ~~~~~~~~~~~~~~~~~~~~~~~~~
/home/sal/repos/other/DrCCTProf/dynamorio/core/unix/os.c:7685:14: note: ‘cur_range_first_fd’ was declared here
 7685 |         uint cur_range_first_fd, cur_range_last_fd;
      |              ^~~~~~~~~~~~~~~~~~
[ 53%] Building CXX object clients/drdisas/CMakeFiles/drdisas.dir/drdisas.cpp.o
[ 53%] Building C object core/CMakeFiles/drinjectlib.dir/unix/injector.c.o
[ 53%] Building C object core/CMakeFiles/drinjectlib.dir/config.c.o
[ 53%] Building C object core/CMakeFiles/drinjectlib.dir/string.c.o
[ 53%] Building C object core/CMakeFiles/drinjectlib.dir/io.c.o
/home/sal/repos/other/DrCCTProf/dynamorio/core/unix/os.c: In function ‘pre_system_call’:
/home/sal/repos/other/DrCCTProf/dynamorio/core/unix/os.c:7717:19: error: ‘cur_range_first_fd’ may be used uninitialized [-Werror=maybe-uninitialized]
 7717 |             ret = dynamorio_syscall(SYS_close_range, 3, cur_range_first_fd,
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 7718 |                                     cur_range_last_fd, flags);
      |                                     ~~~~~~~~~~~~~~~~~~~~~~~~~
/home/sal/repos/other/DrCCTProf/dynamorio/core/unix/os.c:7685:14: note: ‘cur_range_first_fd’ was declared here
 7685 |         uint cur_range_first_fd, cur_range_last_fd;
      |              ^~~~~~~~~~~~~~~~~~
[ 53%] Linking C executable ../bin64/drconfig
[ 53%] Built target drconfig
cc1: all warnings being treated as errors
make[2]: *** [core/CMakeFiles/dynamorio.dir/build.make:962: core/CMakeFiles/dynamorio.dir/unix/os.c.o] Error 1
cc1: all warnings being treated as errors
make[2]: *** [core/CMakeFiles/dynamorio_static.dir/build.make:962: core/CMakeFiles/dynamorio_static.dir/unix/os.c.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:1357: core/CMakeFiles/dynamorio.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
make[1]: *** [CMakeFiles/Makefile2:1385: core/CMakeFiles/dynamorio_static.dir/all] Error 2
[ 54%] Linking C static library ../lib64/libdrinjectlib.a
[ 54%] Linking CXX executable ../bin64/drgui
[ 54%] Built target drinjectlib
[ 54%] Linking CXX static library ../lib64/release/libdrmemtrace_simulator.a
[ 54%] Built target drmemtrace_simulator
[ 54%] Built target drgui
[ 54%] Linking CXX executable ../bin64/drdisas
[ 54%] Linking CXX static library ../lib64/release/libdrmemtrace_analyzer.a
[ 54%] Built target drmemtrace_analyzer
[ 54%] Built target drdisas
[ 54%] Linking CXX executable ../bin64/drcachesim_ops
[ 54%] Built target drcachesim_ops
make: *** [Makefile:156: all] Error 2

Information on your system:

Additional context

Support the context switch inside the thread

Golang implements routines switch inside the OS thread, and the routine may pause in one OS thread and resume in another thread. So the tree build per thread may give the wrong call stack. We need to implement the API let the client can set the current context to solve this problem.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.