6 Commits

Author SHA1 Message Date
Andrea Canciani
deaa2fe753 Make the feature whitelists constants
This simplifies the code a bit and makes the types nicer, too.
2016-04-20 09:08:25 +02:00
Andrea Canciani
5879ee1eca Distinguish different vfp? features
The different generations of ARM floating point VFP correspond to the
LLVM CPU features named `vfp2`, `vfp3`, and `vfp4`; they are now
exposed in Rust under the same names.

This commit fixes some crashes that would occour when checking if the
`vfp` feature exists (the crash occurs because the linear scan of the
LLVM feature goes past the end of the features whenever it searches
for a feature that does not exist in the LLVM tables).
2016-04-19 17:48:51 +02:00
Andrea Canciani
f942c28900 Do not intern NUL terminators
The C representation needed by LLVM requires strings to be
NUL-terminated, but on the Rust side they should not contain unwanted
NULs.
2016-04-19 17:44:36 +02:00
Andrea Canciani
92e24b9516 Expose the features computed from LLVM in cfg!
Instead of relying on the features explicitly passed through the
command line, compute them from the LLVM `TargetMachine`.
2016-04-09 00:41:23 +02:00
Jose Narvaez
4e64645228 Rustfmting librustc_driver. 2015-11-10 20:48:44 +00:00
Huon Wilson
4f4425840d Add some SIMD target_feature cfg's when appropriate.
NB. this may not be 100% perfect.
2015-08-17 14:41:37 -07:00