Commit Graph

11 Commits

Author SHA1 Message Date
Philip Reames 23cf2e2f97 Remove gc.root's performCustomLowering
This is a refactoring to restructure the single user of performCustomLowering as a specific lowering pass and remove the custom lowering hook entirely.

Before this change, the LowerIntrinsics pass (note to self: rename!) was essentially acting as a pass manager, but without being structured in terms of passes. Instead, it proxied calls to a set of GCStrategies internally. This adds a lot of conceptual complexity (i.e. GCStrategies are stateful!) for very little benefit. Since there's been interest in keeping the ShadowStackGC working, I extracting it's custom lowering pass into a dedicated pass and just added that to the pass order. It will only run for functions which opt-in to that gc.

I wasn't able to find an easy way to preserve the runtime registration of custom lowering functionality. Given that no user of this exists that I'm aware of, I made the choice to just remove that. If someone really cares, we can look at restoring it via dynamic pass registration in the future.

Note that despite the large diff, none of the lowering code actual changes. I added the framing needed to make it a pass and rename the class, but that's it.

Differential Revision: http://reviews.llvm.org/D7218

llvm-svn: 227351
2015-01-28 19:28:03 +00:00
Eric Christopher d913448b38 Remove the TargetMachine forwards for TargetSubtargetInfo based
information and update all callers. No functional change.

llvm-svn: 214781
2014-08-04 21:25:23 +00:00
Alp Toker cf21875d41 Fix 'platform-specific' hyphenations
llvm-svn: 212056
2014-06-30 18:57:16 +00:00
Rafael Espindola 730df071c8 Remove projects/sample.
As an example that was not actually being used, it suffered from a slow bitrot.

The two main issues with it were that it had no cmake support and
included a copy of the autoconf directory. The reality is that
autoconf is not easily composable. The lack of composabilty is why we
have clang options in llvm's configure. Suggesting that users include
a copy of autoconf/ in their projects seems a bad idea.

We are also in the process of switching to cmake, so pushing autoconf
to new project is probably not what we want.

llvm-svn: 203728
2014-03-12 22:40:22 +00:00
Bill Wendling 0b55b4a208 Remove reference to obsolete arguments.
llvm-svn: 193009
2013-10-18 23:11:25 +00:00
Bill Wendling 547a7afd32 Update to reflect current GC APIs and usage. The example code is taken from the Erlang GC implementation.
llvm-svn: 193008
2013-10-18 23:09:06 +00:00
Benjamin Kramer 9f566a5a43 IR headers moved to llvm/IR some aeons ago, update documentation.
llvm-svn: 185854
2013-07-08 19:59:35 +00:00
Chris Lattner 045a73e62d remove the rest of the "written by" lines in the documentation. It is
against the developer policy to include this sort of thing as SVN blame
already captures this in a far more fine-grained way.

llvm-svn: 172109
2013-01-10 21:24:04 +00:00
Dmitri Gribenko 11ffe2c47e Documentation: convert WritingAnLLVMPass.html to reST.
Patch by Anthony Mykhailenko with small fixes by me.

llvm-svn: 169992
2012-12-12 17:02:44 +00:00
Dmitri Gribenko 134f76a2bc Documentation: cleanup: remove useless anchors and write :ref:s explicitly.
llvm-svn: 169932
2012-12-11 23:35:23 +00:00
Sean Silva 18dc538690 docs: Convert GarbageCollection.html to reST
Patch by Alexander Zinenko!

llvm-svn: 169702
2012-12-09 15:52:47 +00:00