commit | 79c8c61963a9211f37f37ca1af1ac0d203588a72 | [log] [tgz] |
---|---|---|
author | Brian Bosak <bbosak@fuchsia.infra.roller.google.com> | Fri Aug 04 16:12:50 2023 +0000 |
committer | Copybara-Service <copybara-worker@google.com> | Fri Aug 04 09:15:11 2023 -0700 |
tree | b8892485b3107178278185357cc5995afe35ac05 | |
parent | f99893266202a25116c73fb8b5db853db1ad51e1 [diff] |
[roll] Roll fuchsia Revert "[libc] Move abort into llvm-libc implementation structure" This reverts commit 08afa14c2bf0359009dfc51b6aec341f45d76d60. Reason for revert: https://fxbug.dev/131744 Original change's description: > [libc] Move abort into llvm-libc implementation structure > > This moves the abort implementation from the old musl fork code > structure into the new llvm-libc-based code structure. The > implementation is unchanged except for the never-raelly-reached > fallback case using the ZX_TASK_RETCODE_EXCEPTION_KILL value > instead of -1 in the zx_process_exit syscall. > > What's really new here is setting up the libc build machinery for > having Fuchsia-specific implementations in the Fuchsia source tree > but structured as if they were in the llvm-libc source tree. > These implementations, of which abort is the first example, will > use the llvm-libc C++ namespace and boilerplate macro structure > for defining the code. The llvm-libc test code from upstream is > used to test these implementations the same as the upstream > implementations for other operating systems are tested. > > This resolves the failure of ld-tests in the coverage build. Its > issue was that this build doesn't compile away calls to abort that > the other builds do. We were linking in the abort implementation > from libc before to satisfy any such references, but because we > were using the old style of libc implementation code that defined > the public API symbol with default visibility such that references > require symbolic resolution in dynamic linking, which should never > be required by references in the dynamic linker except those to > the vDSO (not even references to itself like this one). Now the > abort implementation comes from the "hermetic" compilation of the > libc code, which uses hidden visibility instead so that no dynamic > linking is required. > > Original-Bug: 130483 > Original-Fixed: 131578 > Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/894361 Original-Bug: 130483 No-Presubmit: true No-Tree-Checks: true No-Try: true Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/895779 Original-Revision: 1a6cd8e76b5daf68566a94fd16490ac65ab356b5 GitOrigin-RevId: f0574b5ff1fc0e59dc00f9d7a47a2fc0638a85dc Change-Id: I540b45aa038c107deb9f3e28681721887834733d
This repository contains Fuchsia's Global Integration manifest files.
All changes should be made to the internal version of this repository. Our infrastructure automatically updates this version when the internal one changes.
Currently all changes must be made by a Google employee. Non-Google employees wishing to make a change can ask for assistance via the IRC channel #fuchsia
on Freenode.
First install Jiri.
Next run:
$ jiri init $ jiri import minimal https://fuchsia.googlesource.com/integration $ jiri update
Third party projects should have their own subdirectory in ./third_party
.