diff options
| author | Hiroshi Inoue <inouehrs@jp.ibm.com> | 2017-08-23 08:55:18 +0000 |
|---|---|---|
| committer | Hiroshi Inoue <inouehrs@jp.ibm.com> | 2017-08-23 08:55:18 +0000 |
| commit | cc555bd0acc7b8d2a0a8afb78a126639f93a5524 (patch) | |
| tree | 4cd96419b1e5d4a88e6f203ed63370ced756dd56 /llvm/tools/llvm-diff/DiffConsumer.h | |
| parent | de2d1066ae608a7a3acd2f7d23a9daaecc983641 (diff) | |
| download | bcm5719-llvm-cc555bd0acc7b8d2a0a8afb78a126639f93a5524.tar.gz bcm5719-llvm-cc555bd0acc7b8d2a0a8afb78a126639f93a5524.zip | |
[PowerPC] better instruction selection for OR (XOR) with a 32-bit immediate
- recommitting after fixing a test failure on MacOS
On PPC64, OR (XOR) with a 32-bit immediate can be done with only two instructions, i.e. ori + oris.
But the current LLVM generates three or four instructions for this purpose (and also it clobbers one GPR).
This patch makes PPC backend generate ori + oris (xori + xoris) for OR (XOR) with a 32-bit immediate.
e.g. (x | 0xFFFFFFFF) should be
ori 3, 3, 65535
oris 3, 3, 65535
but LLVM generates without this patch
li 4, 0
oris 4, 4, 65535
ori 4, 4, 65535
or 3, 3, 4
Differential Revision: https://reviews.llvm.org/D34757
llvm-svn: 311538
Diffstat (limited to 'llvm/tools/llvm-diff/DiffConsumer.h')
0 files changed, 0 insertions, 0 deletions

