Displaying 3 results from an estimated 3 matches for "instrprofilingplatform".
2016 Jun 27
1
Building an array in a section from multiple object files
...904 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 darwin, and fall back to a static registration scheme elsewhere.
> I've sent a patch to make creating these COMDAT/Group sections easier
> when lowering through the MCStreamer interface (
> http://reviews.l...
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,
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