[PATCH] Add NVPTXPeephole pass to reduce unnecessary address cast

Xuetian Weng xweng at google.com
Thu Jun 18 13:56:20 PDT 2015


Hi jholewinski, jingyue,

This patch first change the register that holds local address for stack
frame to %SPL. Then the new NVPTXPeephole pass will try to scan the
following pattern

   %vreg0<def> = LEA_ADDRi64 <fi#0>, 4
   %vreg1<def> = cvta_to_local %vreg0

and transform it into

   %vreg1<def> = LEA_ADDRi64 %VRFrameLocal, 4

http://reviews.llvm.org/D10549

Files:
  lib/Target/NVPTX/CMakeLists.txt
  lib/Target/NVPTX/NVPTX.h
  lib/Target/NVPTX/NVPTXFrameLowering.cpp
  lib/Target/NVPTX/NVPTXPeephole.cpp
  lib/Target/NVPTX/NVPTXTargetMachine.cpp
  test/CodeGen/NVPTX/call-with-alloca-buffer.ll
  test/CodeGen/NVPTX/local-stack-frame.ll

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D10549.27961.patch
Type: text/x-patch
Size: 9927 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150618/f87a1b9e/attachment.bin>


More information about the llvm-commits mailing list