Commit Graph

1400 Commits

Author SHA1 Message Date
Chris Lattner 572e78c2f9 After telling GCC to type of the input file with -x asm/-x c, switch back to
-x none, to not foul up autodetection of .a file or .dylibs.

llvm-svn: 28741
2006-06-09 21:31:53 +00:00
Chris Lattner c944417749 This no longer needs plugins, this it doesn't need all of VMCore.
llvm-svn: 28723
2006-06-08 00:25:44 +00:00
Reid Spencer ed95105b45 Shorten a value description so --help out isn't so wide.
llvm-svn: 28721
2006-06-07 23:07:51 +00:00
Reid Spencer c1588f624c Make sure this tool links in all of libVMCore.a because it can --load
shared objects.

llvm-svn: 28720
2006-06-07 23:06:50 +00:00
Reid Spencer 5113dc5cfe 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.

llvm-svn: 28719
2006-06-07 23:03:13 +00:00
Chris Lattner 3273056546 Remove useless noop argument
llvm-svn: 28706
2006-06-07 00:43:18 +00:00
Chris Lattner 64064c2157 Fix a bug in the following scenario.
1. llvm is built with objroot = OBJ and installed.
2. OBJ is deleted or install tree is shipped.
3. llvm-config is run.

In this scenario, llvm-config shouldn't emit an error message at #3, it
should just know it's not running in the objdir :)

llvm-svn: 28704
2006-06-06 23:54:15 +00:00
Chris Lattner 330d4d006a Add a new --libfiles option, for getting fully-qualified pathnames to libraries.
This can be used for tools that want makefile rules to depend on the libraries
(e.g. so the tool is relinked when a library changes).

llvm-svn: 28701
2006-06-06 22:38:29 +00:00
Chris Lattner ffac286737 Move ToolRunner.(cpp|h) into the bugpoint directory
llvm-svn: 28699
2006-06-06 22:30:59 +00:00
Chris Lattner 54a417be00 Make the llvm-config library dependency database depend on all of the libraries.
llvm-svn: 28695
2006-06-06 17:43:03 +00:00
Reid Spencer c3065b7d3f Add the -Xlinker option to bugpoint which allows an option to be passed
through to gcc when its being used as a linker. This allows -L and -l
(and any other) options to be added so that non-complete bytecode files
can be processed with bugpoint. The -Xlinker option can be added as many
times as needed.

llvm-svn: 28692
2006-06-06 00:00:42 +00:00
Chris Lattner 78e03500ed temporarily add back this option, I will remove it in a couple days
llvm-svn: 28675
2006-06-02 23:43:27 +00:00
Chris Lattner e2e2492d8a Fix a -pedantic warning
llvm-svn: 28670
2006-06-02 22:11:06 +00:00
Chris Lattner dfa9b5aa68 Add flags to get access to build_mode, objdir, srcdir etc.
If installed, ignore the prefix the tree is configured with: always use the
prefix that llvm-config is currently at, which may be different if the tree
was moved.

llvm-svn: 28669
2006-06-02 22:03:50 +00:00
Chris Lattner c04e4c13cc Make llvm-config "do the right thing" when an install tree is relocated or
when run out of a build directory.

llvm-svn: 28668
2006-06-02 21:48:10 +00:00
Chris Lattner 753a92bdb7 Capture the build mode (e.g. Debug/Release) in the llvm-config script.
llvm-svn: 28665
2006-06-02 19:13:29 +00:00
Chris Lattner 076f7336d4 Convert to standard file header
llvm-svn: 28663
2006-06-02 18:58:21 +00:00
Chris Lattner 0c32b9666d Remove a couple of things no longer figured out by autoconf
llvm-svn: 28662
2006-06-02 18:55:36 +00:00
Reid Spencer ecdecdb2ee Add several more autoconf variables so that new features can be implemented
by our illustrious project leader.

llvm-svn: 28659
2006-06-02 18:31:41 +00:00
Chris Lattner 40c5cf2d75 Add a gross "--use-current-dir-as-prefix" option as a temporary workaround
for the "build with one prefix and move the installed files to another dir"
problem.

llvm-svn: 28654
2006-06-02 01:23:18 +00:00
Chris Lattner c3e42bb0cf Remove some variables from the configured section that aren't.
llvm-svn: 28653
2006-06-02 01:04:35 +00:00
Chris Lattner 2f9bea15f0 Remove more "alpha is archive" stuff.
llvm-svn: 28652
2006-06-02 00:56:15 +00:00
Reid Spencer aa1b11cdc3 Suppress -pedantic warnings about print("%a")
llvm-svn: 28650
2006-06-02 00:39:08 +00:00
Chris Lattner 323906e028 Remove obsolete CORE_IS_ARCHIVE support
llvm-svn: 28649
2006-06-02 00:30:31 +00:00
Chris Lattner 194819bd90 Update the ignore file
llvm-svn: 28647
2006-06-02 00:23:15 +00:00
Reid Spencer b83051a28f Teach CppWriter how to emit an inline (partial) function.
llvm-svn: 28645
2006-06-01 23:43:47 +00:00
Reid Spencer 3364e527bc Restore default arguments for llvm2cpp back to health by declaring an
emitted variable to actually have a type (picky, picky, picky!)

