History log of /external/llvm/tools/llc/llc.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
de2d8694e25a814696358e95141f4b1aa4d8847e 20-Sep-2016 Pirama Arumuga Nainar <pirama@google.com> Update aosp/master LLVM for rebase to r275480

Bug: http://b/31320715

This merges commit 7dcf7f03e005379ef2f06db96aa93f06186b66d5 from
aosp/dev.

Test: Build AOSP and run RenderScript tests (host tests for slang and
libbcc, RsTest, CTS)

Change-Id: Iaf3738f74312d875e69f61d604ac058f381a2a1a
/external/llvm/tools/llc/llc.cpp
f3ef5332fa3f4d5ec72c178a2b19dac363a19383 04-Mar-2016 Pirama Arumuga Nainar <pirama@google.com> Update aosp/master LLVM for rebase to r256229

http://b/26987366

Change-Id: I1f29c4676a8abe633ab5707dded58d846c973d50
/external/llvm/tools/llc/llc.cpp
6948897e478cbd66626159776a8017b3c18579b9 01-Jul-2015 Pirama Arumuga Nainar <pirama@google.com> Update aosp/master LLVM for rebase to r239765

Bug: 20140355: This rebase pulls the upstream fix for the spurious
warnings mentioned in the bug.

Change-Id: I7fd24253c50f4d48d900875dcf43ce3f1721a3da
/external/llvm/tools/llc/llc.cpp
0c7f116bb6950ef819323d855415b2f2b0aad987 06-May-2015 Pirama Arumuga Nainar <pirama@google.com> Update aosp/master LLVM for rebase to r235153

Change-Id: I9bf53792f9fc30570e81a8d80d296c681d005ea7
/external/llvm/tools/llc/llc.cpp
4c5e43da7792f75567b693105cc53e3f1992ad98 08-Apr-2015 Pirama Arumuga Nainar <pirama@google.com> Update aosp/master llvm for rebase to r233350

Change-Id: I07d935f8793ee8ec6b7da003f6483046594bca49
/external/llvm/tools/llc/llc.cpp
ebe69fe11e48d322045d5949c83283927a0d790b 23-Mar-2015 Stephen Hines <srhines@google.com> Update aosp/master LLVM for rebase to r230699.

Change-Id: I2b5be30509658cb8266be782de0ab24f9099f9b9
/external/llvm/tools/llc/llc.cpp
37ed9c199ca639565f6ce88105f9e39e898d82d0 01-Dec-2014 Stephen Hines <srhines@google.com> Update aosp/master LLVM for rebase to r222494.

Change-Id: Ic787f5e0124df789bd26f3f24680f45e678eef2d
/external/llvm/tools/llc/llc.cpp
dce4a407a24b04eebc6a376f8e62b41aaa7b071f 29-May-2014 Stephen Hines <srhines@google.com> Update LLVM for 3.5 rebase (r209712).

Change-Id: I149556c940fb7dc92d075273c87ff584f400941f
/external/llvm/tools/llc/llc.cpp
36b56886974eae4f9c5ebc96befd3e7bfe5de338 24-Apr-2014 Stephen Hines <srhines@google.com> Update to LLVM 3.5a.

Change-Id: Ifadecab779f128e62e430c2b4f6ddd84953ed617
/external/llvm/tools/llc/llc.cpp
61fc8d670f1e991804c2ab753e567981e60962cb 01-Aug-2013 Bill Wendling <isanbard@gmail.com> Use function attributes to indicate that we don't want to realign the stack.

Function attributes are the future! So just query whether we want to realign the
stack directly from the function instead of through a random target options
structure.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187618 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
f245ae5a4a78d5a02b3b9e2dae819077a56d81e7 25-Jul-2013 Bill Wendling <isanbard@gmail.com> Replace the "NoFramePointerElimNonLeaf" target option with a function attribute.

