-
-
Notifications
You must be signed in to change notification settings - Fork 3.1k
std.Target
: add tags and info for alpha, hppa, microblaze, sh + some bonus commits
#25640
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
ad038b3
to
fa70110
Compare
else => VaListPowerPc, | ||
}, | ||
.s390x => VaListS390x, | ||
.sh, .sheb => VaListSh, // TODO: This is wrong for `sh_renesas`. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@mlugg thoughts on this? GCC makes the definition of the type dependent on the enclosing function's calling convention, which seems clearly sensible to me. The idea that there is a single global VaList
type is just kinda fundamentally flawed in a world where we support multiple calling conventions for one target.
I figure we could remove std.builtin.VaList
and instead make Sema pick one of the more specific decls based on calling convention. It seems like moving that logic into the compiler will also let us get rid of a lot of special-casing we do around the resolution of VaList
.
This was forgotten during the refactoring of std.builtin.CallingConvention. It mirrors mips64_n32 for MIPS.
The value being computed here is almost always equal to the pointer bit width.
These are microcontroller architectures; none of the OSs in the outer switch run on them.
fa70110
to
09b53f7
Compare
Supported by LLVM and CBE.
Only supported in CBE.
Only supported in CBE.
This type has nothing to do with the language.
09b53f7
to
c1100d1
Compare
With this, we have target info for all architectures currently supported by Linux (except nios2, but that's at death's door anyway).