Displaying 6 results from an estimated 6 matches for "__start_xray_instr_map".
2016 Jun 23
2
Building an array in a section from multiple object files
Awesome, thanks Peter!
Cheers
On Thu, Jun 23, 2016 at 10:35 AM Peter Collingbourne <peter at pcc.me.uk>
wrote:
> If you give your section a valid C identifier name, i.e. something like
> "xray_instr_map" (no period), the linker will synthesize symbols named
> "__start_xray_instr_map" and "__stop_xray_instr_map", which will point to
> the start and end of the combined section.
>
> Peter
>
> On Thu, Jun 23, 2016 at 10:26 AM, Dean Michael Berris via llvm-dev <
> llvm-dev at lists.llvm.org> wrote:
>
>> Hi,
>>
>> As part o...
2016 Jun 27
0
Building an array in a section from multiple object files
Just to close this out, I've updated http://reviews.llvm.org/D19904 to use
named ELF groups per-function, and have the runtime library use
__start_xray_instr_map and __stop_xray_instr_map as weak symbols from the
C++ side. I've sent a patch to make creating these COMDAT/Group sections
easier when lowering through the MCStreamer interface (
http://reviews.llvm.org/D21743).
Cheers
On Fri, Jun 24, 2016 at 4:23 AM Dean Michael Berris <dberris at google...
2016 Jun 27
1
Building an array in a section from multiple object files
Dean Michael Berris via llvm-dev <llvm-dev at lists.llvm.org> writes:
> Just to close this out, I've updated http://reviews.llvm.org/D19904 to use
> named ELF groups per-function, and have the runtime library use
> __start_xray_instr_map and __stop_xray_instr_map as weak symbols from the
> C++ side.
In case you're not aware, the __start_/__stop_ trick isn't portable.
You may want to look at compiler-rt/lib/profile/InstrProfilingPlatform*.c.
There, we do the __start_ trick for linux and freebsd, a similar trick
for darwi...
2016 Jun 23
2
Building an array in a section from multiple object files
Hi,
As part of working on XRay, I'm trying to accomplish the following: create
a section that contains an array of entries pertaining to the
instrumentation map (nop sleds) in an object file, and have those merged
into a single section in the final binary where the contents are
concatenated. The trick though is I'd like to be able to reference the
whole array with a single symbol (or two,
2017 Nov 21
2
question about xray tls data initialization
...ne
based on chrono system_clock(ignore clockid_t)
for tls destructor part, I've just commented them out.(but
https://www.codeproject.com/Articles/8113/Thread-Local-Storage-The-C-Way
gives a thread exit callback way for coff)
and last thing , which I don't understand is the weak symbol for
__start_xray_instr_map[]
__stop_xray_instr_map[]
__start_xray_fn_idx[]
__stop_xray_fn_idx[]
I replace them with __declspec(selectany) , but I'm not sure they
have same meanings.
some random generated code:
.text
.intel_syntax noprefix
.def call;
.scl 2;
.type 32;
.endef
.g...
2017 Nov 16
2
question about xray tls data initialization
I'm learning the xray library and try if it can be built on windows, in
xray_fdr_logging_impl.h
line 152 , comment written as
// Using pthread_once(...) to initialize the thread-local data structures
but at line 175, 183, code written as
thread_local pthread_key_t key;
// Ensure that we only actually ever do the pthread initialization once.
thread_local bool UNUSED Unused = [] {