ARM-software / LLVM-embedded-toolchain-for-Arm

A project dedicated to building LLVM toolchain for Arm and AArch64 embedded targets.
Apache License 2.0
419 stars 98 forks source link

std::unique_lock is not available #555

Open nolange opened 1 week ago

nolange commented 1 week ago

The classes are very useful without threads (eq. using Irq locks).

Upstream has fixed this, but it didnt make it to version 19. Please cherry-pick those commits:

https://github.com/llvm/llvm-project/commit/6192f458f4fd2ca4e6f01515547034f89325e73c https://github.com/llvm/llvm-project/commit/e9d5842ac7bd8d9b5700dc415910425ca796f4c

nolange commented 1 week ago

Well, seems like std::lock_guard did end up in 19, but std::unique_lock did not. means only https://github.com/llvm/llvm-project/commit/e9d5842ac7bd8d9b5700dc415910425ca796f4c is necessary.

voltur01 commented 1 week ago

Hi, thank you for pointing this out! Is this commit available on the release/19.x branch upstream yet? We can move the upstream LLVM revision to a later tag to pick it up https://github.com/ARM-software/LLVM-embedded-toolchain-for-Arm/blob/llvm-19/versions.json otherwise we do not really have a copy of LLVM project to cherry-pick into - we would need a patch file https://github.com/ARM-software/LLVM-embedded-toolchain-for-Arm/tree/llvm-19/patches/llvm-project

nolange commented 1 week ago

No, its just in main for now, as far as I can see.

But you can get the patch from github from the commit: https://github.com/llvm/llvm-project/commit/e9d5842ac7bd8d9b5700dc415910425ca796f4c.patch ?