summaryrefslogtreecommitdiffstats
path: root/llvm/test/Bitcode
diff options
context:
space:
mode:
authorAkira Hatanaka <ahatanaka@apple.com>2014-08-01 22:19:41 +0000
committerAkira Hatanaka <ahatanaka@apple.com>2014-08-01 22:19:41 +0000
commit3516669a50bb64ee7d27c0bbc00b2439477071bf (patch)
treeccbf04a744404c99d92d4c89df279bd056f1d989 /llvm/test/Bitcode
parent570706dd7cb27bc3fcd05221a5168a6d85199410 (diff)
downloadbcm5719-llvm-3516669a50bb64ee7d27c0bbc00b2439477071bf.tar.gz
bcm5719-llvm-3516669a50bb64ee7d27c0bbc00b2439477071bf.zip
[X86] Simplify X87 stackifier pass.
Stop using ST registers for function returns and inline-asm instructions and use FP registers instead. This allows removing a large amount of code in the stackifier pass that was needed to track register liveness and handle copies between ST and FP registers and function calls returning floating point values. It also fixes a bug which manifests when an ST register defined by an inline-asm instruction was live across another inline-asm instruction, as shown in the following sequence of machine instructions: 1. INLINEASM <es:frndint> $0:[regdef], %ST0<imp-def,tied5> 2. INLINEASM <es:fldcw $0> 3. %FP0<def> = COPY %ST0 <rdar://problem/16952634> llvm-svn: 214580
Diffstat (limited to 'llvm/test/Bitcode')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud