llvm-6502/test
Jakob Stoklund Olesen 9bbe4d6c00 Clean up the handling of the x87 fp stack to make it more robust.
Drop the FpMov instructions, use plain COPY instead.

Drop the FpSET/GET instruction for accessing fixed stack positions.
Instead use normal COPY to/from ST registers around inline assembly, and
provide a single new FpPOP_RETVAL instruction that can access the return
value(s) from a call. This is still necessary since you cannot tell from
the CALL instruction alone if it returns anything on the FP stack. Teach
fast isel to use this.

This provides a much more robust way of handling fixed stack registers -
we can tolerate arbitrary FP stack instructions inserted around calls
and inline assembly. Live range splitting could sometimes break x87 code
by inserting spill code in unfortunate places.

As a bonus we handle floating point inline assembly correctly now.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134018 91177308-0d34-0410-b5e6-96231b3b80d8
2011-06-28 18:32:28 +00:00
..
Analysis Remove support for parsing the "type i32" syntax for defining a numbered 2011-06-19 00:03:46 +00:00
Archive
Assembler Remove support for parsing the "type i32" syntax for defining a numbered 2011-06-19 00:03:46 +00:00
Bindings/Ocaml
Bitcode Remove support for parsing the "type i32" syntax for defining a numbered 2011-06-19 00:03:46 +00:00
BugPoint
CodeGen Clean up the handling of the x87 fp stack to make it more robust. 2011-06-28 18:32:28 +00:00
DebugInfo
ExecutionEngine
Feature Remove support for parsing the "type i32" syntax for defining a numbered 2011-06-19 00:03:46 +00:00
FrontendAda
FrontendC Fix this test to actually check something and be able to be compiled. 2011-06-27 22:30:14 +00:00
FrontendC++
FrontendFortran
FrontendObjC
FrontendObjC++
Integer Remove support for parsing the "type i32" syntax for defining a numbered 2011-06-19 00:03:46 +00:00
lib
Linker
LLVMC
MC ARM Thumb2 asm syntax optional destination operand for binary operators. 2011-06-28 00:19:13 +00:00
Object
Other
Scripts
TableGen
Transforms FileCheckify and prepare for -disable-iv-rewrite. 2011-06-28 06:34:10 +00:00
Unit test/Unit: Fix enable shared test to follow check that we have actually loaded 2011-06-22 20:41:53 +00:00
Verifier
CMakeLists.txt cmake: Our MSVC build does not support config-time build mode. 2011-06-28 16:32:01 +00:00
lit.cfg lit support for REQUIRES: asserts. 2011-06-22 23:23:19 +00:00
lit.site.cfg.in cmake+lit: handle ENABLE_ASSERTIONS feature properly. 2011-06-23 17:52:36 +00:00
Makefile cmake+lit: handle ENABLE_ASSERTIONS feature properly. 2011-06-23 17:52:36 +00:00
Makefile.tests
site.exp.in
TestRunner.sh