[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
1 file changed
tree: b8892485b3107178278185357cc5995afe35ac05
  1. git-hooks/
  2. infra/
  3. third_party/
  4. cts
  5. firmware
  6. flower
  7. jiri.lock
  8. MILESTONE
  9. minimal
  10. prebuilts
  11. README.md
  12. stem
  13. test_durations
  14. toolchain
README.md

Integration

This repository contains Fuchsia's Global Integration manifest files.

Making changes

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.

Obtaining the source

First install Jiri.

Next run:

$ jiri init
$ jiri import minimal https://fuchsia.googlesource.com/integration
$ jiri update

Third party

Third party projects should have their own subdirectory in ./third_party.