about summary refs log tree commit diff
path: root/library/compiler-builtins/crates/symbol-check/src
AgeCommit message (Collapse)AuthorLines
2025-08-09symcheck: Skip `__ymm@` symbols on WindowsTrevor Gross-1/+1
Like `__real@`, and `__xmm@`, Windows can emit duplicate `__ymm@` symbols for constants.
2025-08-07symcheck: Ignore symbols in `.debug_gdb_scripts`Trevor Gross-0/+5
Since [1], our object files may now contain a GDB script section. These symbols wind up with multiple instances in the archive but are weak, so we can safely ignore them in our duplicates check. This resolves the current CI failures. [1]: https://github.com/rust-lang/rust/pull/143679
2025-08-07symcheck: Store the section name in `SymInfo` if availableTrevor Gross-10/+20
Currently `SymInfo` stores a `Section`, which is just an index: SymInfo { section: Section( SectionIndex( 539, ), ), ... }, Look up and store the section name instead if possible, with a fallback to the `Section` debug printing. This makes output more clear and will allow us to filter by section name.
2025-07-04symcheck: Improve diagnostics from spawned CargoTrevor Gross-7/+22
Rather than printing the entire JSON dump, use the rendered version.
2025-07-04symcheck: Make `target` a positional argumentTrevor Gross-14/+23
This makes it more obvious what we intend to check rather than looking for `--target`.
2025-06-14symcheck: Add a wrapper around an archiveTrevor Gross-24/+80
Rather than re-opening the archive file for each check, add a wrapper that keeps the data in memory. Additionally, collect the `--target` argument so it can be used within this crate.
2025-05-29symcheck: Print the command to make reproducing errors easierTrevor Gross-7/+8
2025-05-29Remove the now-unneeded llvm-tools-previewTrevor Gross-1/+1
Since a working `nm` is no longer needed as part of CI, the rustup component can be removed.
2025-05-29Replace the `nm` symbol check with a Rust implementationTrevor Gross-0/+231
This should be less error-prone and adaptable than the `nm` version, and have better cross-platform support without needing LLVM `nm` installed.