Summary:
Following patch D19265 which enable software floating point support in the Sparc backend, this patch enables the option to be enabled in the front-end using the -msoft-float option.
The user should ensure a library (such as the builtins from Compiler-RT) that includes the software floating point routines is provided.
Reviewers: jyknight, lero_chris
Subscribers: jyknight, cfe-commits
Differential Revision: http://reviews.llvm.org/D20419
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@270538 91177308-0d34-0410-b5e6-96231b3b80d8
in order to make testing somewhat more feasible. Has the advantage
of making it easier to find target features as well.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@241134 91177308-0d34-0410-b5e6-96231b3b80d8
using a string map to canonicalize. Fix up a couple of testcases
that needed changing since we are no longer simply appending features
to the list, but all of their mask dependencies as well.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@241129 91177308-0d34-0410-b5e6-96231b3b80d8
strings and remove the setting of TargetOptions::UseSoftFloat to
match the code change in llvm r237079.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237080 91177308-0d34-0410-b5e6-96231b3b80d8
by erasing the soft-float target feature if the rest of the front
end added it because of defaults or the soft float option.
Add some testing for some of the targets that implement this hack.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@236179 91177308-0d34-0410-b5e6-96231b3b80d8
This makes sure that the front end is specific about what they're expecting
the backend to produce. Update a FIXME with the idea that the target-features
could be more precise using backend knowledge.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@235936 91177308-0d34-0410-b5e6-96231b3b80d8
As a note, any target that uses fake target features via command
line options will have similar problems.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@233227 91177308-0d34-0410-b5e6-96231b3b80d8
the target-cpu, if different from the triple's cpu, and
target-features as they're written that are passed down from the
driver.
Together with LLVM r232885 this should allow the LTO'ing of binaries
that contain modules compiled with different code generation options
on a subset of architectures with full backend support (x86, powerpc,
aarch64).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@232888 91177308-0d34-0410-b5e6-96231b3b80d8