llvm-svn: 28625
2006-06-01 07:24:29 +00:00
Reid Spencer 83f6d05c08 Fix a bug where incorrect C++ was being emitted.
llvm-svn: 28615
2006-06-01 04:21:20 +00:00
Reid Spencer 08f1030658 Build llvm-config into the ToolDir not in the local directory. This makes
it more likely to be in a developer's path and consistent with all the
other tools.

llvm-svn: 28613
2006-06-01 01:52:49 +00:00
Reid Spencer 7fa8f334bf Oops, llc needs libTarget.a not Target.o
llvm-svn: 28611
2006-06-01 01:42:33 +00:00
Reid Spencer a647c7ff42 Use archive libraries instead of object files for VMCore, BCReader,
BCWriter, and bzip2 libraries. Adjust the various makefiles to accommodate
these changes. This was done to speed up link times.

llvm-svn: 28610
2006-06-01 01:30:27 +00:00
Andrew Lenharth 53250e7fcb fix utostr
llvm-svn: 28597
2006-05-31 20:18:56 +00:00
Reid Spencer de2daad0ac Major reorganization and extension of the code. The diff on this will be a
mess as functions were moved around into a better ordering. The code was
extended to provide various -gen-* options to better control what the
generated output should be. Currently it is possible to generate entire
modules (three different ways), functions, global variables, and types.

llvm-svn: 28589
2006-05-31 17:31:38 +00:00
Reid Spencer 03977ec9b1 Don't generate module definitions when the -fragment option is given.
llvm-svn: 28583
2006-05-31 04:43:19 +00:00
Reid Spencer c3b9370754 llvm2cpp is ready to be compiled so add it to the makefile, but make it
optional.

llvm-svn: 28570
2006-05-30 21:20:55 +00:00
Reid Spencer 30945ca559 Fix more bugs. This version now passes all of the Feature test except for
a floating point conversion problem with NAN in intrinsics.ll. llvm2cpp
makes an attempt to provide the correct conversion, based on the
implementation in the CBackend writer, but it doesn't get NAN correct.

llvm-svn: 28568
2006-05-30 21:18:23 +00:00
Reid Spencer 37cf1765ed Fix many small bugs in llvm2cpp. This patch gets llvm2cpp working with
everything except PHI nodes and one odd recurse/opaque type situation.
PHI nodes forward reference INSTRUCTIONS (aaaaaaaahhhhhhh!) :)

llvm-svn: 28554
2006-05-30 10:21:41 +00:00
Reid Spencer c267698f23 First complete version of llvm2cpp that doesn't crash on any of the Feature
tests. The output in a few cases still doesn't compile, however.

llvm-svn: 28547
2006-05-30 03:43:49 +00:00
Chris Lattner d65928994a Silly cleanup
llvm-svn: 28544
2006-05-29 18:52:52 +00:00
Chris Lattner dc0b3afcdd silly cleanup
llvm-svn: 28543
2006-05-29 18:52:05 +00:00
Reid Spencer c194e7e843 Next batch of implementation:
1. Get rid of old AsmWriter cruft that's not needed.
2. Implement several instructions. Enough to get by globalvars.ll and
   alignment.ll in the Feature test suite.
3. Handle constants properly (don't repeat definitions).
4. Make the output compatible with llvm-dis for diff purposes.

llvm-svn: 28541
2006-05-29 18:08:06 +00:00
Reid Spencer 4967fa722d Fix file header comment.
llvm-svn: 28540
2006-05-29 18:06:28 +00:00
Reid Spencer fe361813aa Remove temporary testing rules.
llvm-svn: 28539
2006-05-29 18:05:59 +00:00
Reid Spencer 84f1a3e639 Fix two bugs in the CppWriter.cpp:
1. Return the module from the MakeModule function so it can be verified.
2. Make sure types get generated with their names

llvm-svn: 28536
2006-05-29 02:58:15 +00:00
Reid Spencer 7af13d73f7 Fix the file's comment block.
llvm-svn: 28535
2006-05-29 02:35:29 +00:00
Reid Spencer 58d5dce11d Initial Commit of llvm2cpp
This is a safekeeping commit. The program is not finished. It currently
handles modules, types, global variables and function declarations. Blocks
and instructions remain to be done.

llvm-svn: 28528
2006-05-29 00:57:22 +00:00
Reid Spencer 6e64180f03 For PR786:
Minor tweaks in public headers and a few .cpp files so that LLVM can build
successfully with -pedantic and projects using LLVM with -pedantic don't
get warnings from LLVM. There's still more -pedantic warnings to fix.

llvm-svn: 28453
2006-05-24 19:21:13 +00:00
Chris Lattner aa2372562e Patches to make the LLVM sources more -pedantic clean. Patch provided
by Anton Korobeynikov!  This is a step towards closing PR786.

llvm-svn: 28447
2006-05-24 17:04:05 +00:00
Reid Spencer 1df84eb2d1 Remove the llvm-db and bugpoint restrictions from the win32 platform so
they can be compiled with ming32. The use of fork(2) has been removed.

llvm-svn: 28369
2006-05-17 21:20:50 +00:00
Rafael Espindola ffdc24b847 added a skeleton of the ARM backend
llvm-svn: 28301
2006-05-14 22:18:28 +00:00