Displaying 3 results from an estimated 3 matches for "__llvm_".
Did you mean:
__llvm
2020 Sep 18
3
GC-parseable element atomic memcpy/memmove
...the copy operation.
There are three parts to the new lowering:
1) The calls with the new attribute will be wrapped into a statepoint
by RewriteStatepointsForGC (RS4GC). This way the stack at the calls
will be GC parceable.
2) Currently these intrinsics are lowered to GC leaf calls to the symbols
__llvm_{memcpy|memmove}_element_unordered_atomic_<element_size>.
The calls with the new attribute will be lowered to calls to different
symbols, let's say
__llvm_{memcpy|memmove}_element_unordered_atomic_safepoint_<element_size>.
This way the runtime can provide copy implementations with sa...
2020 Sep 30
2
GC-parseable element atomic memcpy/memmove
...the copy operation.
There are three parts to the new lowering:
1) The calls with the new attribute will be wrapped into a statepoint
by RewriteStatepointsForGC (RS4GC). This way the stack at the calls
will be GC parceable.
2) Currently these intrinsics are lowered to GC leaf calls to the symbols
__llvm_{memcpy|memmove}_element_unordered_atomic_<element_size>.
The calls with the new attribute will be lowered to calls to different
symbols, let's say
__llvm_{memcpy|memmove}_element_unordered_atomic_safepoint_<element_size>.
This way the runtime can provide copy implementations with sa...
2019 May 16
2
How data is laid out in default.profraw when doing profiling?
...default profraw. Now they want to construct a default profraw manually but don't know how data is laid out in `default profraw` file.
We found a struct ProfDataIOVec in InstrProfilingWriter.c in compiler-rt and followed this layout.
```
ProfDataIOVec IOVec[] = {
{&Header, sizeof(__llvm_profile_header), 1},
{DataBegin, sizeof(__llvm_profile_data), DataSize},
{CountersBegin, sizeof(uint64_t), CountersSize},
{SkipNameDataWrite ? NULL : NamesBegin, sizeof(uint8_t), NamesSize},
{Zeroes, sizeof(uint8_t), Padding}};
```
This helped us successfully passed some sm...