Page MenuHomePhabricator

BareMetal ToolChain multilib layering
AcceptedPublic

Authored by michaelplatings on Feb 1 2023, 7:52 AM.

Details

Summary

This enables layering baremetal multilibs on top of each other.
For example a multilib containing only a no-exceptions libc++ could be
layered on top of a multilib containing C libs. This avoids the need
to duplicate the C library for every libc++ variant.

Diff Detail

Event Timeline

michaelplatings created this revision.Feb 1 2023, 7:52 AM
Herald added a project: Restricted Project. · View Herald TranscriptFeb 1 2023, 7:52 AM
Herald added a subscriber: abidh. · View Herald Transcript
michaelplatings requested review of this revision.Feb 1 2023, 7:52 AM
Herald added a project: Restricted Project. · View Herald TranscriptFeb 1 2023, 7:52 AM

No comments on the implementation.

Rebase and remove some braces

PrintArgs -> PrintOptions

flags -> tags

peter.smith accepted this revision.Mar 13 2023, 9:26 AM

I've set approved from the Arm side. Please leave some time for people in the US time zone to leave any final comments or ask for extensions.

This revision is now accepted and ready to land.Mar 13 2023, 9:26 AM
phosek added inline comments.Tue, May 23, 1:34 AM
clang/lib/Driver/ToolChains/BareMetal.cpp
228

Can you use llvm::reverse instead of allocating an entire new collection?