There's no need to specify a flag to omit frame pointer elimination on non-leaf
nodes...(Honestly, I can't parse that option out.) Use the function attribute
stuff instead.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187093 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
0dcba2fadb990ba2298ba43d76372c754b240cee 22-Jul-2013 Bill Wendling <isanbard@gmail.com> Recommit r186217 with testcase fix:

Use the function attributes to pass along the stack protector buffer size.

Now that we have robust function attributes, don't use a command line option to
specify the stack protecto buffer size.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186863 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
c1b49b56d4132efa2e06deb8f23508d0de4c8800 16-Jul-2013 Rafael Espindola <rafael.espindola@gmail.com> Add a wrapper for open.

This centralizes the handling of O_BINARY and opens the way for hiding more
differences (like how open behaves with directories).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186447 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
12c74dc2c2ee306f60fb39a9b2a43000e23addcc 13-Jul-2013 Chandler Carruth <chandlerc@gmail.com> Revert commit r186217 -- this is breaking bots:

http://lab.llvm.org:8013/builders/clang-x86_64-darwin11-nobootstrap-RAincremental/builds/4328

Original commit log:
Use the function attributes to pass along the stack protector buffer
size.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186234 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
8a50013cc23810aa3e1ac8da66764fbb2d96147e 13-Jul-2013 Bill Wendling <isanbard@gmail.com> Use the function attributes to pass along the stack protector buffer size.

Now that we have robust function attributes, don't use a command line option to
specify the stack protecto buffer size.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186217 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
1b11a1925e64b6467ce4abb07157d524bfbc2d51 19-Jun-2013 Wan Xiaofei <xiaofei.wan@intel.com> Test commit access.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184278 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
200241e4de11981523b3d14f3acab6129efed701 12-Apr-2013 Andy Gibbs <andyg1001@hotmail.co.uk> Replace uses of the deprecated std::auto_ptr with OwningPtr.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179373 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
7fc162f893d67ffd96fdb19e2eb9a03b4621f0c0 26-Mar-2013 Chandler Carruth <chandlerc@gmail.com> Split out the IRReader header and the utility functions it provides into
its own library. These functions are bridging between the bitcode reader
and the ll parser which are in different libraries. Previously we didn't
have any good library to do this, and instead played fast and loose with
a "header only" set of interfaces in the Support library. This really
doesn't work well as evidenced by the recent attempt to add timing logic
to the these routines.

As part of this, make them normal functions rather than weird inline
functions, and sink the implementation into the library. Also clean up
the header to be nice and minimal.

This requires updating lots of build system dependencies to specify that
the IRReader library is needed, and several source files to not
implicitly rely upon the header file to transitively include all manner
of other headers.

If you are using IRReader.h, this commit will break you (the header
moved) and you'll need to also update your library usage to include
'irreader'. I will commit the corresponding change to Clang momentarily.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177971 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
aeef83c6afa1e18d1cf9d359cc678ca0ad556175 07-Jan-2013 Chandler Carruth <chandlerc@gmail.com> Switch TargetTransformInfo from an immutable analysis pass that requires
a TargetMachine to construct (and thus isn't always available), to an
analysis group that supports layered implementations much like
AliasAnalysis does. This is a pretty massive change, with a few parts
that I was unable to easily separate (sorry), so I'll walk through it.

The first step of this conversion was to make TargetTransformInfo an
analysis group, and to sink the nonce implementations in
ScalarTargetTransformInfo and VectorTargetTranformInfo into
a NoTargetTransformInfo pass. This allows other passes to add a hard
requirement on TTI, and assume they will always get at least on
implementation.

The TargetTransformInfo analysis group leverages the delegation chaining
trick that AliasAnalysis uses, where the base class for the analysis
group delegates to the previous analysis *pass*, allowing all but tho
NoFoo analysis passes to only implement the parts of the interfaces they
support. It also introduces a new trick where each pass in the group
retains a pointer to the top-most pass that has been initialized. This
allows passes to implement one API in terms of another API and benefit
when some other pass above them in the stack has more precise results
for the second API.

The second step of this conversion is to create a pass that implements
the TargetTransformInfo analysis using the target-independent
abstractions in the code generator. This replaces the
ScalarTargetTransformImpl and VectorTargetTransformImpl classes in
lib/Target with a single pass in lib/CodeGen called
BasicTargetTransformInfo. This class actually provides most of the TTI
functionality, basing it upon the TargetLowering abstraction and other
information in the target independent code generator.

The third step of the conversion adds support to all TargetMachines to
register custom analysis passes. This allows building those passes with
access to TargetLowering or other target-specific classes, and it also
allows each target to customize the set of analysis passes desired in
the pass manager. The baseline LLVMTargetMachine implements this
interface to add the BasicTTI pass to the pass manager, and all of the
tools that want to support target-aware TTI passes call this routine on
whatever target machine they end up with to add the appropriate passes.

The fourth step of the conversion created target-specific TTI analysis
passes for the X86 and ARM backends. These passes contain the custom
logic that was previously in their extensions of the
ScalarTargetTransformInfo and VectorTargetTransformInfo interfaces.
I separated them into their own file, as now all of the interface bits
are private and they just expose a function to create the pass itself.
Then I extended these target machines to set up a custom set of analysis
passes, first adding BasicTTI as a fallback, and then adding their
customized TTI implementations.

The fourth step required logic that was shared between the target
independent layer and the specific targets to move to a different
interface, as they no longer derive from each other. As a consequence,
a helper functions were added to TargetLowering representing the common
logic needed both in the target implementation and the codegen
implementation of the TTI pass. While technically this is the only
change that could have been committed separately, it would have been
a nightmare to extract.

The final step of the conversion was just to delete all the old
boilerplate. This got rid of the ScalarTargetTransformInfo and
VectorTargetTransformInfo classes, all of the support in all of the
targets for producing instances of them, and all of the support in the
tools for manually constructing a pass based around them.

Now that TTI is a relatively normal analysis group, two things become
straightforward. First, we can sink it into lib/Analysis which is a more
natural layer for it to live. Second, clients of this interface can
depend on it *always* being available which will simplify their code and
behavior. These (and other) simplifications will follow in subsequent
commits, this one is clearly big enough.

Finally, I'm very aware that much of the comments and documentation
needs to be updated. As soon as I had this working, and plausibly well
commented, I wanted to get it committed and in front of the build bots.
I'll be doing a few passes over documentation later if it sticks.

Commits to update DragonEgg and Clang will be made presently.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171681 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
7bdf6b00e04c177f22133b5d4be10cb246cb1e76 05-Jan-2013 Chandler Carruth <chandlerc@gmail.com> Convert the TargetTransformInfo from an immutable pass with dynamic
interfaces which could be extracted from it, and must be provided on
construction, to a chained analysis group.

The end goal here is that TTI works much like AA -- there is a baseline
"no-op" and target independent pass which is in the group, and each
target can expose a target-specific pass in the group. These passes will
naturally chain allowing each target-specific pass to delegate to the
generic pass as needed.

In particular, this will allow a much simpler interface for passes that
would like to use TTI -- they can have a hard dependency on TTI and it
will just be satisfied by the stub implementation when that is all that
is available.

This patch is a WIP however. In particular, the "stub" pass is actually
the one and only pass, and everything there is implemented by delegating
to the target-provided interfaces. As a consequence the tools still have
to explicitly construct the pass. Switching targets to provide custom
passes and sinking the stub behavior into the NoTTI pass is the next
step.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171621 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
0b8c9a80f20772c3793201ab5b251d3520b9cea3 02-Jan-2013 Chandler Carruth <chandlerc@gmail.com> Move all of the header files which are involved in modelling the LLVM IR
into their new header subdirectory: include/llvm/IR. This matches the
directory structure of lib, and begins to correct a long standing point
of file layout clutter in LLVM.

There are still more header files to move here, but I wanted to handle
them in separate commits to make tracking what files make sense at each
layer easier.

The only really questionable files here are the target intrinsic
tablegen files. But that's a battle I'd rather not fight today.

I've updated both CMake and Makefile build systems (I think, and my
tests think, but I may have missed something).

I've also re-sorted the includes throughout the project. I'll be
committing updates to Clang, DragonEgg, and Polly momentarily.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171366 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
7f00f87767036e74445aad0164eea13cf2642610 02-Jan-2013 Chandler Carruth <chandlerc@gmail.com> Sort a few more #include lines in tools/... unittests/... and utils/...

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171363 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
f2a68db4264690b0ccb197e54af3414054b42e51 11-Dec-2012 NAKAMURA Takumi <geek4civic@gmail.com> llvm/tools: Add #include "llvm/TargetTransformInfo.h"

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169817 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
f010c464a11444733ec67e31aace8bcebeaf2588 04-Dec-2012 Chandler Carruth <chandlerc@gmail.com> Sort the #include lines for tools/...

Again, tools are trickier to pick the main module header for than
library source files. I've started to follow the pattern of using
LLVMContext.h when it is included as a stub for program source files.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169252 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
882092808b7179e49ee5c52c07ce9c97e3128a81 30-Nov-2012 Jakob Stoklund Olesen <stoklund@2pi.dk> Add a -time-compilations=<N> option to llc.

This causes llc to repeat the module compilation N times, making it
possible to get more accurate information from -time-passes when
compiling small modules.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169040 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
6eda0813459547fe8094dd5d31f7dd2214b5ca7a 29-Nov-2012 Pedro Artigas <partigas@apple.com> One more step towards making doInitialization and doFinalization useful for
start up and clean up module passes, now that ASAN and TSAN are fixed the
tests pass



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168905 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
9780d352b9108d49097970f6686fd61aba58d7fc 27-Nov-2012 Owen Anderson <resistor@mac.com> Revert r168635 "Step towards implementation of pass manager with doInitialization and doFinalization per module detangled from runOn?? calls, still has temporary code not to break ASAN to be removed when that pass conforms to the proposed model".
It appears to have broken at least one buildbot.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168654 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
0d30d30d58253de6b8836a11effcfc38d7566841 27-Nov-2012 Owen Anderson <resistor@mac.com> Step towards implementation of pass manager with doInitialization and doFinalization per module detangled from runOn?? calls, still has temporary code not to break ASAN to be removed when that pass conforms to the proposed model

Patch by Pedro Artigas, with feedback from by Chandler Carruth.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168635 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
40b6fdb81e12b40dd41c9f9f07befb60ec7291c3 15-Nov-2012 Owen Anderson <resistor@mac.com> Add doInitialization and doFinalization methods to ModulePass's, to allow them to be re-initialized and reused on multiple Module's.

Patch by Pedro Artigas.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168008 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
cbd9a19b5d6ff93efa82c467508ede78b8af3bac 19-Oct-2012 Nadav Rotem <nrotem@apple.com> Reapply the TargerTransformInfo changes, minus the changes to LSR and Lowerinvoke.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166248 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
3b9a911efcf280950f878a050728450423875639 18-Oct-2012 Bob Wilson <bob.wilson@apple.com> Temporarily revert the TargetTransform changes.

The TargetTransform changes are breaking LTO bootstraps of clang. I am
working with Nadav to figure out the problem, but I am reverting it for now
to get our buildbots working.

This reverts svn commits: 165665 165669 165670 165786 165787 165997
and I have also reverted clang svn 165741

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166168 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
e3d0e86919730784faaddcb5d9b0257c39b0804b 11-Oct-2012 Nadav Rotem <nrotem@apple.com> Add a new interface to allow IR-level passes to access codegen-specific information.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165665 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
791cfc211a9801002bfda6b3eb4de7e041f04f53 08-Oct-2012 Micah Villmow <villmow@gmail.com> Move TargetData to DataLayout.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165403 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
35907e98626b33f6406dc498201fc59ced282c8a 21-Aug-2012 Chad Rosier <mcrosier@apple.com> Add support for the --param ssp-buffer-size= driver option.
PR9673

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162284 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
5f91a99427c0be5899835fc6407c6e55bfcd606d 08-Aug-2012 Bob Wilson <bob.wilson@apple.com> Add test triples to fix win32 failures. Revert workaround from r161292.

I don't have a win32 system to test, so hopefully I got them all fixed here.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161519 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
17d2853a4b508cd05ead09822dbd21d01742afd3 04-Aug-2012 NAKAMURA Takumi <geek4civic@gmail.com> llc: Try to suppress failures since r161262 .

FIXME: Fix several tests on i686-win32 due to lacking of many libraries.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161292 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
772af92cb16a5e11bd580f576643a6268e8a5bce 03-Aug-2012 Bob Wilson <bob.wilson@apple.com> Fix memcmp code-gen to honor -fno-builtin.

I noticed that SelectionDAGBuilder::visitCall was missing a check for memcmp
in TargetLibraryInfo, so that it would use custom code for memcmp calls even
with -fno-builtin. I also had to add a new -disable-simplify-libcalls option
to llc so that I could write a test for this.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161262 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
7a43e30a9baa1078301d1698e99b99cc95c6e566 19-Jul-2012 Chad Rosier <mcrosier@apple.com> Tweak prose.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160478 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
769951f6cc6323821ce1e9f46a37817a541c884f 03-Jul-2012 Evan Cheng <evan.cheng@apple.com> Target option DisableJumpTables is a gross hack. Move it to TargetLowering instead.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159611 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
30a507a1f5d6a5646dd3481eba6958424415c886 02-Jul-2012 Bob Wilson <bob.wilson@apple.com> Extend TargetPassConfig to allow running only a subset of the normal passes.

This is still a work in progress but I believe it is currently good enough
to fix PR13122 "Need unit test driver for codegen IR passes". For example,
you can run llc with -stop-after=loop-reduce to have it dump out the IR after
running LSR. Serializing machine-level IR is not yet supported but we have
some patches in progress for that.

The plan is to serialize the IR to a YAML file, containing separate sections
for the LLVM IR, machine-level IR, and whatever other info is needed. Chad
suggested that we stash the stop-after pass in the YAML file and use that
instead of the start-after option to figure out where to restart the
compilation. I think that's a great idea, but since it's not implemented yet
I put the -start-after option into this patch for testing purposes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159570 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
f6ce8ea20c558db1cb1b448ca15c878dd6dbf71b 27-Jun-2012 Duncan Sands <baldrick@free.fr> When users ask for -mcpu=help or -mattr=help, just output the help without
requiring a module. Original patch by Sunay Ismail, simplified by Arnaud
de Grandmaison, then complicated by me (if a triple was specified on the
command line, output help for that triple, not for the default).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159268 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
275c85f1a7d04cf1dc6c166211dc2d72fea43c0d 26-Jun-2012 Rafael Espindola <rafael.espindola@gmail.com> Fix llc's -print-before=pass and -print-after=pass.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159227 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
59d454959f36681dc1d68109012edc4cb019f351 23-Jun-2012 Lang Hames <lhames@gmail.com> Rename fp-op fusion option (yet again) for compatibility with GCC option.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159042 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
e0231413225cf47aaf3238bf21afd0d59025028d 22-Jun-2012 Lang Hames <lhames@gmail.com> Rename -allow-excess-fp-precision flag to -fuse-fp-ops, and switch from a
boolean flag to an enum: { Fast, Standard, Strict } (default = Standard).

This option controls the creation by optimizations of fused FP ops that store
intermediate results in higher precision than IEEE allows (E.g. FMAs). The
behavior of this option is intended to match the behaviour specified by a
soon-to-be-introduced frontend flag: '-ffuse-fp-ops'.

Fast mode - allows formation of fused FP ops whenever they're profitable.

Standard mode - allow fusion only for 'blessed' FP ops. At present the only
blessed op is the fmuladd intrinsic. In the future more blessed ops may be
added.

Strict mode - allow fusion only if/when it can be proven that the excess
precision won't effect the result.

Note: This option only controls formation of fused ops by the optimizers. Fused
operations that are explicitly requested (e.g. FMA via the llvm.fma.* intrinsic)
will always be honored, regardless of the value of this option.

Internally TargetOptions::AllowExcessFPPrecision has been replaced by
TargetOptions::AllowFPOpFusion.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158956 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
d693cafcfb9e67ba7040cb810e4409a166421482 20-Jun-2012 Lang Hames <lhames@gmail.com> Add DAG-combines for aggressive FMA formation.

This patch adds DAG combines to form FMAs from pairs of FADD + FMUL or
FSUB + FMUL. The combines are performed when:
(a) Either
AllowExcessFPPrecision option (-enable-excess-fp-precision for llc)
OR
UnsafeFPMath option (-enable-unsafe-fp-math)
are set, and
(b) TargetLoweringInfo::isFMAFasterThanMulAndAdd(VT) is true for the type of
the FADD/FSUB, and
(c) The FMUL only has one user (the FADD/FSUB).

If your target has fast FMA instructions you can make use of these combines by
overriding TargetLoweringInfo::isFMAFasterThanMulAndAdd(VT) to return true for
types supported by your FMA instruction, and adding patterns to match ISD::FMA
to your FMA instructions.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158757 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
d6b43a317e71246380db55a50b799b062b53cdce 19-Jun-2012 Rafael Espindola <rafael.espindola@gmail.com> Move the support for using .init_array from ARM to the generic
TargetLoweringObjectFileELF. Use this to support it on X86. Unlike ARM,
on X86 it is not easy to find out if .init_array should be used or not, so
the decision is made via TargetOptions and defaults to off.

Add a command line option to llc that enables it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158692 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
773ef61299454dc15860bfe6af8f3a2dc57f0f06 11-Jun-2012 Benjamin Kramer <benny.kra@googlemail.com> Object file output from llc isn't experimental anymore.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158305 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
6e1b8128505711276a87e96f6bffb818b435cbd5 30-May-2012 Bob Wilson <bob.wilson@apple.com> Add an insertPass API to TargetPassConfig. <rdar://problem/11498613>

Besides adding the new insertPass function, this patch uses it to
enhance the existing -print-machineinstrs so that the MachineInstrs
after a specific pass can be printed.

Patch by Bin Zeng!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157655 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
9ed9e5d0f994c7721185eba963ea9b907dabcde6 09-May-2012 Kevin Enderby <enderby@apple.com> Fix it so llvm-objdump -arch does accept x86 and x86-64 as valid arch names.
PR12731. Patch by Meador Inge!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156444 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
9a1484165cd7cc3b95f5f65f845257c44f55a5b3 18-Apr-2012 Nick Lewycky <nicholas@mxc.ca> Move the JIT flags from llc to lli. These flags showed up as part of moving
backend flags in TargetOptions.h into their own class in r145714.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154993 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
253933ee9ef2c413ecd782efeacc5d7b9bcda09a 08-Apr-2012 Chandler Carruth <chandlerc@gmail.com> Teach LLVM about a PIE option which, when enabled on top of PIC, makes
optimizations which are valid for position independent code being linked
into a single executable, but not for such code being linked into
a shared library.

I discussed the design of this with Eric Christopher, and the decision
was to support an optional bit rather than a completely separate
relocation model. Fundamentally, this is still PIC relocation, its just
that certain optimizations are only valid under a PIC relocation model
when the resulting code won't be in a shared library. The simplest path
to here is to expose a single bit option in the TargetOptions. If folks
have different/better designs, I'm all ears. =]

I've included the first optimization based upon this: changing TLS
models to the *Exec models when PIE is enabled. This is the LLVM
component of PR12380 and is all of the hard work.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154294 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
8dd26253f54247e77e5accfdd70e7b4bf27b39c2 10-Feb-2012 Andrew Trick <atrick@apple.com> RegAlloc superpass: includes phi elimination, coalescing, and scheduling.

Creates a configurable regalloc pipeline.

Ensure specific llc options do what they say and nothing more: -reglloc=... has no effect other than selecting the allocator pass itself. This patch introduces a new umbrella flag, "-optimize-regalloc", to enable/disable the optimizing regalloc "superpass". This allows for example testing coalscing and scheduling under -O0 or vice-versa.

When a CodeGen pass requires the MachineFunction to have a particular property, we need to explicitly define that property so it can be directly queried rather than naming a specific Pass. For example, to check for SSA, use MRI->isSSA, not addRequired<PHIElimination>.

CodeGen transformation passes are never "required" as an analysis

ProcessImplicitDefs does not require LiveVariables.

We have a plan to massively simplify some of the early passes within the regalloc superpass.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@150226 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
22de16dc7582dac43429ce0dcb374604020c01f5 19-Jan-2012 Nick Lewycky <nicholas@mxc.ca> Add a TargetOption for disabling tail calls.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148442 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
2bd335470f8939782f3df7f6180282d3825d4f09 10-Jan-2012 David Blaikie <dblaikie@gmail.com> Remove unnecessary default cases in switches that cover all enum values.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147855 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
9421406aada374f79ce2f8e576824463f7830981 23-Dec-2011 Dylan Noblesmith <nobled@dreamwidth.org> drop unneeded config.h includes



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147197 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
8a8d479214745c82ef00f08d4e4f1c173b5f9ce2 02-Dec-2011 Nick Lewycky <nicholas@mxc.ca> Move global variables in TargetMachine into new TargetOptions class. As an API
change, now you need a TargetOptions object to create a TargetMachine. Clang
patch to follow.

One small functionality change in PTX. PTX had commented out the machine
verifier parts in their copy of printAndVerify. That now calls the version in
LLVMTargetMachine. Users of PTX who need verification disabled should rely on
not passing the command-line flag to enable it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145714 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
b95fc31aa2e5a0a0b9ee1909d1cb949577c5aa16 16-Nov-2011 Evan Cheng <evan.cheng@apple.com> Sink codegen optimization level into MCCodeGenInfo along side relocation model
and code model. This eliminates the need to pass OptLevel flag all over the
place and makes it possible for any codegen pass to use this information.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144788 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
0173864d8a87d9243d304fbf91b556e20b5a32fc 01-Nov-2011 Sebastian Pop <spop@codeaurora.org> rename getHostTriple into getDefaultTargetTriple



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143502 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
4e478fed1b8021150b1f2cec4e670068b6abd135 31-Oct-2011 Nick Lewycky <nicholas@mxc.ca> Switch new .file directive emission off by default, change llc's flag for it to
-enable-dwarf-directory.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143326 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
44d798d9763bc32aaf49fe7c10d604845f4b6685 18-Oct-2011 Nick Lewycky <nicholas@mxc.ca> Add support for a new extension to the .file directive:

.file filenumber "directory" "filename"

This removes one join+split of the directory+filename in MC internals. Because
bitcode files have independent fields for directory and filenames in debug info,
this patch may change the .o files written by existing .bc files.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142300 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
d8b7aa26134d2abee777f745c32005e63dea2455 16-Oct-2011 Chris Lattner <sabre@nondot.org> Enhance llvm::SourceMgr to support diagnostic ranges, the same way clang does. Enhance
the X86 asmparser to produce ranges in the one case that was annoying me, for example:

test.s:10:15: error: invalid operand for instruction
movl 0(%rax), 0(%edx)
^~~~~~~

It should be straight-forward to enhance filecheck, tblgen, and/or the .ll parser to use
ranges where appropriate if someone is interested.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142106 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
3e74d6fdd248e20a280f1dff3da9a6c689c2c4c3 24-Aug-2011 Evan Cheng <evan.cheng@apple.com> Move TargetRegistry and TargetSelect from Target to Support where they belong.
These are strictly utilities for registering targets and components.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138450 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
e78085a3c03de648a481e9751c3094c517bd7123 22-Jul-2011 Evan Cheng <evan.cheng@apple.com> Combine all MC initialization routines into one. e.g. InitializeX86MCAsmInfo,
InitializeX86MCInstrInfo, etc. are combined into InitializeX86TargetMC.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135812 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
4039313b4c9796d194d90f88675ceb47a183696e 22-Jul-2011 Chandler Carruth <chandlerc@gmail.com> Move the registered target printing in version strings completely out of
the Support library. Now its part of the TargetRegistry, and the three
commands that care about this explicitly register this extra bit of
version information.

The set of commands which care was computed by intersecting those which
use the Support library's version string printing and those that
initialize all the registered targets in a way that produces
a meaningful list. The only odd ball out is that 'clang -cc1as -version'
no longer prints the registered targets. I don't think anyone is really
interested in that (especially as the fact that llvm-mc does so is under
a FIXME), but if someone really does want this back I'll happily apply
the same patch there.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135757 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
34ad6db8b958fdc0d38e122edf753b5326e69b03 20-Jul-2011 Evan Cheng <evan.cheng@apple.com> - Move CodeModel from a TargetMachine global option to MCCodeGenInfo.
- Introduce JITDefault code model. This tells targets to set different default
code model for JIT. This eliminates the ugly hack in TargetMachine where
code model is changed after construction.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135580 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
439661395fd2a2a832dba01c65bc88718528313c 19-Jul-2011 Evan Cheng <evan.cheng@apple.com> Introduce MCCodeGenInfo, which keeps information that can affect codegen
(including compilation, assembly). Move relocation model Reloc::Model from
TargetMachine to MCCodeGenInfo so it's accessible even without TargetMachine.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135468 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
803fa2c60544aeba1df310d9aa5e46839517234f 18-Jul-2011 Evan Cheng <evan.cheng@apple.com> LLC doesn't need to create MCInstrInfo's.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135369 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
1abf2cb59b8d63415780a03329307c0997b2670c 15-Jul-2011 Evan Cheng <evan.cheng@apple.com> Rename createAsmInfo to createMCAsmInfo and move registration code to MCTargetDesc to prepare for next round of changes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135219 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
59ee62d2418df8db499eca1ae17f5900dc2dcbba 11-Jul-2011 Evan Cheng <evan.cheng@apple.com> - Eliminate MCCodeEmitter's dependency on TargetMachine. It now uses MCInstrInfo
and MCSubtargetInfo.
- Added methods to update subtarget features (used when targets automatically
detect subtarget features or switch modes).
- Teach X86Subtarget to update MCSubtargetInfo features bits since the
MCSubtargetInfo layer can be shared with other modules.
- These fixes .code 16 / .code 32 support since mode switch is updated in
MCSubtargetInfo so MC code emitter can do the right thing.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134884 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
ffc0e73046f737d75e0a62b3a83ef19bcef111e3 09-Jul-2011 Evan Cheng <evan.cheng@apple.com> Change createAsmParser to take a MCSubtargetInfo instead of triple,
CPU, and feature string. Parsing some asm directives can change
subtarget state (e.g. .code 16) and it must be reflected in other
modules (e.g. MCCodeEmitter). That is, the MCSubtargetInfo instance
must be shared.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134795 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
276365dd4bc0c2160f91fd8062ae1fc90c86c324 30-Jun-2011 Evan Cheng <evan.cheng@apple.com> Fix the ridiculous SubtargetFeatures API where it implicitly expects CPU name to
be the first encoded as the first feature. It then uses the CPU name to look up
features / scheduling itineray even though clients know full well the CPU name
being used to query these properties.

The fix is to just have the clients explictly pass the CPU name!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134127 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
ab8be96fd30ca9396e6b84fdddf1ac6208984cad 29-Jun-2011 Evan Cheng <evan.cheng@apple.com> Sink SubtargetFeature and TargetInstrItineraries (renamed MCInstrItineraries) into MC.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134049 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
4992b03cbdaad1df46ea771b587f247395e49999 24-May-2011 Evan Cheng <evan.cheng@apple.com> Remove dead option.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131947 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
f1a5c7ec04002769f1638e64f7439589f0f926e6 30-Apr-2011 Rafael Espindola <rafael.espindola@gmail.com> Add all the plumbing needed for MC to expand cfi to the old tables in
the final assembly. It is the same technique used when targeting
assemblers that don't support .loc.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130587 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
0ccc0dde33ee78003367cb41a05156c16429dc71 20-Apr-2011 Daniel Dunbar <daniel@zuster.org> llc: Fix a refacto, .loc support didn't work before 10.6.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129841 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
558692fd0a31d4d3ae4fd09a3a02f80da2e44e5c 20-Apr-2011 Daniel Dunbar <daniel@zuster.org> ADT/Triple: Renambe isOSX... methods to isMacOSX for consistency with the OS
triple component.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129838 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
d285139e0e1fc4a2253ebb18415e2abdf573e373 19-Apr-2011 Daniel Dunbar <daniel@zuster.org> llc: Eliminate a use of getDarwinMajorNumber().

- As before, there is a minor semantic change here (evidenced by the test
change) for Darwin triples that have no version component. I debated changing
the default behavior of isOSVersionLT, but decided it made more sense for
triples to be explicit.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129805 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
ce96902d88d473697f05c0465952dae374be564e 05-Apr-2011 Andrew Trick <atrick@apple.com> Added *hidden* flags -print-options and -print-all-options so
developers can see if their driver changed any cl::Option's. The
current implementation isn't perfect but handles most kinds of
options. This is nice to have when decomposing the stages of
compilation and moving between different drivers. It's also a good
sanity check when comparing results produced by different command line
invocations that are expected to produce the comparable results.

Note: This is not an attempt to prolong the life of cl::Option. On the
contrary, it's a placeholder for a feature that must exist when
cl::Option is replaced by a more appropriate framework. A new
framework needs: a central option registry, dynamic name lookup,
non-global containers of option values (e.g. per-module,
per-function), *and* the ability to print options values and their defaults at
any point during compilation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128910 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
a41af7aeef953870da1cfeb59f7f3a34789dc8a5 05-Apr-2011 Andrew Trick <atrick@apple.com> whitespace


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128905 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
9bc23ad6140172ba960b6616b45e96a9b14a09aa 03-Dec-2010 Devang Patel <dpatel@apple.com> Disable .loc support on older darwin OSes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120747 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
75a08e6aac8e9e7bb24d34234b8bfaa512638b06 01-Dec-2010 Devang Patel <dpatel@apple.com> Add hiddent command line option, as an debugging aid, to disable .loc use.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120575 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
1f6efa3996dd1929fbc129203ce5009b620e6969 29-Nov-2010 Michael J. Spencer <bigcheesegs@gmail.com> Merge System into Support.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120298 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
e4f1a9b8a272ff7452759019ee7774e9dbdf1568 07-Oct-2010 Dan Gohman <gohman@apple.com> Move tool_output_file into its own file.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115973 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
d4c454317a38d65957edebe62bfc69fc8d9885e8 01-Sep-2010 Dan Gohman <gohman@apple.com> Make tool_output_file's raw_ostream instance a member variable instead
of a base class.

This makes it possible to unregister the file from FilesToRemove when
the file is done. Also, this eliminates the need for
formatted_tool_output_file.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112706 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
59279b1273197566dacdd8939b3c3038965be65a 30-Aug-2010 Dan Gohman <gohman@apple.com> Fix llc to run the verifier once, not twice.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112532 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
75ebbceeeda1e7a78efe1848bb90e034f0c6ba61 28-Aug-2010 Duncan Sands <baldrick@free.fr> Straighten out any triple strings passed on the command line before
they hit the rest of the system.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112344 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
d5826a33a5a7c298a8934541d11cda042028be3b 20-Aug-2010 Dan Gohman <gohman@apple.com> Use the new tool_output_file in several tools. This fixes a variety
of problems with output files being left behind or output streams
being left unclosed. Fix llvm-mc to respect the -o option in all
modes, rather than hardcoding outs() in some cases.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111603 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
18cde6df91a33d62a334002a7b608917c07791e8 18-Aug-2010 Dan Gohman <gohman@apple.com> Eliminate some redundancy by relying on raw_fd_ostream to handle "-"
properly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111373 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
510cea0f908e27bff181d3a5fa8fa76f652bb631 18-Aug-2010 Dan Gohman <gohman@apple.com> Don't translate "-" to outs() manually; raw_ostream does that
automatically.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111370 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
c9234c583573cfc0b19a94ecd766e2521e75e91c 09-Aug-2010 Michael J. Spencer <bigcheesegs@gmail.com> llc: Fix help typo as pointed out by Nick Lewycky.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110556 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
e68cd267abab22cc81b97672bad0ec5e0751488b 06-Aug-2010 Michael J. Spencer <bigcheesegs@gmail.com> llc: Clarify -mc-relax-all description.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110477 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
7c380eded54a19870bd5f4f076733d174f9aa582 31-Jul-2010 Michael J. Spencer <bigcheesegs@gmail.com> llc: Add -mc-relax-all.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109954 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
26a707493903729aab49e02a082a0e481003b760 27-May-2010 Dan Gohman <gohman@apple.com> Avoid calling outs() and fouts() when the stream isn't really needed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104873 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
99dca4fde746eb76253e737cca166261c767412d 11-May-2010 Dan Gohman <gohman@apple.com> Remove the "WantsWholeFile" concept, as it's no longer needed. CBE
and the others use the regular addPassesToEmitFile hook now, and
llc no longer needs a bunch of redundant code to handle the
whole-file case.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103492 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
5758d4ce4603bd2c0b97c87e6e516bf2afd78a85 06-May-2010 Chris Lattner <sabre@nondot.org> make -filetype=obj default to emitting its output to foo.obj
when on windows instead of foo.o. Patch by Nathan Jeffords!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103150 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
8ae93e77e83d796030d334b6a9b1b48efd170687 29-Apr-2010 Daniel Dunbar <daniel@zuster.org> Remove dead option.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102621 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
af632c91a0090d8448dd10e48d8ce53f31be0a21 06-Apr-2010 Chris Lattner <sabre@nondot.org> add .o file writing for inline asm in llc. Here's a silly
demo:

$ clang asm.c -S -o - -emit-llvm | llc -filetype=obj -o t.o
<inline asm>:1:2: error: unrecognized instruction
abc incl %eax
^
LLVM ERROR: Error parsing inline asm

Only problem seems to be that the parser finalizes OutStreamer
at the end of the first inline asm, which isn't what we want.
For example:

$ cat asm.c
int foo(int X) {
__asm__ ("incl %0" : "+r" (X));
return X;
}
$ clang asm.c -S -o - -emit-llvm | llc
...
subq $8, %rsp
movl %edi, (%rsp)
movl %edi, %eax
## InlineAsm Start
incl %eax
## InlineAsm End
movl %eax, (%rsp)
movl %eax, 4(%rsp)
addq $8, %rsp
ret
$ clang asm.c -S -o - -emit-llvm | llc -filetype=obj -o t.o
$ otool -tv t.o
t.o:
(__TEXT,__text) section
_foo:
0000000000000000 subq $0x08,%rsp
0000000000000004 movl %edi,(%rsp)
0000000000000007 movl %edi,%eax
0000000000000009 incl %eax
$

don't stop at inc!



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100491 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
51ecc389a9b6ae82ff799a62cde882629fad53b0 24-Mar-2010 Dan Gohman <gohman@apple.com> Trim #includes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99416 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
50fc9f319e845961970e69f714da525aaa13605c 22-Mar-2010 Dan Gohman <gohman@apple.com> llc doesn't need LinkAllVMCore.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99186 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
d44f16fce7b23d61e0b10cfdca3d10869b0236ae 01-Mar-2010 Dan Gohman <gohman@apple.com> Make llc opt into the addPassesToEmitFile verify pass.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97502 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
5669e3009761dff20b67e18a382c334041887928 03-Feb-2010 Chris Lattner <sabre@nondot.org> change addPassesToEmitFile to return true on failure instead of its input,
add -filetype=null for performance testing and remove -filetype=dynlib,
which isn't planned to be implemented.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95202 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
ac7798e9062f9bc371709ed445e1b3153b581e9a 03-Feb-2010 Chris Lattner <sabre@nondot.org> Hook up -filetype=obj through the MachO streamer. Here's a demo:

$ cat t.ll
@g = global i32 42
$ llc t.ll -o t.o -filetype=obj
$ nm t.o
00000000 D _g

There is still a ton of work left. Instructions are not being encoded
yet apparently.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95162 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
3813d8adf3788dd01a4cb9db01c122cd5e6a13b9 02-Feb-2010 Chris Lattner <sabre@nondot.org> Remove a bunch of stuff around the edges of the ELF writer.
Now the only use of the ELF writer is the JIT, which won't be
easy to fix in the short term. :( :(



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95148 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
211edae4843f5c2ee9c376e88e4cf0ecc8745f03 02-Feb-2010 Chris Lattner <sabre@nondot.org> eliminate FileModel::Model, just use CodeGenFileType. The client
of the code generator shouldn't care what object format a target
uses.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95124 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
b5c5160a554cb0debeb7913287d9c099a753a59e 02-Feb-2010 Chris Lattner <sabre@nondot.org> eliminate all forms of addPassesToEmitMachineCode except
the one used by the JIT. Remove all forms of
addPassesToEmitFileFinish except the one used by the static
code generator. Inline the remaining version of
addPassesToEmitFileFinish into its only caller.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95109 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
39bdc78e6fcc2a152c6143952c23fba5db983227 02-Feb-2010 Nate Begeman <natebegeman@mac.com> Kill the Mach-O writer, and temporarily make filetype=obj an error.
The MCStreamer based assemblers will take over for this functionality.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95033 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
f0356fe140af1a30587b9a86bcfb1b2c51b8ce20 27-Jan-2010 Jeffrey Yasskin <jyasskin@google.com> Kill ModuleProvider and ghost linkage by inverting the relationship between
Modules and ModuleProviders. Because the "ModuleProvider" simply materializes
GlobalValues now, and doesn't provide modules, it's renamed to
"GVMaterializer". Code that used to need a ModuleProvider to materialize
Functions can now materialize the Functions directly. Functions no longer use a
magic linkage to record that they're materializable; they simply ask the
GVMaterializer.

Because the C ABI must never change, we can't remove LLVMModuleProviderRef or
the functions that refer to it. Instead, because Module now exposes the same
functionality ModuleProvider used to, we store a Module* in any
LLVMModuleProviderRef and translate in the wrapper methods. The bindings to
other languages still use the ModuleProvider concept. It would probably be
worth some time to update them to follow the C++ more closely, but I don't
intend to do it.

Fixes http://llvm.org/PR5737 and http://llvm.org/PR5735.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94686 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
3fe980b127a61608bd6d44c0939ba716ca21625c 15-Jan-2010 Nate Begeman <natebegeman@mac.com> Hook up llc's -filetype=obj to use MCStreamer if an MCCodeEmitter is available.
Remove most of old Mach-O Writer support, it has been replaced by MCMachOStreamer

Further refactoring to completely remove MachOWriter and drive the object file
writer with the AsmPrinter MCInst/MCSection logic is forthcoming.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93527 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
c58d01b235fb6aba9edb49f6dbe08edaa756a873 05-Jan-2010 David Greene <greened@obbligato.org> Enable debug buffering.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92666 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
bf57b52ba424bbaaa6e2d25dd4df731deb59f959 16-Oct-2009 Evan Cheng <evan.cheng@apple.com> Add a CodeGenOpt::Less level to match -O1. It'll be used by clients which do not want post-regalloc scheduling.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84272 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
d81c450afcc0258586d677813c388b0c8f289887 16-Sep-2009 Dan Gohman <gohman@apple.com> Now that llc can read .ll files directly, teach it to recognize .ll as
an extension, so that the default output filename for foo.ll is foo.s,
not foo.ll.s


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82071 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
2b991bbd9918d7ae67d3f6d9ae69cf15d929698b 03-Sep-2009 Daniel Dunbar <daniel@zuster.org> Tweak comment.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80891 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
778b06bbcecbe52125dddcb06e898806b1e2b3c7 02-Sep-2009 Dan Gohman <gohman@apple.com> Switch llc from ParseBitcodeFile to ParseIRFile. This lets llc
transparently read either LLVM Assembly or LLVM Bitcode files.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80829 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
de05902114950a181c439aa4c3b9b06170256a61 25-Aug-2009 Dan Gohman <gohman@apple.com> Delete some unnecessary flushes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80013 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
baa26395ccf17fc988bb9cf62d6659ca8415ece9 25-Aug-2009 Dan Gohman <gohman@apple.com> Make LLVM command-line tools overwrite their output files without -f.
This is conventional command-line tool behavior. -f now just means
"enable binary output on terminals".

Add a -f option to llvm-extract and llvm-link, for consistency.

Remove F_Force from raw_fd_ostream and enable overwriting and
truncating by default. Introduce an F_Excl flag to permit users to
enable a failure when the file already exists. This flag is
currently unused.

Update Makefiles and documentation accordingly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79990 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
17e9edc4a7bbeadf756494cf39fcacc9eff72202 23-Aug-2009 Chris Lattner <sabre@nondot.org> Change raw_fd_ostream to take flags as an optional bitmask
instead of as two bools. Use this to add a F_Append flag
which has the obvious behavior.

Other unrelated changes conflated into this patch:

1. REmove EH stuff from llvm-dis and llvm-as, the try blocks
are dead.
2. Simplify the filename inference code in llvm-as/llvm-dis,
because raw_fd_ostream does the right thing with '-'.
3. Switch machine verifier to use raw_ostream instead of ostream
(Which is the thing that needed append in the first place).




git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79807 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
4b3d57228cae1cba0897b80a73fddd4b8a61894a 04-Aug-2009 Daniel Dunbar <daniel@zuster.org> No really, it's unused.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78047 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
4e02eb0f67356762eeb12a75f8d4d6f47de955a4 03-Aug-2009 Daniel Dunbar <daniel@zuster.org> Provide target data from the module if the target machine doesn't have any.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77973 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
4bd03abe593222b26e84066223feb321bf738625 03-Aug-2009 Daniel Dunbar <daniel@zuster.org> Remove now unused arguments from TargetRegistry::lookupTarget.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77950 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
3c2d4bf97fa96fe171883cd80e4ea93fc43563e6 03-Aug-2009 Daniel Dunbar <daniel@zuster.org> Pass target triple string in to TargetMachine constructor.

This is not just a matter of passing in the target triple from the module;
currently backends are making decisions based on the build and host
architecture. The goal is to migrate to making these decisions based off of the
triple (in conjunction with the feature string). Thus most clients pass in the
target triple, or the host triple if that is empty.

This has one important change in the way behavior of the JIT and llc.

For the JIT, it was previously selecting the Target based on the host
(naturally), but it was setting the target machine features based on the triple
from the module. Now it is setting the target machine features based on the
triple of the host.

For LLC, -march was previously only used to select the target, the target
machine features were initialized from the module's triple (which may have been
empty). Now the target triple is taken from the module, or the host's triple is
used if that is empty. Then the triple is adjusted to match -march.

The take away is that -march for llc is now used in conjunction with the host
triple to initialize the subtarget. If users want more deterministic behavior
from llc, they should use -mtriple, or set the triple in the input module.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77946 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
a5881e3060aee9f82aef3747a97650e5eafe893a 26-Jul-2009 Daniel Dunbar <daniel@zuster.org> Add TargetRegistry::lookupTarget.
- This is a simplified mechanism which just looks up a target based on the
target triple, with a few additional flags.

- Remove getClosestStaticTargetForModule, the moral equivalent is now:
lookupTarget(Mod->getTargetTriple, true, false, ...);

- This no longer does the fuzzy matching with target data (based on endianness
and pointer width) that getClosestStaticTargetForModule was doing, but this
was deemed unnecessary.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77111 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
1d929216916dc992f8643dda971aac58d47c7765 16-Jul-2009 Daniel Dunbar <daniel@zuster.org> Switch llc and createJIT to use simpler command line parsing for -march.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75890 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
494d663175bbaa7db4743105d1efdf78be9cdb03 16-Jul-2009 Daniel Dunbar <daniel@zuster.org> Make sure targets are initialized before we do anything, even command line
processing.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75888 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
0d7c695c74ae6d5f68cc07378c17491915e607d3 16-Jul-2009 Owen Anderson <resistor@mac.com> To simplify the upcoming context-on-type change, switch all command line tools to using the default global context for now.

This will let us to hardwire stuff to the global context in the short term while the API is sorted out.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75846 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
51b198af83cb0080c2709b04c129a3d774c07765 15-Jul-2009 Daniel Dunbar <daniel@zuster.org> Reapply TargetRegistry refactoring commits.

--- Reverse-merging r75799 into '.':
U test/Analysis/PointerTracking
U include/llvm/Target/TargetMachineRegistry.h
U include/llvm/Target/TargetMachine.h
U include/llvm/Target/TargetRegistry.h
U include/llvm/Target/TargetSelect.h
U tools/lto/LTOCodeGenerator.cpp
U tools/lto/LTOModule.cpp
U tools/llc/llc.cpp
U lib/Target/PowerPC/PPCTargetMachine.h
U lib/Target/PowerPC/AsmPrinter/PPCAsmPrinter.cpp
U lib/Target/PowerPC/PPCTargetMachine.cpp
U lib/Target/PowerPC/PPC.h
U lib/Target/ARM/ARMTargetMachine.cpp
U lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp
U lib/Target/ARM/ARMTargetMachine.h
U lib/Target/ARM/ARM.h
U lib/Target/XCore/XCoreTargetMachine.cpp
U lib/Target/XCore/XCoreTargetMachine.h
U lib/Target/PIC16/PIC16TargetMachine.cpp
U lib/Target/PIC16/PIC16TargetMachine.h
U lib/Target/Alpha/AsmPrinter/AlphaAsmPrinter.cpp
U lib/Target/Alpha/AlphaTargetMachine.cpp
U lib/Target/Alpha/AlphaTargetMachine.h
U lib/Target/X86/X86TargetMachine.h
U lib/Target/X86/X86.h
U lib/Target/X86/AsmPrinter/X86ATTAsmPrinter.h
U lib/Target/X86/AsmPrinter/X86AsmPrinter.cpp
U lib/Target/X86/AsmPrinter/X86IntelAsmPrinter.h
U lib/Target/X86/X86TargetMachine.cpp
U lib/Target/MSP430/MSP430TargetMachine.cpp
U lib/Target/MSP430/MSP430TargetMachine.h
U lib/Target/CppBackend/CPPTargetMachine.h
U lib/Target/CppBackend/CPPBackend.cpp
U lib/Target/CBackend/CTargetMachine.h
U lib/Target/CBackend/CBackend.cpp
U lib/Target/TargetMachine.cpp
U lib/Target/IA64/IA64TargetMachine.cpp
U lib/Target/IA64/AsmPrinter/IA64AsmPrinter.cpp
U lib/Target/IA64/IA64TargetMachine.h
U lib/Target/IA64/IA64.h
U lib/Target/MSIL/MSILWriter.cpp
U lib/Target/CellSPU/SPUTargetMachine.h
U lib/Target/CellSPU/SPU.h
U lib/Target/CellSPU/AsmPrinter/SPUAsmPrinter.cpp
U lib/Target/CellSPU/SPUTargetMachine.cpp
U lib/Target/Mips/AsmPrinter/MipsAsmPrinter.cpp
U lib/Target/Mips/MipsTargetMachine.cpp
U lib/Target/Mips/MipsTargetMachine.h
U lib/Target/Mips/Mips.h
U lib/Target/Sparc/AsmPrinter/SparcAsmPrinter.cpp
U lib/Target/Sparc/SparcTargetMachine.cpp
U lib/Target/Sparc/SparcTargetMachine.h
U lib/ExecutionEngine/JIT/TargetSelect.cpp
U lib/Support/TargetRegistry.cpp


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75820 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
a1bdcedc3879510a874d24c450e07feb170d9cd6 15-Jul-2009 Dan Gohman <gohman@apple.com> Add a Force option to raw_fd_ostream to specify whether opening
an existing file is considered an error. Convert several tools
to use raw_fd_ostream instead of std::ostream, and to use this
new option instead of doing a manual check.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75801 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
2286f8dc4cec0625f7d7a14e2570926cf8599646 15-Jul-2009 Stuart Hastings <stuart@apple.com> Revert 75762, 75763, 75766..75769, 75772..75775, 75778, 75780, 75782 to repair broken LLVM-GCC build.
Will revert 75770 in the llvm-gcc trunk.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75799 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
65f57c233cd4499e2e8b52a503201e64edfd6a9e 15-Jul-2009 Dan Gohman <gohman@apple.com> Use errs() instead of std::cerr.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75791 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
54785e6df01aa239759a5717d7cc115387e34559 15-Jul-2009 Daniel Dunbar <daniel@zuster.org> Migrate llc and the JIT to using the TargetRegistry for lookups.
- They still use the TargetMachineRegistry to populate the contents of the
-march option (via the listener interface). We can't just populate it in the
option parser because we can't expect the TargetRegistry to be populated yet
(we no longer rely on static constructors).

- There are a couple ways to finish killing off TargetMachineRegistry, but I
haven't figured out the cleanest one yet...


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75773 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
71847813bc419f7a0667468136a07429c6d9f164 14-Jul-2009 David Greene <greened@obbligato.org> Have asm printers use formatted_raw_ostream directly to avoid a
dynamic_cast<>.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75670 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
ac57e6e498abccb117e0d61c2fa0f733845e50cb 06-Jul-2009 Bruno Cardoso Lopes <bruno.cardoso@gmail.com> Add the Object Code Emitter class. Original patch by Aaron Gray, I did some
cleanup, removed some #includes and moved Object Code Emitter out-of-line.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74813 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
31895e73591d3c9ceae731a1274c8f56194b9616 01-Jul-2009 Owen Anderson <resistor@mac.com> Hold the LLVMContext by reference rather than by pointer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74640 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
8b477ed579794ba6d76915d56b3f448a7dd20120 01-Jul-2009 Owen Anderson <resistor@mac.com> Add a pointer to the owning LLVMContext to Module. This requires threading LLVMContext through a lot
of the bitcode reader and ASM parser APIs, as well as supporting it in all of the tools.

Patches for Clang and LLVM-GCC to follow.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74614 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
2deb58f72ec6547a2f760fc48f86b4d95d0a4a02 17-Jun-2009 Chris Lattner <sabre@nondot.org> switch to using llvm/Target/TargetSelect.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73611 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
1555a23335400143f2b54a66aedc4b5cbbb79f8d 16-Jun-2009 Douglas Gregor <dgregor@apple.com> Introduce new headers whose inclusion forces linking and
initialization of all targets (InitializeAllTargets.h) or assembler
printers (InitializeAllAsmPrinters.h). This is a step toward the
elimination of relinked object files, so that we can build normal
archives.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73543 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
578efa920abd218ba75a0fb3c9b8398f4c0a774b 05-Jun-2009 Devang Patel <dpatel@apple.com> Add new function attribute - noimplicitfloat
Update code generator to use this attribute and remove NoImplicitFloat target option.
Update llc to set this attribute when -no-implicit-float command line option is used.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72959 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
d18e31ae17390d9c6f6cf93d18badf962452031d 05-Jun-2009 Devang Patel <dpatel@apple.com> Add new function attribute - noredzone.
Update code generator to use this attribute and remove DisableRedZone target option.
Update llc to set this attribute when -disable-red-zone command line option is used.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72894 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
712e80e188c306125e32e46e9ed5db9dfc2f7cc9 05-May-2009 Evan Cheng <evan.cheng@apple.com> Default llc / lli optimization to "Default", which corresponds to -O1 / -O2.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70934 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
581b93415ef207a2103913e24874889426b1063e 30-Apr-2009 Bill Wendling <isanbard@gmail.com> Remove unused flags.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70459 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
8dc85ddf809b9b987b92da27c0ff7875d6e1f72d 30-Apr-2009 Bill Wendling <isanbard@gmail.com> Error out with bad optimization level specified.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70449 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
b8cb0bb08c7f9f2dfcdfa5f7d72a4c56a9c93228 30-Apr-2009 Bill Wendling <isanbard@gmail.com> Remove LTO optimization level.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70445 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
98a366d547772010e94609e4584489b3e5ce0043 30-Apr-2009 Bill Wendling <isanbard@gmail.com> Instead of passing in an unsigned value for the optimization level, use an enum,
which better identifies what the optimization is doing. And is more flexible for
future uses.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70440 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
be8cc2a3dedeb7685f07e68cdc4b9502eb97eb2b 29-Apr-2009 Bill Wendling <isanbard@gmail.com> Second attempt:

Massive check in. This changes the "-fast" flag to "-O#" in llc. If you want to
use the old behavior, the flag is -O0. This change allows for finer-grained
control over which optimizations are run at different -O levels.

Most of this work was pretty mechanical. The majority of the fixes came from
verifying that a "fast" variable wasn't used anymore. The JIT still uses a
"Fast" flag. I'll change the JIT with a follow-up patch.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70343 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
c69d56f1154342a57c9bdd4c17a10333e3520127 28-Apr-2009 Bill Wendling <isanbard@gmail.com> r70270 isn't ready yet. Back this out. Sorry for the noise.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70275 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
2e9d5f912a9841d3685ba0241abe1131943fed29 28-Apr-2009 Bill Wendling <isanbard@gmail.com> Massive check in. This changes the "-fast" flag to "-O#" in llc. If you want to
use the old behavior, the flag is -O0. This change allows for finer-grained
control over which optimizations are run at different -O levels.

Most of this work was pretty mechanical. The majority of the fixes came from
verifying that a "fast" variable wasn't used anymore. The JIT still uses a
"Fast" flag. I'm not 100% sure if it's necessary to change it there...


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70270 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
23120babfaa23e1ecfe374866f498855dbe5fe27 25-Mar-2009 Evan Cheng <evan.cheng@apple.com> CodeGen still defaults to non-verbose asm, but llc now overrides it and default to verbose.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67669 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
cc14d25dd99e891c586bd56aa41796abbe4ac3d8 06-Mar-2009 Chris Lattner <sabre@nondot.org> Change various llvm utilities to use PrettyStackTraceProgram in
their main routines. This makes the tools print their argc/argv
commands if they crash.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66248 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
2388a588bdf32610e18a66c0c6ef248087fd1cdc 16-Jan-2009 Mikhail Glushenkov <foldr@codedgers.com> Registry.h should not depend on CommandLine.h.

Split Support/Registry.h into two files so that we have less to
recompile every time CommandLine.h is changed.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62312 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
5c1799b29375fcd899f67a31fb4dda4ef3e2127f 16-Jan-2009 Mikhail Glushenkov <foldr@codedgers.com> Delete trailing whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62307 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
262b05f637238be741376620526a940efb553ab2 31-Dec-2008 Misha Brukman <brukman+llvm@gmail.com> Fix spacing to be uniform for parameters.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61528 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
0d9eb9b4917340acbfc831890655b8e9724959f6 13-Nov-2008 Daniel Dunbar <daniel@zuster.org> Add Binary flag to raw_fd_ostream constructor.

Document raw_fd_ostream's treatment of "-".


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59219 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
b8cab9227a0f6ffbdaae33e3c64268e265008a6a 14-Oct-2008 Dan Gohman <gohman@apple.com> Fix command-line option printing to print two spaces where needed,
instead of requiring all "short description" strings to begin with
two spaces. This makes these strings less mysterious, and it fixes
some cases where short description strings mistakenly did not
begin with two spaces.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57521 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
ed3e8b4ed2a3ab44d316e16a54d963f8927c6783 21-Aug-2008 Dan Gohman <gohman@apple.com> Don't silently ignore errors when opening output streams.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55120 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
cb3718832375a581c5ea23f15918f3ea447a446c 21-Aug-2008 Owen Anderson <resistor@mac.com> Use raw_ostream throughout the AsmPrinter.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55092 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
2b11004d569ee3dd7bd5d184c44fecd5d4bbfce7 17-Aug-2008 Anton Korobeynikov <asl@math.spbu.ru> Link GC metadata printers by default to llc

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54892 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
5027652b8ae5414d634288d456364ef2534cb406 24-Apr-2008 Anton Korobeynikov <asl@math.spbu.ru> First step of implementing PR1538: move llvm2cpp logic to new 'target'


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50189 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
33ef2bb2680de321cd6d2056a1ecce635e6d1c75 16-Apr-2008 Dan Gohman <gohman@apple.com> Fix a memory leak in llc.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49793 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
21c62da287237d39d0d95004881ea4baae3be6da 29-Dec-2007 Chris Lattner <sabre@nondot.org> remove attributions from tools.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45421 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
4b2b9402c5c369b94b35837470a170f1d0e47e1f 17-Oct-2007 Gordon Henriksen <gordonhenriksen@mac.com> Switching TargetMachineRegistry to use the new generic Registry.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43094 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
82a13c9c4811e40d0ff858c508cb54d672ee926e 08-Oct-2007 Dan Gohman <gohman@apple.com> Move the space in overview output for commands out of each of the
commands and into the common code.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42752 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
a99be51bf5cdac1438069d4b01766c47704961c8 05-Jul-2007 Gabor Greif <ggreif@gmail.com> Here is the bulk of the sanitizing.
Almost all occurrences of "bytecode" in the sources have been eliminated.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37913 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
065344dfd5a7b3502098810b981eb0077e5d81f3 07-May-2007 Chris Lattner <sabre@nondot.org> use the new MemoryBuffer interfaces to simplify error reporting in clients.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36900 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
744879ea01779a48f898a801c847677b0bfa824a 06-May-2007 Chris Lattner <sabre@nondot.org> switch tools to bitcode from bytecode


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36872 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
db9cbeb2408ecfe97a2e0065492b1f37caf377ad 06-May-2007 Chris Lattner <sabre@nondot.org> use an auto_ptr to avoid an explicit delete


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36850 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
1a7354082ad62d9e31faf3d6ad15c39debc94fd6 06-May-2007 Chris Lattner <sabre@nondot.org> add bitcode reading support. Remove EH cruft.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36839 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
497b0b0a455dc2300a5b8bb1e64dc3f82afc9acf 27-Mar-2007 Reid Spencer <rspencer@reidspencer.com> For PR1277:
Implement error handling for bytecode parsing.

Patch by Scott Michel.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35364 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
546d0fbd9718ea5ad422faaeffea939fe7312408 08-Feb-2007 Bill Wendling <isanbard@gmail.com> The new version of how to add passes to emit files. We explicitly call a
function to add the file writers between calls to add the passes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34035 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
f2e292ce58ca07d9bbe3cad75f8baa35bd85964a 07-Feb-2007 Chris Lattner <sabre@nondot.org> push bytecode decompressor out through APIs. Now the bytecode reader
api's look like this:

ModuleProvider *getBytecodeModuleProvider(
const std::string &Filename, ///< Name of file to be read
BCDecompressor_t *BCDC = Compressor::decompressToNewBuffer,
std::string* ErrMsg = 0, ///< Optional error message holder
BytecodeHandler* H = 0 ///< Optional handler for reader events
);

This is ugly, but allows a client to say:

getBytecodeModuleProvider("foo", 0);

If they do this, there is no dependency on the compression libraries, saving
codesize.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34012 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
5cbf985dcbc89fba3208e7baf8b6f488b06d3ec9 30-Jan-2007 Reid Spencer <rspencer@reidspencer.com> For PR1136: Rename GlobalVariable::isExternal as isDeclaration to avoid
confusion with external linkage types.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33663 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
c30598bc3ad792eb8cc75b188eb872a28c62ab71 06-Dec-2006 Chris Lattner <sabre@nondot.org> make all llvm tools call llvm_shutdown when they exit, static'ify some stuff.

With this change, I can now move -stats to print when llvm_shutdown is called.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32250 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
1911fd4f85aebcd4d7b8f27313c5a363eebf49cb 04-Sep-2006 Chris Lattner <sabre@nondot.org> Completely rearchitect the interface between targets and the pass manager.
This pass:

1. Splits TargetMachine into TargetMachine (generic targets, can be implemented
any way, like the CBE) and LLVMTargetMachine (subclass of TM that is used by
things using libcodegen and other support).
2. Instead of having each target fully populate the passmgr for file or JIT
output, move all this to common code, and give targets hooks they can
implement.
3. Commonalize the target population stuff between file emission and JIT
emission.
4. All (native code) codegen stuff now happens in a FunctionPassManager, which
paves the way for "fast -O0" stuff in the CFE later, and now LLC could
lazily stream .bc files from disk to use less memory.
5. There are now many fewer #includes and the targets don't depend on the
scalar xforms or libanalysis anymore (but codegen does).
6. Changing common code generator pass ordering stuff no longer requires
touching all targets.
7. The JIT now has the option of "-fast" codegen or normal optimized codegen,
which is now orthogonal to the fact that JIT'ing is being done.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30081 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
de1cce7e14dd3cb4897d60132d72d87de314a5ac 03-Sep-2006 Chris Lattner <sabre@nondot.org> Remove use of target::getName()


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30069 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
712b835de015d72815788f46b16bc947db28d909 23-Aug-2006 Nate Begeman <natebegeman@mac.com> Make sure that both non-asm file types are marked as experimental


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29851 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
eb883af3903286ac20f5bbf549c555c9ef961e14 23-Aug-2006 Nate Begeman <natebegeman@mac.com> Initial checkin of the Mach-O emitter. There's plenty of fixmes, but it
does emit linkable .o files in very simple cases.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29850 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
d3a680ae2cb1ca2d96d1272754af4702862dcb30 02-Aug-2006 Chris Lattner <sabre@nondot.org> Fix the build on case-sensitive filesystems :(


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29457 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
13ec702c430b91ee49b9e6d9581cd95412f216c8 01-Aug-2006 Jim Laskey <jlaskey@mac.com> Introducing plugable register allocators and instruction schedulers.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29434 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
af303d53e6013417d189621c75179df6c7cbdcde 08-Jun-2006 Reid Spencer <rspencer@reidspencer.com> For PR780:
1. Add #includes to LinkAllVMCore.h to get Mangler.o and InlineAsm.o
2. Make Mangler.h and InlineAsm.h use the macros to ensure linkage
3. Make each of the tools with --load options include LinkAllVMCore.h
This should be the last set of changes for this bug and 800.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28719 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
07000c6f01d8f57170f2d4c77a86d934bdc5c696 12-May-2006 Owen Anderson <resistor@mac.com> Refactor a bunch of includes so that TargetMachine.h doesn't have to include
TargetData.h. This should make recompiles a bit faster with my current
TargetData tinkering.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28238 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
b93b0347d8715e9f2ded1dc56a086f92aeedfb86 04-May-2006 Chris Lattner <sabre@nondot.org> Adjust to use proper TargetData copy ctor


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28112 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
a69571c7991813c93cba64e88eced6899ce93d81 03-May-2006 Owen Anderson <resistor@mac.com> Refactor TargetMachine, pushing handling of TargetData into the target-specific subclasses. This has one caller-visible change: getTargetData() now returns a pointer instead of a reference.

This fixes PR 759.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28074 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
8b57ff75be6888b597335875aea5ee9d0874b5f2 18-Apr-2006 Chris Lattner <sabre@nondot.org> Add a warning.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27795 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
ef98691ca3a3b765b18b24ec9e01000e9e1b6bd6 23-Mar-2006 Chris Lattner <sabre@nondot.org> remove always-null IntrinsicLowering argument.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26971 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
fc4417837a37715d0b8d4fcca6f90a5f3c08acfc 23-Jan-2006 Chris Lattner <sabre@nondot.org> Remove dead #include


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25520 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
7e07b24b396459a773aabc20c2f7fab2215752fb 23-Jan-2006 Chris Lattner <sabre@nondot.org> It doesn't make sense to give llc a list of passes on the command line,
LLVM doesn't use it and it can't work anyway.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25519 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
7ac534f2343c033f7f583502b10b5d2a1639faf2 05-Jan-2006 Chris Lattner <sabre@nondot.org> remove unused header


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25101 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
b2efb853f00d45b1c8d57f92acd0028fbdeffda6 04-Jan-2006 Jim Laskey <jlaskey@mac.com> Applied some recommend changes from sabre. The dominate one beginning "let the
pass manager do it's thing." Fixes crash when compiling -g files and suppresses
dwarf statements if no debug info is present.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25100 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
292a1afb4a9019f259a0bb1681b153b1d6675db2 04-Jan-2006 Jim Laskey <jlaskey@mac.com> Adding MachineDebugInfo as a immutable pass.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25088 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
64c9e7a3392982e366609996836e45a8f8356798 30-Dec-2005 Duraid Madina <duraid@octopus.com.au> don't need this anymore


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25049 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
ea8aed7ef38077e17253b15f5e7b52b1b5d1db92 30-Dec-2005 Duraid Madina <duraid@octopus.com.au> delete file portably


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25048 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
d8852512160395889124b1ec5c01565cada0a15b 28-Dec-2005 Duraid Madina <duraid@octopus.com.au> behold my standards-compliant humps!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25033 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
3de3b05538775aae2b21be0894e1ab0337068887 28-Dec-2005 Duraid Madina <duraid@octopus.com.au> WAKEY WAKEY


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25032 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
be193839fa8650bc4f2974a82327543054202190 16-Dec-2005 Chris Lattner <sabre@nondot.org> rename option for consistency with -mcpu -mattr etc


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24734 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
f33b8663bdd9056660c9e520f20d9a562cbcff0b 16-Dec-2005 Chris Lattner <sabre@nondot.org> provide an option to override the target triple in a module from the command
line.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24729 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
178e0c41ce22160e6a1005420a52c29162dd87d3 08-Nov-2005 Chris Lattner <sabre@nondot.org> Add a new -fast option, which generates code quickly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24234 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
2094725532836da20db56412ad7f88bc8eb6e586 24-Oct-2005 Chris Lattner <sabre@nondot.org> Shrinkify to make --help output look better


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23911 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
7b7593c4815d95f53148d41b171580e8c88741b6 24-Oct-2005 Chris Lattner <sabre@nondot.org> shrinkify the option name a bit


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23910 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
07be8d42127dbddc73ed4489daf815439514e3e5 23-Oct-2005 Chris Lattner <sabre@nondot.org> document this as experimental


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23883 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
839615a510c582ddcdb09a8e2934f30775daa032 02-Sep-2005 Jim Laskey <jlaskey@mac.com> Add help support for -mcpu and -mattr.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23222 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
b1e1180ca0b32f37aa74d7ad703eeaf91e66c8fa 01-Sep-2005 Jim Laskey <jlaskey@mac.com> 1. Use SubtargetFeatures in llc/lli.

2. Propagate feature "string" to all targets.

3. Implement use of SubtargetFeatures in PowerPCTargetSubtarget.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23192 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
d29b6aa608d69f19b57ebd2ae630b040b1c4951d 30-Jul-2005 Jeff Cohen <jeffc@jolt-lang.org> Keep tabs and trailing spaces out.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22565 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
540f7d60181d64ce25fa277de51ac7e3ded8acae 28-Jul-2005 Reid Spencer <rspencer@reidspencer.com> Run the verifier pass after all the other passes rather than before them.
This catches mistakes in the passes rather than just verifying the bytecode
input to llc.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22534 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
4418c2b3acfcb6cdb05f133aef8eef74ed0d0566 28-Jul-2005 Reid Spencer <rspencer@reidspencer.com> Make the verifier pass run (in debug mode) in llc. This adds a sanity check
to llc when debugging. Also allow other passes to be run from llc.
Patch contributed by Michael McCracken.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22532 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
812125aea956d0c22d92b456dbc5030a1d2780ef 25-Jun-2005 Chris Lattner <sabre@nondot.org> add a new -filetype argument to llc.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22287 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
cbb34a76a9d893901fbad3267c833426e4a2dde4 25-Jun-2005 Chris Lattner <sabre@nondot.org> minor cleanups, use copy ctor instead of manually doing it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22285 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
85141583cd4ee658748623f2acefe2d4db27f3b2 25-Jun-2005 Chris Lattner <sabre@nondot.org> refactor this interface


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22284 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
3da94aec4d429b2ba0f65fa040c33650cade196b 22-Apr-2005 Misha Brukman <brukman+llvm@gmail.com> Remove trailing whitespace


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21428 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
1ef8bdaedbd98bee35a573b8bc87149f2182cb5e 30-Dec-2004 Reid Spencer <rspencer@reidspencer.com> For PR351:
* Place a try/catch block around the entire tool to Make sure std::string
exceptions are caught and printed before exiting the tool.
* Make sure we catch unhandled exceptions at the top level so that we don't
abort with a useless message but indicate than an unhandled exception was
generated.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19192 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
227b6d00dd1faee07c921c7e2256e0fca737d2e5 14-Nov-2004 Reid Spencer <rspencer@reidspencer.com> Fix usage of changed function prototype


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17798 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
551ccae044b0ff658fe629dd67edd5ffe75d10e8 02-Sep-2004 Reid Spencer <rspencer@reidspencer.com> Changes For Bug 352
Move include/Config and include/Support into include/llvm/Config,
include/llvm/ADT and include/llvm/Support. From here on out, all LLVM
public header files must be under include/llvm/.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16137 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
9de7b334ec6f80a15f093f11b339f5741c964b34 29-Aug-2004 Reid Spencer <rspencer@reidspencer.com> The functions in Signal.h are now in the llvm::sys namespace - adjust


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16091 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
878ba7cc5d87deb24aa8a21d7bd9b2ea7215976f 13-Jul-2004 Misha Brukman <brukman+llvm@gmail.com> * Tabs to spaces
* Delete extra blank lines


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14779 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
e45110e01282862e95c3d28c489dedd9a08ffa31 11-Jul-2004 Chris Lattner <sabre@nondot.org> Goodbye macro hell, hello nice clean and simple code. This also gives llc
the ability to dynamically load and use targets that are not linked into it
statically. e.g.:

llc -load libparisc.so -march=parisc foo.bc -o foo.s


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14751 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
86f42bdad93677fa0ca33b27afb0f493028376cb 04-Jul-2004 Reid Spencer <rspencer@reidspencer.com> Add #include <iostream> since Value.h does not include it any more.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14623 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
bed85ff010b95923646ed4e187a5d432cedf67da 27-May-2004 Chris Lattner <sabre@nondot.org> Header file moved


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13813 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
e40eae73705d2ea55dc50d664d1be3ea04c545c8 16-Mar-2004 Brian Gaeke <gaeke@uiuc.edu> Add a better head-of-file comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12447 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
094158a133219bec99a66dd209186f0e36c46557 11-Mar-2004 Misha Brukman <brukman+llvm@gmail.com> SparcV8 removed until it grows up becomes a mature backend.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12288 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
d62276a66e7678fbbc1e7ac3c45b55de2647b4de 28-Feb-2004 Chris Lattner <sabre@nondot.org> Add a hook to run with the V8 target, though it doesn't currently work. Also
mark the PPC backend as experimental


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11962 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
150666fd82f96a8615e63d3797e2d00f3edcb3e0 25-Feb-2004 Brian Gaeke <gaeke@uiuc.edu> Great renaming part II: Sparc --> SparcV9 (also includes command-line options and Makefiles)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11827 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
364d1203e7adaededf3c01f58bd968ee61f4a316 19-Feb-2004 Chris Lattner <sabre@nondot.org> Make sure to print a stack trace whenever an error signal is delivered to
the tool.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11633 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
74661c838c66f8e30226da8a1f3b77548a584203 15-Feb-2004 Chris Lattner <sabre@nondot.org> When the user runs 'llc foo.bc -march=c', write the output to "foo.cbe.c", not
to "foo.s".


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11485 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
666d20a3018efac8b1bc2f0af7d78ad36f8049e9 14-Feb-2004 Chris Lattner <sabre@nondot.org> Add support for -march=c


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11410 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
2217bdbf688d9982842b756babed608e1f3bbe1f 02-Feb-2004 Brian Gaeke <gaeke@uiuc.edu> Add a -march=powerpc option. Automatically select it if this looks like a
big-endian, 32-bit module, or if __ppc__, __POWERPC__, or __APPLE__ are
defined.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11075 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
6fb6ce3148ec4a9aaab47800da2365d7f60a6f5b 28-Dec-2003 Chris Lattner <sabre@nondot.org> Pass extra arguments around n stuph


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10631 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
d0fde30ce850b78371fd1386338350591f9ff494 11-Nov-2003 Brian Gaeke <gaeke@uiuc.edu> Put all LLVM code into the llvm namespace, as per bug 109.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9903 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
1ee1e64293dc1727c0119530ae4bc72006879954 20-Oct-2003 John Criswell <criswell@uiuc.edu> Removed extraneous comment line.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9308 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
7c0e022c5c4be4b11e199a53f73bbdd84e34aa80 20-Oct-2003 John Criswell <criswell@uiuc.edu> Added copyright header to all C++ source files.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9291 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
452fea997232437902385e88366482b01957eeef 10-Oct-2003 Misha Brukman <brukman+llvm@gmail.com> Fix grammar.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9026 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
b5d09bf4cc7769ccbd86a96fb8ea92e3c6e3bbc7 28-Aug-2003 John Criswell <criswell@uiuc.edu> Added code to avoid checking for .bc when the filename is too short.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8190 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
62c720a5bdd36b85dd497a1c3575db5731eca208 24-Aug-2003 Chris Lattner <sabre@nondot.org> Targets now configure themselves with the module, not flags


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8133 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
bb43350e32c949ff9465eb898a2ed5ad9d1f3f9f 24-Aug-2003 Chris Lattner <sabre@nondot.org> Add support for modules with "any" pointersize/endianness


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8122 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
5d5bc7b90cd1d2241f468ed5d49c69d53a7e6aaa 30-Jul-2003 Misha Brukman <brukman+llvm@gmail.com> Revert change: default architecture is never set, it is guessed from input
bytecode file. This means that LLC on X86 will compile to Sparc assembly given a
64-bit input bytecode file...


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7419 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
fcf2be75ec61c6ae3da53d0e4e9f53b4d754dc9b 19-Jul-2003 Misha Brukman <brukman+llvm@gmail.com> Initialize the target architecture based on compiler defines, so if compiled on
x86 or Sparc, LLC will automatically default to that platform, no guessing
required. On another platform, it will default to `noarch' and will have to
guess which architecture to compile to.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7207 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
29abc971009cf4b18c02e7e972de92d98aef3784 08-Jul-2003 Misha Brukman <brukman+llvm@gmail.com> Fixed indentation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7122 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
5b836c4a06c584544647d5b013b193510ac5ced5 20-Jun-2003 Chris Lattner <sabre@nondot.org> Minor cleanups


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6799 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
5ce1a585df6749b168be4bc9b719b1abdfc98207 18-Jun-2003 Brian Gaeke <gaeke@uiuc.edu> tools/llc/llc.cpp: Make "-o -" work.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6780 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
2e2f2dcd6af454a26838457dbfd61ceca7cef41b 18-Jun-2003 Brian Gaeke <gaeke@uiuc.edu> lib/Target/Sparc/Sparc.cpp:
Move LowerAllocations, PrintFunction, and SymbolStripping passes, and
the corresponding -disable-strip and -d options, over here to the SPARC
target-specific bits of llc. Rename -d to -dump-asm.

tools/llc/Makefile:
Reindent. Add x86 library so that llc compiles again.

tools/llc/llc.cpp:
Remove support for running arbitrary optimization passes. Use opt instead.
Remove LowerAllocations, PrintFunction, and SymbolStripping passes, as noted
above.
Allow user to select a backend (x86 or SPARC); default to guessing from
the endianness/pointer size of the input bytecode file.
Fix typos.
Delete empty .s file and exit with error status if target does not support
static compilation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6776 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
cccc28c6744c67be33833edd41caa0dbfda521bc 18-Jun-2003 Chris Lattner <sabre@nondot.org> Reindent code to match the rest of the file


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6772 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
5b4299c26d776fee322c8c7a5d44511f18366805 05-Jun-2003 Chris Lattner <sabre@nondot.org> Remove duplicate pass


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6631 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
68d9ed8b763d8200e860a58789b0596166bd978e 27-May-2003 Chris Lattner <sabre@nondot.org> Remove ugly hack (that I put in originally) for building in trace stuff
automatically in LLC


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6358 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
68492725a08ca3b356f24b90cdfc57a247abbeb3 28-Apr-2003 Chris Lattner <sabre@nondot.org> Add a new option to disable stripping of bytecode files


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5969 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
10daaa141661d96843f3d8ece0e5a4c2da4b6e87 26-Apr-2003 Chris Lattner <sabre@nondot.org> Remove two fields from TargetData which are target specific.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5963 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
bc19466912f4074bc0dc20d389fb1775a674dfd6 25-Apr-2003 Chris Lattner <sabre@nondot.org> Make sure to copy double alignment as well


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5936 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
b5881f126d4baab41dc7efb2824a53601ef167b0 25-Apr-2003 Chris Lattner <sabre@nondot.org> Kill using declarations


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5934 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
2b5f2c1a648895d4075f0f35c8a37bd485b9eab0 25-Apr-2003 Chris Lattner <sabre@nondot.org> Make sure to add a targetdata instance to the passmanager, and make it match the
one in use by the TargetMachine


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5931 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
c986392c30043c056608b06ddf2f10fdd35a8d5e 24-Apr-2003 Chris Lattner <sabre@nondot.org> Remove support for "target data" pass ctors


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5900 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
6ede045533d012ead03e8ce04a99d684cd3b0e31 14-Jan-2003 Chris Lattner <sabre@nondot.org> Rename header


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5283 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
c93489bf878070d3be5331177f7e4451a2c34841 28-Dec-2002 Chris Lattner <sabre@nondot.org> Eliminate direct access to TargetData structure


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5156 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
ab0aa7ff995bec9f8ef8f719139f51d4b967ba22 29-Oct-2002 Chris Lattner <sabre@nondot.org> * Privatize the TargetName


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4418 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
6334205cb5c626d2b35e42dd4c710b857bf0a126 29-Oct-2002 Chris Lattner <sabre@nondot.org> Allow TargetMachine to refuse static code gen


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4415 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
4aba5e34a10588ced9d9c068008e8b28016dfd62 29-Oct-2002 Chris Lattner <sabre@nondot.org> * Remove explicit strcmp calls
* Rename Sparc.h to TargetMachineImpls.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4406 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
1751b7ed27229d3fbcc48d6c42b05bf3beab36e5 26-Sep-2002 Chris Lattner <sabre@nondot.org> Change LowerAllocations pass to 'require' TargetData instead of it being
passed in.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3930 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
0f82df410caf8242406fa7e8bbd555e4854ffe48 19-Sep-2002 Chris Lattner <sabre@nondot.org> Indent a comment right, add a new one


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3819 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
7d0ba026401321be1645b4142abeb85e943d0577 16-Sep-2002 Vikram S. Adve <vadve@cs.uiuc.edu> Make all registered optimization passes available to llc.
Eliminate duplicate tracing options and use those defined by the trace passes.
Making the tracing step a module pass that runs before any llc-specific
passes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3753 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
655fb5c817cfaa1bd0cc0e0613e3105c59d60dad 14-Sep-2002 Misha Brukman <brukman+llvm@gmail.com> Function.h is unnecessary when Module.h is included.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3716 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
50e3a20b54be93fce84f70075730b8d38c0318d7 30-Jul-2002 Chris Lattner <sabre@nondot.org> Print the tool name when an error comes from so that I can tell which
tool of a pipeline is having issues.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3167 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
d9d8c07eea31a589e526ff84ce8a89857b7caa3f 24-Jul-2002 Chris Lattner <sabre@nondot.org> *** empty log message ***


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3040 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
5ff62e90d0bc321206023897edc1e2691cb0fbb6 22-Jul-2002 Chris Lattner <sabre@nondot.org> *** empty log message ***


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2985 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
c5fbf71d766b1b79931a0bb6a8d58c4fc8a9e259 30-Jun-2002 Chris Lattner <sabre@nondot.org> Strip the symbols out of the bytecode to inflate generated executables less.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2811 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
cf17bcc7e73cf9dc1c8c74dae50a6694fb124f0f 25-Jun-2002 Anand Shukla <ashukla@cs.uiuc.edu> Changes for 64bit gcc


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2799 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
7e70829632f82de15db187845666aaca6e04b792 25-Jun-2002 Chris Lattner <sabre@nondot.org> MEGAPATCH checkin.

For details, See: docs/2002-06-25-MegaPatchInfo.txt


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2779 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
39fd659d683592df13ccfa39f1825b1173a9ff04 20-May-2002 Chris Lattner <sabre@nondot.org> Fix tracing code support to link in the tracing routines if neccesary.
This is required because trace code can insert calls to functions that
are (now) in an LLVM library, not a native library.

This change makes it easier to use the tracing code because the native
link options don't have to change, and it fits in a lot better with the
LLVM model.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2675 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
65f1b895bb1c196409747c60373b2fbfbf5fe6b4 07-May-2002 Chris Lattner <sabre@nondot.org> Merge all include/llvm/Transforms/Scalar/* into a single Scalar.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2538 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
e23476a02796e660183fb215d2df2b185173cf50 30-Apr-2002 Chris Lattner <sabre@nondot.org> Remove unneccesary pass.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2421 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
c6f3ae5c66c8e0dab6a2bd9601d0e253ef9ba794 29-Apr-2002 Chris Lattner <sabre@nondot.org> Eliminate duplicate or unneccesary #include's


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2397 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
f57b845547302d24ecb6a9e79d7bc386f761a6c9 27-Apr-2002 Chris Lattner <sabre@nondot.org> * Rename MethodPass class to FunctionPass
- Rename runOnMethod to runOnFunction
* Transform getAnalysisUsageInfo into getAnalysisUsage
- Method is now const
- It now takes one AnalysisUsage object to fill in instead of 3 vectors
to fill in
- Pass's now specify which other passes they _preserve_ not which ones
they modify (be conservative!)
- A pass can specify that it preserves all analyses (because it never
modifies the underlying program)
* s/Method/Function/g in other random places as well


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2333 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
76d12299b5333d71bfc079614031f97c97aa5148 18-Apr-2002 Chris Lattner <sabre@nondot.org> Make sure that there is no case where a signal can occur leaving a partially
written output file. This is important because crashing testcases often write
part of a file out, and the testing harness decides the file is up-to-date next
time the test is run.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2303 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
02d6ef89768ff96bbfe0afdcc1fdfdc380e8de2f 09-Apr-2002 Chris Lattner <sabre@nondot.org> s/PrintMethodPass/PrintFunctionPass


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2182 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
2fbfdcffd3e0cf41422aaa6c526c37cb02b81341 07-Apr-2002 Chris Lattner <sabre@nondot.org> Change references to the Method class to be references to the Function
class. The Method class is obsolete (renamed) and all references to it
are being converted over to Function.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2144 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
d32e70a09f04abd2b9e3de864871f3218589b856 24-Mar-2002 Vikram S. Adve <vadve@cs.uiuc.edu> Rename pass to DecomposeMultiDimRefs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1960 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
4ddcd54751f10234be148b648f3986446ffafc54 26-Feb-2002 Chris Lattner <sabre@nondot.org> * Make all command line arguments static
* Change -trace & -tracem options to use a 3 values enum option
* Change to use new style interface to passes


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1813 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
e41576d14136e57e07fbc512a0092323a11c8d43 04-Feb-2002 Chris Lattner <sabre@nondot.org> * Remove -noasm option. If we're not compiling, what's the point?
* convert over to pass based target backend. Much cleaner now


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1665 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
c8896771951d0cc769b6b40b27bcb420685cf718 03-Feb-2002 Chris Lattner <sabre@nondot.org> Switch over to a model where we compile each method, emit assembly, then free
machineinstr memory before starting on the next method.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1659 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
cd50d3fafabec10c09f3ed0466924a951943d6d0 31-Jan-2002 Chris Lattner <sabre@nondot.org> PassManager is now in its own header file
MethodPass's now cannot be run on external methods


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1609 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
888912dbe01c715aa5a0ddec19da6ef12f382ebf 22-Jan-2002 Chris Lattner <sabre@nondot.org> In an amazing fit of stupidity, I flipped the conditional and didn't test
it right. Sheesh :)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1550 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
d7db863c1d03593bb633f67e76c6e9f8f0f40662 22-Jan-2002 Chris Lattner <sabre@nondot.org> Rename LowerAllocations.h to ChangeAllocations.h since it now contains the
RaiseAllocations pass as well.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1525 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
f4de63f65fa995e68e3cd268117ab065068be413 21-Jan-2002 Chris Lattner <sabre@nondot.org> Implement a more powerful, simpler, pass system. This pass system can figure
out how to run a collection of passes optimially given their behaviors and
charactaristics.

Convert code to use it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1507 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
697954c15da58bd8b186dbafdedd8b06db770201 20-Jan-2002 Chris Lattner <sabre@nondot.org> Changes to build successfully with GCC 3.02


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1503 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
cee8f9ae67104576b2028125b56e9ba4856a1d66 27-Nov-2001 Chris Lattner <sabre@nondot.org> Create a new #include "Support/..." directory structure to move things
from "llvm/Support/..." that are not llvm dependant.

Move files and fix #includes


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1400 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
d7477ee9d97f80fd5dac252dad4f1c1f83660115 18-Oct-2001 Chris Lattner <sabre@nondot.org> Remove unneccesary retcode var


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@905 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
2197d21c3bbe00488b8fc218992ab9fa30ea6fac 18-Oct-2001 Chris Lattner <sabre@nondot.org> Refactor Assembly/Bytecode writer code into Assembly & bytecode libraries


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@904 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
c2c9dd1718c2677450da5a0d012ff1dcfb1525a0 18-Oct-2001 Chris Lattner <sabre@nondot.org> Bytecode writer is yanked out of Module printer


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@899 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
712ac2b951ea563dec9d0fc33a469fade3fe832e 18-Oct-2001 Vikram S. Adve <vadve@cs.uiuc.edu> Move malloc/free lowering after tracing until lli supports
calls to external malloc/free functions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@893 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
c9a1de6d1b1a6700c6bb5f169e48c9ab337ae876 18-Oct-2001 Chris Lattner <sabre@nondot.org> Only output code if file open is successful


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@890 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
79a334968cfcaada7b476cf3fb16527b2800b33c 18-Oct-2001 Vikram S. Adve <vadve@cs.uiuc.edu> Trace code should always be exported just before code generation;
this is not a debugging option. But we can export it as assembly
instead of bytecode if -debugtrace is specified.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@889 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
685639df42c35b533b82c1a7f122532742eba311 18-Oct-2001 Chris Lattner <sabre@nondot.org> Convert to new simpler, more powerful pass structure


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@882 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
05e5e070ee73309025e11bea0c15d7fc9c25fea6 18-Oct-2001 Chris Lattner <sabre@nondot.org> Passes return true if they change something, not if they fail


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@869 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
2db4b72017a41017a5a7d412fa32b4fbaa5d210c 15-Oct-2001 Chris Lattner <sabre@nondot.org> ConcretePass should not be a templated class!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@838 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
25c12299307a640ff847ae4dfa58257d07e47230 15-Oct-2001 Chris Lattner <sabre@nondot.org> Minor cleanups


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@837 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
3524fc2197c17edcea786a9bb0e00246438dba90 15-Oct-2001 Chris Lattner <sabre@nondot.org> Use the new Pass infrastructure to clean up llc


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@835 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
90c5b3d753cef1f731dbb66f151da75af1f024b4 15-Oct-2001 Chris Lattner <sabre@nondot.org> Minor code cleanups


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@825 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
2f64f9f264d30dd0ac4880eb16ba9eeac538e94c 15-Oct-2001 Vikram S. Adve <vadve@cs.uiuc.edu> *** empty log message ***


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@811 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
b27c9e72d1112bbf266197042a02ccb011f7cf7e 13-Oct-2001 Chris Lattner <sabre@nondot.org> MethodTypes take an explicit isVarArg argument


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@782 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
b79757c621c83dc3f410aacdc6db7639f9e47c6e 04-Oct-2001 Chris Lattner <sabre@nondot.org> Add hack to get rid of malloc & free instructions for code generation


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@713 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
78f7e1a9cdc9a373c9a18598cd5e47ac5476bfe6 19-Sep-2001 Chris Lattner <sabre@nondot.org> Add proper support to send output to the right place


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@649 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
565046714ee5c11a9bbb564b19bc8eb69e458254 19-Sep-2001 Chris Lattner <sabre@nondot.org> Emit assembly language from the target...


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@640 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
da784ee81f082781fb61258546fec7c82ba6a8f0 18-Sep-2001 Chris Lattner <sabre@nondot.org> C++ gives us auto_ptr's, so we might as well use them. :)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@629 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
805eb96727fc07c4b599528f91370841d722bffa 18-Sep-2001 Vikram S. Adve <vadve@cs.uiuc.edu> Minor changes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@622 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
b26bcc5087029ffe8037ed9036ff74430c6054cf 14-Sep-2001 Chris Lattner <sabre@nondot.org> Make a new llvm/Target #include directory.
Move files from lib/CodeGen/TargetMachine to lib/Target
Move TargetData.h and TargetMachine.h to Target/{Data.h|Machine.h}
Prepare to split TargetMachine.h into several smaller files


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@566 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
f6e0e2813526b4ebea473427ea5ffd88bb1559ac 14-Sep-2001 Chris Lattner <sabre@nondot.org> Checkin changes to:
1. Clean up the TargetMachine structure. No more wierd pointers that have to
be cast around and taken care of by the target.
2. Instruction Scheduling now takes the schedinfo as an argument. The same
should be done with the instinfo, it just isn't now.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@565 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
0e6530ee1b2641060736e161425e759c051a3544 14-Sep-2001 Chris Lattner <sabre@nondot.org> This checkin represents some cleanup of the backend, implementing the following things:

1. The TargetMachine structure is free to decide the process a particular target uses to generate code.
2. All of the gooee details of the sparc backend are now localized in the lib/CodeGen/TargetMAchine/Sparc directory. The Sparc.h file that is globally visible is just a stub.
3. The Sparc.h file that esxists now will dissapear entirely someday when we have multiple backends chosen by a factory of some sort.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@559 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
e737c7ac63f1e4359c508601d5be60f7551b076d 08-Sep-2001 Chris Lattner <sabre@nondot.org> Convert llc driver to standard tool format


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@496 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
46ac43c1bbdf010507f61750368297889ac1b6c6 07-Sep-2001 Chris Lattner <sabre@nondot.org> Clean up driver


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@492 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
14335835f1b9b7947085fdeee96ff82b574f5f67 29-Aug-2001 Vikram S. Adve <vadve@cs.uiuc.edu> Add calls to NormalizeMethod() and to ScheduleInstructionsWithSSA().


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@404 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
1e78f36127fb0e405d2cf893e2ce3381300a667b 23-Jul-2001 Chris Lattner <sabre@nondot.org> CommandLine library cleanup. No longer use getValue/setValue, instead, just treat the commandline
args as the objects they represent and the "right thing" will happen


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@283 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
57dbb3ad63b6a0e77798edb156ef43daa3bfc67e 23-Jul-2001 Chris Lattner <sabre@nondot.org> Moved inline/llvm/Tools/* to include/llvm/Support/*


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@279 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
6c5a32d545f65623fcbb69937406f80e0715931a 23-Jul-2001 Chris Lattner <sabre@nondot.org> Removal of the redundant CompileContext wrapper


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@274 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
8f367bd3c0f56b7b318c46cee04f77735f617777 23-Jul-2001 Chris Lattner <sabre@nondot.org> Large scale changes to implement new command line argument facility


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@272 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
aceb9132b7c0f2b22a2e51d523d0bd46f2cb3817 22-Jul-2001 Chris Lattner <sabre@nondot.org> Privatize LLCOptions. It had no business being visible to the entire
program.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@267 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
7e583cfafeb07713e5ceadcfe28b70111a528d97 21-Jul-2001 Chris Lattner <sabre@nondot.org> Renamed include/llvm/Codegen to include/llvm/CodeGen


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@253 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp
cb465fc71ecb64d3d168a0cf754fa442abb0f6f9 21-Jul-2001 Vikram S. Adve <vadve@cs.uiuc.edu> Driver and options for the llc compiler.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@234 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llc/llc.cpp