llvm-6502/lib/Transforms/Utils
Gordon Henriksen 80a75bfae9 Adding a collector name attribute to Function in the IR. These
methods are new to Function:

  bool hasCollector() const;
  const std::string &getCollector() const;
  void setCollector(const std::string &);
  void clearCollector();

The assembly representation is as such:

  define void @f() gc "shadow-stack" { ...

The implementation uses an on-the-side table to map Functions to 
collector names, such that there is no overhead. A StringPool is 
further used to unique collector names, which are extremely
likely to be unique per process.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44769 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-10 03:18:06 +00:00
..
BasicBlockUtils.cpp Make LoopInfoBase more generic, in preparation for having MachineLoopInfo. This involves a small interface change. 2007-11-27 03:43:35 +00:00
BasicInliner.cpp Use SmallPtrSet. 2007-07-27 18:34:27 +00:00
BreakCriticalEdges.cpp Make LoopInfoBase more generic, in preparation for having MachineLoopInfo. This involves a small interface change. 2007-11-27 03:43:35 +00:00
CloneFunction.cpp Fix PR1146: parameter attributes are longer part of 2007-11-27 13:23:08 +00:00
CloneLoop.cpp Make LoopInfoBase more generic, in preparation for having MachineLoopInfo. This involves a small interface change. 2007-11-27 03:43:35 +00:00
CloneModule.cpp Adding a collector name attribute to Function in the IR. These 2007-12-10 03:18:06 +00:00
CloneTrace.cpp Fix indent 2007-11-09 12:34:20 +00:00
CodeExtractor.cpp Move Split<...>() into DomTreeBase. This should make the #include's of DominatorInternals.h 2007-10-18 05:13:52 +00:00
DemoteRegToStack.cpp Reg2Mem cleanup and optimizations: 2007-10-21 23:05:16 +00:00
InlineCost.cpp Fix comment. 2007-09-17 20:07:40 +00:00
InlineFunction.cpp Rather than having special rules like "intrinsics cannot 2007-12-03 20:06:50 +00:00
LCSSA.cpp Use SmallVector instead of std::vector. 2007-08-21 00:31:24 +00:00
Local.cpp Move the GET_SIDE_EFFECT_INFO logic from isInstructionTriviallyDead 2007-07-26 16:06:08 +00:00
LoopSimplify.cpp Make LoopInfoBase more generic, in preparation for having MachineLoopInfo. This involves a small interface change. 2007-11-27 03:43:35 +00:00
LowerAllocations.cpp Executive summary: getTypeSize -> getTypeStoreSize / getABITypeSize. 2007-11-01 20:53:16 +00:00
LowerInvoke.cpp Fix PR1146: parameter attributes are longer part of 2007-11-27 13:23:08 +00:00
LowerSelect.cpp More explicit keywords. 2007-08-01 15:32:29 +00:00
LowerSwitch.cpp Finishing initial docs for all transformations in Passes.html. 2007-11-04 16:15:04 +00:00
Makefile
Mem2Reg.cpp
PromoteMemoryToRegister.cpp Finishing initial docs for all transformations in Passes.html. 2007-11-04 16:15:04 +00:00
SimplifyCFG.cpp Fix PR1146: parameter attributes are longer part of 2007-11-27 13:23:08 +00:00
UnifyFunctionExitNodes.cpp
ValueMapper.cpp Forget to commit users part of value mapper interface 2007-11-09 12:27:04 +00:00