[PATCH] Add a callback to FunctionPass to enable skipping execution on a per-function basis

Akira Hatanaka ahatanak at gmail.com
Mon Mar 30 21:47:20 PDT 2015


Hi echristo,

The callback function object enables the function pass to skip execution based on the per-function subtarget object. With this change, we can remove the code in the subclasses of TargetPassConfig that calls subtarget methods to decide if a pass should be added to the pass pipeline. I've only made changes to ARM's pass configuration, but other targets can be fixed the same way.

http://reviews.llvm.org/D8717

Files:
  include/llvm/CodeGen/Passes.h
  include/llvm/Pass.h
  lib/CodeGen/IfConversion.cpp
  lib/CodeGen/MachineInstrBundle.cpp
  lib/CodeGen/Passes.cpp
  lib/IR/Pass.cpp
  lib/Target/ARM/ARMTargetMachine.cpp
  lib/Target/ARM/Thumb2SizeReduction.cpp
  lib/Target/Hexagon/HexagonTargetMachine.cpp
  lib/Target/R600/AMDGPUTargetMachine.cpp
  lib/Transforms/Scalar/SimplifyCFGPass.cpp

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D8717.22926.patch
Type: text/x-patch
Size: 15818 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150331/f73c8f32/attachment.bin>


More information about the llvm-commits mailing list