summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/X86/all-ones-vector.ll
Commit message (Collapse)AuthorAgeFilesLines
* [X86] Pass v32i16/v64i8 in zmm registers on KNL target.Craig Topper2019-08-301-40/+16
| | | | | | | | | | | | | | | gcc and icc pass these types in zmm registers in zmm registers. This patch implements a quick hack to override the register type before calling convention handling to one that is legal. Longer term we might want to do something similar to 256-bit integer registers on AVX1 where we just split all the operations. Fixes PR42957 Differential Revision: https://reviews.llvm.org/D66708 llvm-svn: 370495
* [CodeGen] Unify MBB reference format in both MIR and debug outputFrancis Visoiu Mistrih2017-12-041-124/+124
| | | | | | | | | | | | | | | | As part of the unification of the debug format and the MIR format, print MBB references as '%bb.5'. The MIR printer prints the IR name of a MBB only for block definitions. * find . \( -name "*.mir" -o -name "*.cpp" -o -name "*.h" -o -name "*.ll" \) -type f -print0 | xargs -0 sed -i '' -E 's/BB#" << ([a-zA-Z0-9_]+)->getNumber\(\)/" << printMBBReference(*\1)/g' * find . \( -name "*.mir" -o -name "*.cpp" -o -name "*.h" -o -name "*.ll" \) -type f -print0 | xargs -0 sed -i '' -E 's/BB#" << ([a-zA-Z0-9_]+)\.getNumber\(\)/" << printMBBReference(\1)/g' * find . \( -name "*.txt" -o -name "*.s" -o -name "*.mir" -o -name "*.cpp" -o -name "*.h" -o -name "*.ll" \) -type f -print0 | xargs -0 sed -i '' -E 's/BB#([0-9]+)/%bb.\1/g' * grep -nr 'BB#' and fix Differential Revision: https://reviews.llvm.org/D40422 llvm-svn: 319665
* [X86] SET0 to use XMM registers where possible PR26018 PR32862Dinar Temirbulatov2017-07-271-28/+28
| | | | | | Differential Revision: https://reviews.llvm.org/D35839 llvm-svn: 309298
* [x86, SSE] AVX1 PR28129 (256-bit all-ones rematerialization)Simon Pilgrim2017-05-131-56/+56
| | | | | | | | | | | | | | | | | | | | Further perf tests on Jaguar indicate that: vxorps %ymm0, %ymm0, %ymm0 vcmpps $15, %ymm0, %ymm0, %ymm0 is consistently faster (by about 9%) than: vpcmpeqd %xmm0, %xmm0, %xmm0 vinsertf128 $1, %xmm0, %ymm0, %ymm0 Testing equivalent code on a SandyBridge (E5-2640) puts it slightly (~3%) faster as well. Committed on behalf of @dtemirbulatov Differential Revision: https://reviews.llvm.org/D32416 llvm-svn: 302989
* [X86][SSE] Renames all ones test to better match type.Simon Pilgrim2017-04-281-130/+204
| | | | | | Added 8f32/4f64 optsize tests discussed on D32416 llvm-svn: 301639
* [X86] Expand all-ones-vector test to cover 256-bit and 512-bit vectors.Craig Topper2016-09-271-4/+586
| | | | llvm-svn: 282472
* [X86][SSE] More thorough testing of all-ones vectors re-materializationSimon Pilgrim2016-02-151-5/+134
| | | | llvm-svn: 260889
* Eliminate more uses of llvm-as and llvm-dis.Dan Gohman2009-09-081-1/+1
| | | | llvm-svn: 81290
* nounwind-ify this test.Dan Gohman2008-10-011-4/+4
| | | | llvm-svn: 56918
* Fix this test on hosts that don't have sse2.Dan Gohman2008-03-121-1/+1
| | | | llvm-svn: 48296
* Add a test to ensure that all-ones vectors are materialized with pcmpeqd.Dan Gohman2008-03-111-0/+14
llvm-svn: 48247
OpenPOWER on IntegriCloud