summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/Utils/LoopSimplify.cpp
diff options
context:
space:
mode:
authorBruno Cardoso Lopes <bruno.cardoso@gmail.com>2011-08-18 23:59:21 +0000
committerBruno Cardoso Lopes <bruno.cardoso@gmail.com>2011-08-18 23:59:21 +0000
commit5647d84aa48a4b2531708a879be44dd01742a097 (patch)
tree94327c6d89965407c56d3c9f2a0f43b703c2f697 /llvm/lib/Transforms/Utils/LoopSimplify.cpp
parent904cb64d647c1d5437123d95c57c861aa61e91a6 (diff)
downloadbcm5719-llvm-5647d84aa48a4b2531708a879be44dd01742a097.tar.gz
bcm5719-llvm-5647d84aa48a4b2531708a879be44dd01742a097.zip
Re-encoded 128-bit AVX versions of SQRT, RSQRT, RCP have 3 operands
instead of 2. They were already defined this way in their regular version, but not for the intrinsics versions (*_Int), and that would work for assembly emission but not for object code, since a MachineOperand would be missing. This commit fix PR10697. Also removed the {VSQRT,VRSQRT,VRCP}r_Int forms and match the intrinsic via INSERT_SUBREG+EXTRACT_SUBREG patterns. The same couldn't be done for memory versions because sse_load_f32/sse_load_f64 operand need special handling and don't work like regular "addr" operands. There are right now 114 "*_Int" and 98 "Int_*" forms! I'm slowly removing them as I step through, but hope we can get rid of these someday, they are really annoying :) llvm-svn: 138012
Diffstat (limited to 'llvm/lib/Transforms/Utils/LoopSimplify.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud