Renato Golin
a4d563526e
Fix Darwin NEON FP and increase coverage
...
llvm-svn: 177664
2013-03-21 21:30:49 +00:00
Renato Golin
b4dd6c5945
Avoid NEON SP-FP unless unsafe-math or Darwin
...
NEON is not IEEE 754 compliant, so we should avoid lowering single-precision
floating point operations with NEON unless unsafe-math is turned on. The
equivalent VFP instructions are IEEE 754 compliant, but in some cores they're
much slower, so some archs/OSs might still request it to be on by default,
such as Swift and Darwin.
llvm-svn: 177651
2013-03-21 18:47:47 +00:00
Jakob Stoklund Olesen
ac6cfa41d6
Remove some register allocation order dependencies.
...
llvm-svn: 172874
2013-01-19 00:03:32 +00:00
Evan Cheng
93b5cdc5ab
Make the test less likely to fail with minor changes.
...
llvm-svn: 130778
2011-05-03 19:09:32 +00:00
Jakob Stoklund Olesen
0888bcf542
Fix ARM tests to be register allocator independent.
...
llvm-svn: 128680
2011-03-31 22:14:03 +00:00
Andrew Trick
47ff14b091
Convert -enable-sched-cycles and -enable-sched-hazard to -disable
...
flags. They are still not enable in this revision.
Added TargetInstrInfo::isZeroCost() to fix a fundamental problem with
the scheduler's model of operand latency in the selection DAG.
Generalized unit tests to work with sched-cycles.
llvm-svn: 123969
2011-01-21 05:51:33 +00:00
Evan Cheng
2d59ee34f1
Add some missing isel predicates on def : pat patterns to avoid generating VFP vmla / vmls (they cause stalls). Disabling them in isel is properly not a right solution, I'll look into a proper solution next.
...
llvm-svn: 118922
2010-11-12 20:32:20 +00:00
Evan Cheng
34c260458a
Change ARM scheduling default to list-hybrid if the target supports floating point instructions (and is not using soft float).
...
llvm-svn: 104307
2010-05-21 00:43:17 +00:00
Jim Grosbach
71fcb4fedd
switch the flag for using NEON for SP floating point to a subtarget 'feature'.
...
Re-commit. This time complete with testsuite updates.
llvm-svn: 99570
2010-03-25 23:47:34 +00:00
Jim Grosbach
d7cf55cd0e
Use Unified Assembly Syntax for the ARM backend.
...
llvm-svn: 86494
2009-11-09 00:11:35 +00:00
David Goodwin
1cc6dd97da
Remove neonfp attribute and instead set default based on CPU string. Add -arm-use-neon-fp to override the default.
...
llvm-svn: 83218
2009-10-01 22:19:57 +00:00
Dan Gohman
c8054d90fb
Eliminate more uses of llvm-as and llvm-dis.
...
llvm-svn: 81293
2009-09-09 00:09:15 +00:00
David Goodwin
bdf1a1d1a2
Use FileCheck... its good for you...
...
llvm-svn: 78613
2009-08-10 23:06:57 +00:00
David Goodwin
108b522912
Fix test.
...
llvm-svn: 78606
2009-08-10 22:31:04 +00:00
Dan Gohman
676d115ce5
Add nounwind keywords.
...
llvm-svn: 78568
2009-08-10 16:48:40 +00:00
David Goodwin
742db6a6d4
Make NEON single-precision FP support the default for cortex-a8 (again).
...
llvm-svn: 78430
2009-08-07 23:32:33 +00:00
David Goodwin
a2824d5700
Improve tests.
...
llvm-svn: 78083
2009-08-04 18:11:59 +00:00
David Goodwin
3b9c52c5c1
Initial support for single-precision FP using NEON. Added "neonfp" attribute to enable. Added patterns for some binary FP operations.
...
llvm-svn: 78081
2009-08-04 17:53:06 +00:00