diff options
author | Dan Gohman <gohman@apple.com> | 2009-06-04 22:49:04 +0000 |
---|---|---|
committer | Dan Gohman <gohman@apple.com> | 2009-06-04 22:49:04 +0000 |
commit | 7ce405e7aa026ef683da9eb8cc39cce87fcfa1d6 (patch) | |
tree | 768333097a76cc105813c7c636daf6259e6a0fc7 /test/Transforms/GlobalOpt | |
parent | 66bd777e9009fd6a606532f9ed96745e86f3937c (diff) | |
download | external_llvm-7ce405e7aa026ef683da9eb8cc39cce87fcfa1d6.zip external_llvm-7ce405e7aa026ef683da9eb8cc39cce87fcfa1d6.tar.gz external_llvm-7ce405e7aa026ef683da9eb8cc39cce87fcfa1d6.tar.bz2 |
Split the Add, Sub, and Mul instruction opcodes into separate
integer and floating-point opcodes, introducing
FAdd, FSub, and FMul.
For now, the AsmParser, BitcodeReader, and IRBuilder all preserve
backwards compatability, and the Core LLVM APIs preserve backwards
compatibility for IR producers. Most front-ends won't need to change
immediately.
This implements the first step of the plan outlined here:
http://nondot.org/sabre/LLVMNotes/IntegerOverflow.txt
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72897 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Transforms/GlobalOpt')
-rw-r--r-- | test/Transforms/GlobalOpt/2008-01-29-VolatileGlobal.ll | 2 | ||||
-rw-r--r-- | test/Transforms/GlobalOpt/2008-04-26-SROA-Global-Align.ll | 4 | ||||
-rw-r--r-- | test/Transforms/GlobalOpt/constantexpr-dangle.ll | 2 |
3 files changed, 4 insertions, 4 deletions
diff --git a/test/Transforms/GlobalOpt/2008-01-29-VolatileGlobal.ll b/test/Transforms/GlobalOpt/2008-01-29-VolatileGlobal.ll index 0a8dd49..779e7fb 100644 --- a/test/Transforms/GlobalOpt/2008-01-29-VolatileGlobal.ll +++ b/test/Transforms/GlobalOpt/2008-01-29-VolatileGlobal.ll @@ -4,6 +4,6 @@ define double @foo() nounwind { entry: %tmp1 = volatile load double* @t0.1441, align 8 ; <double> [#uses=2] - %tmp4 = mul double %tmp1, %tmp1 ; <double> [#uses=1] + %tmp4 = fmul double %tmp1, %tmp1 ; <double> [#uses=1] ret double %tmp4 } diff --git a/test/Transforms/GlobalOpt/2008-04-26-SROA-Global-Align.ll b/test/Transforms/GlobalOpt/2008-04-26-SROA-Global-Align.ll index 3464be9..8a0b5b3 100644 --- a/test/Transforms/GlobalOpt/2008-04-26-SROA-Global-Align.ll +++ b/test/Transforms/GlobalOpt/2008-04-26-SROA-Global-Align.ll @@ -26,7 +26,7 @@ define double @test2() { %V1 = load double* getelementptr (%T* @G, i32 0, i32 0), align 16 %V2 = load double* getelementptr (%T* @G, i32 0, i32 1), align 8 %V3 = load double* getelementptr (%T* @G, i32 0, i32 2), align 16 - %R = add double %V1, %V2 - %R2 = add double %R, %V3 + %R = fadd double %V1, %V2 + %R2 = fadd double %R, %V3 ret double %R2 } diff --git a/test/Transforms/GlobalOpt/constantexpr-dangle.ll b/test/Transforms/GlobalOpt/constantexpr-dangle.ll index 6e33ae0..6fa139b 100644 --- a/test/Transforms/GlobalOpt/constantexpr-dangle.ll +++ b/test/Transforms/GlobalOpt/constantexpr-dangle.ll @@ -7,7 +7,7 @@ define internal float @foo() { define float @bar() { %tmp1 = call float (...)* bitcast (float ()* @foo to float (...)*)( ) - %tmp2 = mul float %tmp1, 1.000000e+01 ; <float> [#uses=1] + %tmp2 = fmul float %tmp1, 1.000000e+01 ; <float> [#uses=1] ret float %tmp2 } |