SUSE's ARM triples always ends with -gnueabi but all the targets are hard-float
Diff Detail
Diff Detail
- Build Status
Buildable 5805 Build 5805: arc lint + arc unit
Event Timeline
Comment Actions
I'm not sure this will work at all. Not because it doesn't make sense (it does), but because of several bugs in the soft vs. hard float implementation in the Triple related classes all the way to the back-end.
I'm adding other folks to discuss.
Comment Actions
I am open to suggestions on how to do this correctly. The problem as stated is all SUSE ARM triples end with -gnueabi but they are all hard-float. Environment handling in LLVM seems to only check for the last part of the triple and not the whole string.
Comment Actions
I think that you should mutate the environment in the canonicalisation phase of the triple. That will allow you to use armv7-suse-linux-gnueabi and armv7-suse-linux-gnueabihf in the frontend, but have the backend always get armv7-suse-linux-gnueabihf.