summaryrefslogtreecommitdiffstats
path: root/llvm/test/Transforms/ConstProp/calls.ll
Commit message (Collapse)AuthorAgeFilesLines
* ConstProp: Split x86 SSE intrinsic tests out of calls.llJustin Bogner2017-05-131-206/+0
| | | | | | | This allows us to mark this as `REQUIRES: x86`, since it uses x86 target specific intrinsics. llvm-svn: 302980
* [InstCombiner] Simplify lib calls to `round{,f}`Bryant Wong2016-12-261-0/+8
| | | | | | Differential Revision: https://reviews.llvm.org/D28110 llvm-svn: 290542
* Don't remove side effecting instructions due to ConstantFoldInstructionDavid Majnemer2016-07-221-40/+40
| | | | | | | | | Just because we can constant fold the result of an instruction does not imply that we can delete the instruction. It may have side effects. This fixes PR28655. llvm-svn: 276389
* [X86][SSE] Reimplement SSE fp2si conversion intrinsics instead of using ↵Simon Pilgrim2016-07-191-3/+5
| | | | | | | | | | | | | | | | | | generic IR D20859 and D20860 attempted to replace the SSE (V)CVTTPS2DQ and VCVTTPD2DQ truncating conversions with generic IR instead. It turns out that the behaviour of these intrinsics is different enough from generic IR that this will cause problems, INF/NAN/out of range values are guaranteed to result in a 0x80000000 value - which plays havoc with constant folding which converts them to either zero or UNDEF. This is also an issue with the scalar implementations (which were already generic IR and what I was trying to match). This patch changes both scalar and packed versions back to using x86-specific builtins. It also deals with the other scalar conversion cases that are runtime rounding mode dependent and can have similar issues with constant folding. A companion clang patch is at D22105 Differential Revision: https://reviews.llvm.org/D22106 llvm-svn: 275981
* [X86][SSE] Improve constant folding tests for CVTSD/CVTSS/CVTTSD/CVTTSSSimon Pilgrim2016-07-081-17/+188
| | | | | | As discussed on D22106, improve the testing for constant folding sse scalar conversion intrinsics to ensure we are correctly handling special/out of range cases llvm-svn: 274846
* [test] (NFC) Simplify Transforms/ConstProp/calls.llVedant Kumar2015-08-281-680/+116
| | | | | | Differential Revision: http://reviews.llvm.org/D12421 llvm-svn: 246312
* Enable constant propagation for more math functionsErik Schnetter2015-08-271-41/+677
| | | | | | | | | | | | Constant propagation for single precision math functions (such as tanf) is already working, but was not enabled. This patch enables these for many single-precision functions, and adds respective test cases. Newly handled functions: acosf asinf atanf atan2f ceilf coshf expf exp2f fabsf floorf fmodf logf log10f powf sinhf tanf tanhf llvm-svn: 246194
* Revert 246186; still breaks on some systemsErik Schnetter2015-08-271-677/+41
| | | | llvm-svn: 246191
* Enable constant propagation for more math functionsErik Schnetter2015-08-271-41/+677
| | | | | | | | | | | | Constant propagation for single precision math functions (such as tanf) is already working, but was not enabled. This patch enables these for many single-precision functions, and adds respective test cases. Newly handled functions: acosf asinf atanf atan2f ceilf coshf expf exp2f fabsf floorf fmodf logf log10f powf sinhf tanf tanhf llvm-svn: 246186
* Revert r246158 since it breaks LLVM.Transforms/ConstProp.calls.llErik Schnetter2015-08-271-636/+41
| | | | llvm-svn: 246166
* Enable constant propagation for more math functionsErik Schnetter2015-08-271-41/+636
| | | | | | | | | | | | Constant propagation for single precision math functions (such as tanf) is already working, but was not enabled. This patch enables these for many single-precision functions, and adds respective test cases. Newly handled functions: acosf asinf atanf atan2f ceilf coshf expf exp2f fabsf floorf fmodf logf log10f powf sinhf tanf tanhf llvm-svn: 246158
* Update Transforms tests to use CHECK-LABEL for easier debugging. No ↵Stephen Lin2013-07-141-12/+12
| | | | | | | | | | | | | | | | | | | | | | functionality change. This update was done with the following bash script: find test/Transforms -name "*.ll" | \ while read NAME; do echo "$NAME" if ! grep -q "^; *RUN: *llc" $NAME; then TEMP=`mktemp -t temp` cp $NAME $TEMP sed -n "s/^define [^@]*@\([A-Za-z0-9_]*\)(.*$/\1/p" < $NAME | \ while read FUNC; do sed -i '' "s/;\(.*\)\([A-Za-z0-9_]*\):\( *\)@$FUNC\([( ]*\)\$/;\1\2-LABEL:\3@$FUNC(/g" $TEMP done mv $TEMP $NAME fi done llvm-svn: 186268
* Add support for constant folding the pow intrinsic.Chad Rosier2011-12-031-0/+9
| | | | | | rdar://10514247 llvm-svn: 145730
* Prevent library calls from being folded if -fno-builtin has been specified.Chad Rosier2011-12-011-0/+79
| | | | | | rdar://10500969 llvm-svn: 145639
* implement PR9315, constant folding exp2 in terms of pow (since hosts withoutChris Lattner2011-05-221-1/+6
| | | | | | C99 runtimes don't have exp2). llvm-svn: 131872
* Teach constant folding to perform conversions from constant floatingChandler Carruth2011-01-111-0/+33
| | | | | | | | point values to their integer representation through the SSE intrinsic calls. This is the last part of a README.txt entry for which I have real world examples. llvm-svn: 123206
* FileCheck-ize a test, and move a no-longer calling test case to anotherChandler Carruth2011-01-111-19/+12
| | | | | | file and make it actually test something... llvm-svn: 123205
* Use opt -S instead of piping bitcode output through llvm-dis.Dan Gohman2009-09-081-1/+1
| | | | llvm-svn: 81257
* Change these tests to feed the assembly files to opt directly, insteadDan Gohman2009-09-081-1/+1
| | | | | | of using llvm-as, now that opt supports this. llvm-svn: 81226
* Split the Add, Sub, and Mul instruction opcodes into separateDan Gohman2009-06-041-3/+3
| | | | | | | | | | | | | | | 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 llvm-svn: 72897
* Remove llvm-upgrade and update test cases.Tanya Lattner2008-03-011-22/+27
| | | | llvm-svn: 47793
* Oops. A little aggressive on the name changes there.Reid Spencer2007-04-141-8/+8
| | | | llvm-svn: 36029
* For PR1913:Reid Spencer2007-04-141-11/+11
| | | | | | Convert to new test system. This exposes test/Transforms/ConstProp/calls.ll llvm-svn: 36027
* Regression is gone, don't try to find it on clean target.Reid Spencer2007-01-171-0/+25
llvm-svn: 33296
OpenPOWER on IntegriCloud