summaryrefslogtreecommitdiffstats
path: root/lldb/packages/Python/lldbsuite/test/python_api/process/TestProcessAPI.py
diff options
context:
space:
mode:
authorCong Hou <congh@google.com>2015-12-04 00:36:58 +0000
committerCong Hou <congh@google.com>2015-12-04 00:36:58 +0000
commit94620278a448fac8d47f457a9a618970c6dc7de1 (patch)
tree8a43622689c33043cc4a3ae727308335e95b933e /lldb/packages/Python/lldbsuite/test/python_api/process/TestProcessAPI.py
parent402257b84ebfe00d820e7a045bac3136acc2a740 (diff)
downloadbcm5719-llvm-94620278a448fac8d47f457a9a618970c6dc7de1.tar.gz
bcm5719-llvm-94620278a448fac8d47f457a9a618970c6dc7de1.zip
Don't punish vectorized arithmetic instruction whose type will be split to multiple registers
Currently in LLVM's cost model, a vectorized arithmetic instruction will have high cost if its type is split into multiple registers. However, this punishment is too heavy and unnecessary. The overhead of the split should not be on arithmetic instructions but instructions that implement the split. Note that during vectorization we have calculated the register pressure, and we only choose proper interleaving factor (and also vectorization factor) so that we don't use more registers than the maximum number. Here is a very simple example: if a vadd has the cost 1, and if we double VF so that we need two registers to perform it, then its cost will become 4 with the current implementation, which will prevent us to use larger VF. Differential revision: http://reviews.llvm.org/D15159 llvm-svn: 254671
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/python_api/process/TestProcessAPI.py')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud