commit | 349abecb907dc03134110143b26462adba6bad45 | [log] [tgz] |
---|---|---|
author | global-integration-roller <global-integration-roller@fuchsia-infra.iam.gserviceaccount.com> | Sat Apr 29 15:38:49 2023 +0000 |
committer | GI Roller <global-integration-roller@fuchsia-infra.iam.gserviceaccount.com> | Sat Apr 29 15:38:49 2023 +0000 |
tree | 1b71928ee07f710499311a07d5f52d1a39202607 | |
parent | e4d24b6b583a15b92d642f7eb66425fdce9cd219 [diff] |
[superproject] Roll llvm-project/libc [libc] Add support for global ctors / dtors for AMDGPU This patch makes the necessary changes to support calling global constructors and destructors on the GPU. The patch in D149340 allows the `lld` linker to create the symbols pointing us to these globals. These should be executed by a single thread, which is more difficult on the GPU because all threads are active. I chose to use an atomic counter to sync every thread on the GPU. This is very slow if you use more than a few thousand threads, but for testing purposes it should be sufficient. Depends on D149340 D149363 Reviewed By: sivachandra Differential Revision: https://reviews.llvm.org/D149398 GitOrigin-RevId: e6907e1dff05e76f1b101226bfbf24484e4df73e Original-Revision: ec040b7f0382eb47cda869f69d4bca02fc872b25 Roller-URL: https://ci.chromium.org/b/8782468262605328817 CQ-Do-Not-Cancel-Tryjobs: true Change-Id: I40d35e10b80e8fd7704aa46c18e56ef7b0267ec4 Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/849023
Fuchsia is an open source, general purpose operating system supporting modern 64-bit Intel and ARM processors.
We expect everyone interacting with our project to respect our code of conduct.
Read more about Fuchsia's principles.
See Getting Started.
See fuchsia.dev.