[all-commits] [llvm/llvm-project] faabef: [ORC-RT] Add a std::identity substitute.
lhames via All-commits
all-commits at lists.llvm.org
Fri Aug 26 15:58:40 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: faabefe3c8a4755249e75cf8e2d3726460887946
https://github.com/llvm/llvm-project/commit/faabefe3c8a4755249e75cf8e2d3726460887946
Author: Lang Hames <lhames at gmail.com>
Date: 2022-08-26 (Fri, 26 Aug 2022)
Changed paths:
M compiler-rt/lib/orc/stl_extras.h
Log Message:
-----------
[ORC-RT] Add a std::identity substitute.
The __orc_rt::identity utility is intended to serve as a substitute for
c++20's std::identity until we can use the latter (when LLVM moves to c++20).
Commit: ac0c8cb3ff7100d8a4480bed492e54ffc80814a1
https://github.com/llvm/llvm-project/commit/ac0c8cb3ff7100d8a4480bed492e54ffc80814a1
Author: Lang Hames <lhames at gmail.com>
Date: 2022-08-26 (Fri, 26 Aug 2022)
Changed paths:
M compiler-rt/lib/orc/executor_address.h
M compiler-rt/lib/orc/unittests/executor_address_test.cpp
Log Message:
-----------
[ORC-RT] Add "wrap" and "unwrap" steps to __orc_rt::ExecutorAddr toPtr/fromPtr.
The wrap/unwrap operations are applied to pointers after/before conversion to/from
raw addresses. They can be used to tag, untag, sign, or strip signing from
pointers. They currently default to 'rawPtr' (identity) on all platforms, but it
is expected that the default will be set based on the host architecture, e.g.
they would default to signing/stripping for arm64e.
This is the ORC runtime counterpart to f14cb494a34:
Compare: https://github.com/llvm/llvm-project/compare/134986a72042...ac0c8cb3ff71
More information about the All-commits
mailing list