The FreeBSD driver support for clang tested explicitly for 32-bit
Intel, MIPS, or PowerPC targets where /usr/lib32/libcrt1.o was
present to decide whether -m32 should use /usr/lib32. At jrtc27's
suggestion, simply test for a 32-bit platform rather than adding
arm to the list. This is one step in adding support for -m32 on
arm64.
Details
Diff Detail
- Repository
- rG FreeBSD src repository
- Lint
No Lint Coverage - Unit
No Test Coverage - Build Status
Buildable 52515 Build 49406: arc lint + arc unit
Event Timeline
@dim, we need a way to force the make system to bootstrap a compiler with this change, or the lib32 build breaks. Can we change the version string, etc?
Indeed, bumping lib/clang/freebsd_cc_version.h is the way to force a bootstrap clang rebuild. The change to clang/lib/Driver/ToolChains/FreeBSD.cpp should also be upstreamed.
Thanks, I didn't realize that there is a FreeBSD-specific version; that helps.
How do we go about upstreaming?
It's trivial enough I just committed it directly: https://github.com/llvm/llvm-project/commit/3450272fc281979388bb845a9fffb59b42cc2e7e
I've merged this back through llvm13. I'll let the changes settle for a day and then merge to quarterly so CI can use them.
Please add a pointer to the upstream commit when committing this so it's clear this isn't a downstream diff