[PATCH] AArch64: Fold immediate into the immediate field of logical instructions

Akira Hatanaka ahatanak at gmail.com
Thu Oct 23 17:30:55 PDT 2014


Tim, I fixed the undefined behavior and renamed the function to start with lower-case letter.

The reason I only do sign-extension is that it seemed to be the cheapest way to get the most gain without hurting compile time or making the code overly complicated. I looked at the instructions llvm emits, and I saw many places where logical instructions were followed by truncating stores.

I can try changing it to do a more exhaustive search of the bit patterns to see how much further performance can be improved, if that's necessary.

http://reviews.llvm.org/D5591

Files:
  include/llvm/Target/TargetLowering.h
  lib/CodeGen/SelectionDAG/TargetLowering.cpp
  lib/Target/AArch64/AArch64ISelLowering.cpp
  lib/Target/AArch64/AArch64ISelLowering.h
  test/CodeGen/AArch64/optimize-imm.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D5591.15345.patch
Type: text/x-patch
Size: 6603 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20141024/3ea9a4f5/attachment.bin>


More information about the llvm-commits mailing list