Chris Lattner
ab08df9699
Pass -export-dynamic to gcc when compiling with -native and the link is
...
performed with -export-dynamic (aka. -disable-internalize).
Patch by Nicholas Riley!
llvm-svn: 22601
2005-08-02 22:07:38 +00:00
Chris Lattner
beb01faea3
When the user hits ctrl-c, bugpoint should attempt to stop reduction as
...
quickly as possible and output what it has so far. If they hit it twice,
bugpoint is killed.
llvm-svn: 22579
2005-08-02 02:16:17 +00:00
Jeff Cohen
546fd5944e
Keep tabs and trailing spaces out.
...
llvm-svn: 22565
2005-07-30 18:33:25 +00:00
Reid Spencer
87c5a8a48a
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.
llvm-svn: 22534
2005-07-28 04:00:49 +00:00
Reid Spencer
8e3830dae7
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.
llvm-svn: 22532
2005-07-28 02:25:30 +00:00
Jeff Cohen
5f4ef3c5a8
Eliminate all remaining tabs and trailing spaces.
...
llvm-svn: 22523
2005-07-27 06:12:32 +00:00
Chris Lattner
986675cb75
Fix PR576.
...
Instead of emitting a JIT stub that looks like this:
internal void %l1_main_entry_2E_ce_wrapper(int) {
header:
%resolver = call sbyte* %getPointerToNamedFunction( sbyte* getelementptr ([20 x sbyte]* %l1_main_entry_2E_ce_name, int 0, int 0) ) ; <sbyte*> [#uses=1]
%resolverCast = cast sbyte* %resolver to void (int)* ; <void (int)*> [#uses=1]
call void %resolverCast( int %0 )
ret void
}
Emit one that looks like this:
internal void %l1_main_entry_2E_ce_wrapper(int) {
Entry:
%fpcache = load void (int)** %l1_main_entry_2E_ce.fpcache ; <void (int)*> [#uses=2]
%isNull = seteq void (int)* %fpcache, null ; <bool> [#uses=1]
br bool %isNull, label %lookupfp, label %usecache
usecache: ; preds = %lookupfp, %Entry
%fp = phi void (int)* [ %resolverCast, %lookupfp ], [ %fpcache, %Entry ] ; <void (int)*> [#uses=1]
call void %fp( int %0 )
ret void
lookupfp: ; preds = %Entry
%resolver = call sbyte* %getPointerToNamedFunction( sbyte* getelementptr ([20 x sbyte]* %l1_main_entry_2E_ce_name, int 0, int 0) ) ; <sbyte*> [#uses=1]
%resolverCast = cast sbyte* %resolver to void (int)* ; <void (int)*> [#uses=2]
store void (int)* %resolverCast, void (int)** %l1_main_entry_2E_ce.fpcache
br label %usecache
}
This makes the JIT debugger *MUCH* faster on large programs, as
getPointerToNamedFunction takes time linear with the size of the program, and
before we would call it every time a function in the text module was called from
the safe module (ouch!).
llvm-svn: 22387
2005-07-12 01:00:32 +00:00
Reid Spencer
03f6f7a537
Make sure we don't error out if an invalid path is used, just simply
...
exit from isBytecodeLPath with "false".
llvm-svn: 22360
2005-07-08 16:48:52 +00:00
Reid Spencer
af48d8643d
Final Changes For PR495:
...
This chagne just renames some sys::Path methods to ensure they are not
misused. The Path documentation now divides methods into two dimensions:
Path/Disk and accessor/mutator. Path accessors and mutators only operate
on the Path object itself without making any disk accesses. Disk accessors
and mutators will also access or modify the file system. Because of the
potentially destructive nature of disk mutators, it was decided that all
such methods should end in the work "Disk" to ensure the user recognizes
that the change will occur on the file system. This patch makes that
change. The method name changes are:
makeReadable -> makeReadableOnDisk
makeWriteable -> makeWriteableOnDisk
makeExecutable -> makeExecutableOnDisk
setStatusInfo -> setStatusInfoOnDisk
createDirectory -> createDirectoryOnDisk
createFile -> createFileOnDisk
createTemporaryFile -> createTemporaryFileOnDisk
destroy -> eraseFromDisk
rename -> renamePathOnDisk
These changes pass the Linux Deja Gnu tests.
llvm-svn: 22354
2005-07-08 03:08:58 +00:00
Reid Spencer
c9c0473fa5
For PR495:
...
Get rid of the difference between file paths and directory paths. The Path
class now simply stores a path that can refer to either a file or a
directory. This required various changes in the implementation and interface
of the class with the corresponding impact to its users. Doxygen comments were
also updated to reflect these changes. Interface changes are:
appendDirectory -> appendComponent
appendFile -> appendComponent
elideDirectory -> eraseComponent
elideFile -> eraseComponent
elideSuffix -> eraseSuffix
renameFile -> rename
setDirectory -> set
setFile -> set
Changes pass Dejagnu and llvm-test/SingleSource tests.
llvm-svn: 22349
2005-07-07 23:21:43 +00:00
Reid Spencer
5b891e9847
For PR495:
...
Change interface to Path class:
readable -> canRead
writable -> canWrite
executable -> canExecute
More (incremental) changes coming to close 495.
llvm-svn: 22345
2005-07-07 18:21:42 +00:00
Chris Lattner
06fcc4cb75
add a new -filetype argument to llc.
...
llvm-svn: 22287
2005-06-25 03:32:05 +00:00
Chris Lattner
09b0eb387a
minor cleanups, use copy ctor instead of manually doing it.
...
llvm-svn: 22285
2005-06-25 03:00:34 +00:00
Chris Lattner
6a7b48e747
refactor this interface
...
llvm-svn: 22284
2005-06-25 02:50:35 +00:00
Andrew Lenharth
ea9af931b8
make SparcV8 and V9 seperately configurable
...
llvm-svn: 22204
2005-06-08 22:32:51 +00:00
Reid Spencer
b19f7a3c22
Make sure that tool names don't have any leading or trailing spaces in them.
...
If they do, it screws up the concatenation of the .exe suffix on cygwin.
llvm-svn: 22142
2005-05-19 21:10:31 +00:00
Reid Spencer
98a2d980ee
Make sure that tool names don't have any leading or trailing spaces in them.
...
If they do, it screws up the concatenation of the .exe suffix on cygwin.
llvm-svn: 22141
2005-05-19 21:03:11 +00:00
Reid Spencer
e4925ca229
For PR514:
...
* Make sure the "etcdir" gets checked for configuration files so that
the installed location for config files is checked.
* Remove the st.in file (moved to projects/Stacker/tools/stkrc)
llvm-svn: 22135
2005-05-19 01:06:46 +00:00
Reid Spencer
e9bee08f1d
For PR514:
...
* language specification files are no longer configured with "configure"
* add substitutions for %bindir%, %libdir%, and various llvmgcc related
variables needed in the c and cpp spec files.
* Implement the stubstituions in the Compiler Driver.
* Move st.in to projects/Stacker/tools/stkrc where it belongs.
llvm-svn: 22128
2005-05-19 00:52:28 +00:00
Chris Lattner
257008beff
If loopextract breaks the program provide output so that we can repro the
...
problem.
llvm-svn: 21790
2005-05-08 21:54:56 +00:00
Chris Lattner
041f8b59c1
Move licm after reassociate, add some cond-propagate passes
...
llvm-svn: 21769
2005-05-07 22:45:35 +00:00
Misha Brukman
3f670d29dc
* Use consistent spacing for function arguments
...
* Output single-character strings as chars
llvm-svn: 21705
2005-05-05 22:38:21 +00:00
Misha Brukman
23e9f163ad
Minor clean-ups
...
llvm-svn: 21678
2005-05-03 20:30:34 +00:00
Misha Brukman
d317d937b2
Clean up and correct llvmc configurations for C and C++
...
llvm-svn: 21667
2005-05-03 06:13:18 +00:00
Misha Brukman
18aa1d6438
std::string(NULL) does not a proper constructor make
...
llvm-svn: 21666
2005-05-03 06:10:51 +00:00
Misha Brukman
cc42755633
Omit periods at the end of command-line switch explanations for consistency
...
llvm-svn: 21664
2005-05-03 05:36:14 +00:00
Reid Spencer
a21f83f809
Add the simplify-libcalls pass.
...
llvm-svn: 21585
2005-04-27 02:22:47 +00:00
Misha Brukman
6818b33096
extract has been renamed to llvm-extract to avoid conflicting with another tool
...
llvm-svn: 21501
2005-04-24 17:46:58 +00:00
Misha Brukman
ca1e0c6ae0
There are still uses for spaces in Makefiles -- to make text line up together,
...
regardless of the tab size/stop settings on the developer side
llvm-svn: 21499
2005-04-24 17:43:41 +00:00
Misha Brukman
e22594f3d7
extract has been renamed to llvm-extract to avoid conflicting with another tool
...
llvm-svn: 21498
2005-04-24 17:36:05 +00:00
Reid Spencer
7fa89cfc9b
Make the CBackend actually get included in llc by using USEDLIBS instead of
...
USEDLIB as the variable to which "CBackend" is appended. The surrounding
if clause is safe because currently the configure script ensures that the
CBackend target is always added to TARGETS_TO_BUILD. By using a non-hard
coded construct in the makefile, we gain uniformity and the ability to
change the default set of targets by only changing the configure script.
llvm-svn: 21474
2005-04-23 17:24:33 +00:00
Chris Lattner
01c81ab706
Always enable the C backend. This fixes a *vast* number of failures on the
...
testers last night, as llc was not getting the cbe linked in.
llvm-svn: 21468
2005-04-23 14:36:22 +00:00
Reid Spencer
948f453254
Don't always build CBackend and Skeleton. Make use of the TARGETS_TO_BUILD
...
parameter instead which will correctly list the set of targets to be built.
llvm-svn: 21451
2005-04-22 17:32:05 +00:00
Reid Spencer
e4481c7c82
Implement the --enable-targets= feature of the configure script. The make
...
variable TARGETS_TO_BUILD is used to determine which targets in lib/Target
are built and which libraries are linked into llc. This effectively
implements the feature. One item remains: disabling targets in the dejagnu
test suite.
llvm-svn: 21450
2005-04-22 17:20:11 +00:00
Reid Spencer
ce9612b23c
Two changes:
...
1. Get rid of TOOLLINKOPTS as it is a hold over from llvm-test and only
used to communicate additional libraries to the linker. The *standard*
way to do that is with the LIBS variable which this change supports.
2. Allow the TARGETS_TO_BUILD variable to be set from the configuration
substitution. This is the result of the --enable-target= parameter to
the configure script.
llvm-svn: 21449
2005-04-22 17:14:14 +00:00
Jeff Cohen
88e7b7288a
Eliminate tabs and trailing spaces
...
llvm-svn: 21441
2005-04-22 04:13:13 +00:00
Misha Brukman
650ba8eb56
Remove trailing whitespace
...
llvm-svn: 21428
2005-04-22 00:00:37 +00:00
Misha Brukman
ee6770f1a3
#include system headers after all LLVM headers
...
llvm-svn: 21374
2005-04-20 04:51:29 +00:00
Misha Brukman
17092bd0a4
Eliminate trailing spaces at end-of-line
...
llvm-svn: 21372
2005-04-20 04:08:35 +00:00
Misha Brukman
3f4fe46796
Consistently eschew space between `*' or `&' and function argument name
...
llvm-svn: 21371
2005-04-20 04:07:47 +00:00
Misha Brukman
64a8c3ed91
* Print commands as we execute them with `-v'
...
* Add option `-save-temps'
Patch contributed by Markus Oberhumer.
llvm-svn: 21367
2005-04-20 03:22:18 +00:00
Reid Spencer
7a763bfbc5
Ensure that the arguments passed to sys::Program::ExecuteAndWait include
...
the program name as the first argument. Thanks go to Markus Oberhumer for
noticing this problem.
llvm-svn: 21220
2005-04-11 05:48:04 +00:00
Chris Lattner
672fe7267b
The first argument to ExecuteAndWait should be the program name, but pointed
...
out by Markus F.X.J. Oberhumer.
llvm-svn: 21211
2005-04-10 20:59:38 +00:00
Chris Lattner
2c95fac918
there is no reason to run -instcombine -instcombine!
...
llvm-svn: 20915
2005-03-29 06:25:11 +00:00
Alkis Evlogimenos
9ead0d7b4c
Rename createPromoteMemoryToRegister() to
...
createPromoteMemoryToRegisterPass() to be consistent with other pass
creation functions.
llvm-svn: 20885
2005-03-28 02:01:12 +00:00
Chris Lattner
206f2ecaf2
statically link ia64 into llc
...
llvm-svn: 20656
2005-03-17 18:39:06 +00:00
Chris Lattner
7b9020a059
Fix the missing symbols problem Bill was hitting. Patch contributed by
...
Bill Wendling!!
llvm-svn: 20649
2005-03-17 15:38:16 +00:00
Chris Lattner
0bda00642f
method renamed
...
llvm-svn: 20616
2005-03-15 15:48:22 +00:00
Chris Lattner
22b216a59e
Replace more a*'s with arg_*'s, thanks to Gabor Greif!
...
llvm-svn: 20615
2005-03-15 15:48:06 +00:00
Alkis Evlogimenos
a67bafa568
Use arg_iterator and arg_begin and arg_end functions.
...
llvm-svn: 20608
2005-03-15 07:02:26 +00:00
Chris Lattner
a9beaacac6
move the reassociation pass after the LICM pass. This speeds up mgrid
...
from 10.27s to 9.57s with the CBE.
llvm-svn: 20508
2005-03-07 03:19:50 +00:00
Reid Spencer
9947c42037
Changes to enable creation of native executables directly from gccld and to
...
ensure that -L paths don't contain both bytecode and native libraries.
This patch contributed by Adam Treat.
llvm-svn: 20370
2005-02-28 08:45:35 +00:00
Chris Lattner
0ce80cd542
Fix spelling, patch contributed by Gabor Greif!
...
llvm-svn: 20343
2005-02-27 06:18:25 +00:00
Reid Spencer
e447fce542
Use DataInstall macro instead of INSTALL.
...
llvm-svn: 20322
2005-02-24 21:43:43 +00:00
Chris Lattner
5e166a5f3e
Fix a bugpoint crash that JeffC noticed, looking like this:
...
*** Attempting to perform final cleanups: Final cleanups failed. Sorry. :( Ple
ase report a bug!
<llc>llc.exe: bytecode didn't read correctly.
llc.exe: bytecode didn't read correctly.
<crash>
Assertion failed: M && "You can't write a null module!!", file c:\llvm\lib\bytec
ode\writer\writer.cpp, line 1094
The fact that llc bombed (in this case) is ok, but bugpoint shouldn't crash after this.
llvm-svn: 20285
2005-02-23 06:12:11 +00:00
Reid Spencer
63eb0aa52a
Adjust the help output so that it will fit cleanly within 80 columns.
...
llvm-svn: 20239
2005-02-18 20:00:05 +00:00
Jeff Cohen
81d26d168d
Get bugpoint compiling with VC++ again, not that it works anyway.
...
llvm-svn: 20211
2005-02-16 05:05:31 +00:00
Andrew Lenharth
5f7c53599e
add Alpha to llc
...
llvm-svn: 20198
2005-02-15 21:14:09 +00:00
Chris Lattner
9db0eccc42
Conform to the documented interface by null terminating argument lists!
...
llvm-svn: 20167
2005-02-13 23:10:45 +00:00
Chris Lattner
61a31c9fe2
Make sure to null terminate argument lists!
...
llvm-svn: 20166
2005-02-13 23:02:34 +00:00
Chris Lattner
6983f5d2ed
Print the module, not the pointer.
...
llvm-svn: 20156
2005-02-13 19:12:31 +00:00
Reid Spencer
9f219c79aa
Fix PR506:
...
* Use error returned from Archive::OpenAndLoad
* Make sure only std::string is thrown so it gets caught and printed.
llvm-svn: 20147
2005-02-13 07:34:17 +00:00
Chris Lattner
0174b52dd9
clean up comments
...
llvm-svn: 19920
2005-01-29 17:29:05 +00:00
Chris Lattner
e89f022ba7
This has been deprecated for long enough, nuke it.
...
llvm-svn: 19919
2005-01-29 17:27:26 +00:00
Chris Lattner
ece10a420e
Add support for fp tolerances
...
llvm-svn: 19774
2005-01-23 03:45:26 +00:00
Chris Lattner
411bbeeac7
Adjust to changed interface.
...
llvm-svn: 19772
2005-01-23 03:31:39 +00:00
Jeff Cohen
ff696def84
oops
...
llvm-svn: 19752
2005-01-22 17:37:13 +00:00
Jeff Cohen
c8f1f4bc8e
Use binary mode for reading/writing bytecode files
...
llvm-svn: 19751
2005-01-22 17:36:17 +00:00
Jeff Cohen
142b4a721f
Fix VC++ complaint
...
llvm-svn: 19747
2005-01-22 16:30:58 +00:00
Reid Spencer
642de64ef9
sysconfdir -> PROJ_etcdir
...
llvm-svn: 19623
2005-01-17 00:42:31 +00:00
Reid Spencer
0e48bf8a19
Rename BUILD_* to PROJ_*
...
llvm-svn: 19592
2005-01-16 02:21:29 +00:00
Chris Lattner
ea2fa46f53
Improve output precision.
...
llvm-svn: 19564
2005-01-15 00:07:19 +00:00
Chris Lattner
1ef74d6135
X86 BE requires SelectionDAG
...
llvm-svn: 19337
2005-01-07 07:51:25 +00:00
Jeff Cohen
72f8f4cc3d
Get the #ifdef right on LinkAllPasses.h.
...
llvm-svn: 19310
2005-01-06 07:01:08 +00:00
Jeff Cohen
13932fb27f
Fix minor mistakes
...
llvm-svn: 19309
2005-01-06 06:29:42 +00:00
Jeff Cohen
00d5508496
Add project opt to Visual Studio.
...
llvm-svn: 19307
2005-01-06 06:02:53 +00:00
Reid Spencer
1fbccbe786
Make opt honor the quiet option when printing the bytecode warning.
...
llvm-svn: 19294
2005-01-05 17:31:55 +00:00
Reid Spencer
742af2f2eb
Prevent output of bytecode to std::cout unless the --force flag is given.
...
This prevents bytecode splats with usage like: cat file.ll | llvm-as -
llvm-svn: 19239
2005-01-02 00:08:46 +00:00
Reid Spencer
c967184a50
Move the code for printing out a warning about bytecode output to a console
...
into lib/Support so it can be used with other tools.
llvm-svn: 19238
2005-01-01 23:57:01 +00:00
Jeff Cohen
ca7d19e2af
Fix typo 'ompress' => 'compress'.
...
llvm-svn: 19232
2005-01-01 22:10:32 +00:00
Reid Spencer
948499e820
Correct the conditional test for non-portable tools so that it will
...
correctly omit them for non-Unix operating systems.
llvm-svn: 19206
2004-12-31 22:56:14 +00:00
Reid Spencer
e97198a38e
Fix the help documentation to not imply multiple archive files can be
...
processed.
llvm-svn: 19193
2004-12-30 17:51:57 +00:00
Reid Spencer
996ec72d48
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.
llvm-svn: 19192
2004-12-30 05:36:08 +00:00
Reid Spencer
a079b69981
For PR351:
...
* sys::PreventCoreFiles -> sys::Process::PreventCoreFiles
llvm-svn: 19162
2004-12-27 06:18:02 +00:00
Brian Gaeke
737d3e8794
Fix the build on PowerPC/Darwin - it thought we were declaring a new
...
function or something. Since FileRemover takes a const reference to
sys::Path, we need to pass an actual sys::Path variable.
llvm-svn: 19111
2004-12-22 22:33:33 +00:00
Reid Spencer
d94c5f8cc9
Correct compilation for Cygwin. FindExecutable now returns a sys::Path.
...
llvm-svn: 19109
2004-12-22 13:50:17 +00:00
Reid Spencer
e2b14e52c7
Support the gas option --traditional-format which, for some reason, gets
...
passed to gccas when the --program-prefix option is used to configure CFE.
llvm-svn: 19091
2004-12-22 02:58:43 +00:00
Misha Brukman
8295ac7098
Fix the Win32 build
...
llvm-svn: 19088
2004-12-22 01:37:33 +00:00
Reid Spencer
fc195422a5
Make parameters to CopyFile use explicit instantiation of sys::Path.
...
llvm-svn: 19086
2004-12-22 01:26:48 +00:00
Reid Spencer
4acff4056f
Use explicit construction of sys::Path from std::string because the
...
constructor is "explicit".
llvm-svn: 19078
2004-12-21 03:24:02 +00:00
Reid Spencer
08b4bd7496
Allow compilers that can't distinguish between a class instantiation and
...
the declaration of a function to compile this.
llvm-svn: 19073
2004-12-20 19:16:12 +00:00
Misha Brukman
db1fca91af
llvm/Config/unistd.h has gone away, far, far away
...
llvm-svn: 19068
2004-12-20 05:36:57 +00:00
Reid Spencer
a2ff4f4634
Incorporate the contents of include/llvm/Config/unistd.h as this is the
...
last file in LLVM to require the header. After ths commmit, our unistd.h
will go away.
llvm-svn: 19065
2004-12-20 04:34:36 +00:00
Brian Gaeke
fe4e48e14b
Use Config/alloca.h instead of alloca.h - pointed out by Duraid and Misha
...
llvm-svn: 19059
2004-12-20 04:02:01 +00:00
Brian Gaeke
cb1b1e74eb
Make this compile on Solaris.
...
llvm-svn: 19047
2004-12-19 21:08:07 +00:00
Reid Spencer
766ad0b77f
For PR351:
...
* Support changes in sys::Program::ExecuteAndWait interface
llvm-svn: 19044
2004-12-19 18:00:56 +00:00
Reid Spencer
5ababc6f33
sys::CopyFile returns void and throws an exception on error which will be
...
caught by llvm-ld's main function.
llvm-svn: 19030
2004-12-18 06:54:21 +00:00
Reid Spencer
8b086e3871
sys::CopyString throws an exception on error which will be caught by gccld
...
main function.
llvm-svn: 19029
2004-12-18 06:53:10 +00:00
Reid Spencer
16ce83c3a6
The CopyFile function got moved into the sys namespace.
...
llvm-svn: 19026
2004-12-18 00:19:32 +00:00
Reid Spencer
1abfe0d655
Reverse the logic for Win32 to ensure that bugpoint and llvm-db are NOT
...
built on this platform.
llvm-svn: 19015
2004-12-17 08:00:40 +00:00
Reid Spencer
120aa08e1c
Fix this file to actually work. ifneq was incorrectly used. Subtract out
...
llvm-db and bugpoint for Win32 rather than add them in
subtr
llvm-svn: 19014
2004-12-17 07:59:53 +00:00
Reid Spencer
19dd542a31
Makefile.JIT doesn't exist any more so it doesn't need to be distributed.
...
llvm-svn: 19009
2004-12-17 02:06:36 +00:00
Reid Spencer
0306c68c1f
Disable bugpoint and llvm-db tools for Win32. They can't be supported on
...
that platform without a lot of work because they depend on process image
copy behavior of fork(2).
llvm-svn: 19008
2004-12-17 01:46:41 +00:00
Tanya Lattner
c3a7bd7d0c
Linking in all of ScalarOpts.
...
llvm-svn: 19002
2004-12-16 23:07:13 +00:00
Reid Spencer
584cb0a8c1
For PR351:
...
* removeFile() -> sys::Path::destroyFile()
* remove extraneous toString() calls
* convert local variables representing path names from std::string to
sys::Path
* Use sys::Path objects with FileRemove instead of std::string
* Use sys::Path methods for construction of path names
llvm-svn: 19001
2004-12-16 23:04:20 +00:00
Chris Lattner
eb5a2cf32b
No targets actually use this library
...
llvm-svn: 18995
2004-12-16 19:39:45 +00:00
Reid Spencer
8240a916db
Unbreak all archive reading operations introduced by the last patch which
...
always exited the program with exit code 1 in these cases, regardless of
whether an error occurred or not.
llvm-svn: 18966
2004-12-15 21:58:03 +00:00
Chris Lattner
160a8a9725
Do not fail an assertion on a broken archive
...
llvm-svn: 18959
2004-12-15 07:44:15 +00:00
Reid Spencer
86960adfa3
Change LLVMGCCDIR/bytecode-libs -> LLVMGCCDIR/lib
...
llvm-svn: 18951
2004-12-15 01:54:37 +00:00
Reid Spencer
d8c5b71bd4
For PR351:
...
Remove #inclusion of Support/FileUtilities.h which isn't needed any more.
llvm-svn: 18950
2004-12-15 01:53:50 +00:00
Reid Spencer
30067f1eac
For PR351:
...
* Convert use of getUniqueFilename to sys::Path::makeUnique();
llvm-svn: 18949
2004-12-15 01:53:08 +00:00
Reid Spencer
eedafda7bb
For PR351:
...
* Change ExecWait calls to sys::Program::ExecuteAndWait
* Convert to use sys::Path where it makes sense
llvm-svn: 18929
2004-12-14 04:20:08 +00:00
Reid Spencer
79dc8b79bb
For PR351:
...
Adjust to interface change for FindExecutable.
llvm-svn: 18920
2004-12-13 23:44:23 +00:00
Reid Spencer
b7c56070ca
For PR351:
...
llee was a nice hack, but it wasn't portable so its gone, with Misha's
approval. Operating systems have facilities available for making bytecode
directly executable without this utility.
llvm-svn: 18916
2004-12-13 23:15:32 +00:00
Misha Brukman
318a44d867
Minor cleanups
...
llvm-svn: 18914
2004-12-13 21:42:16 +00:00
Reid Spencer
249eb144d9
For PR351:
...
Replace MakeFileReadable and MakeFileExecutable (from FileUtilities) with
sys::Path::makeReadable and sys::Path:makeExecutable, respectively.
llvm-svn: 18909
2004-12-13 20:03:02 +00:00
Reid Spencer
0afe178f21
Make the loop termination condition clear when building the set of items to
...
pass to the Linker::LinkInItems function.
llvm-svn: 18894
2004-12-13 17:18:19 +00:00
Reid Spencer
aa95684acd
For PR351: \
...
The getFileTimestamp and getFileSize functions have been removed from \
FileUtilities.{h,cpp}. They are replaced by Path::getTimestamp and \
Path::getSize,respectively.
llvm-svn: 18892
2004-12-13 17:01:53 +00:00
Reid Spencer
ff17d0439d
Make use of the new Path inserter function.
...
llvm-svn: 18887
2004-12-13 08:53:36 +00:00
Reid Spencer
17e7444a61
PR351: \
...
Use sys::Path not FileUtilities to check file types
llvm-svn: 18865
2004-12-13 03:01:26 +00:00
Reid Spencer
8d206908d8
Convert to use new Linker class interface
...
llvm-svn: 18864
2004-12-13 03:01:14 +00:00
Reid Spencer
0ebb926c0a
LinkModules is now in the Linker class
...
llvm-svn: 18863
2004-12-13 03:01:03 +00:00
Chris Lattner
b92fd6006c
Do not internalize a module if -link-as-library is passed.
...
llvm-svn: 18825
2004-12-12 07:53:51 +00:00
Reid Spencer
d58e09a275
Revert the last patch. We really do need SimplyCFG.
...
llvm-svn: 18787
2004-12-11 03:03:54 +00:00
Reid Spencer
5ccfd5a48b
Path::get -> Path::toString
...
llvm-svn: 18785
2004-12-11 00:14:15 +00:00
Reid Spencer
eef4420578
Remove this pass as its no longer needed.
...
llvm-svn: 18783
2004-12-10 22:55:35 +00:00
Chris Lattner
dea2bde08f
This pass is no longer needed.
...
llvm-svn: 18782
2004-12-10 22:30:32 +00:00
Reid Spencer
2da81ceb3d
Get rid of warning from flex.
...
llvm-svn: 18779
2004-12-10 21:59:47 +00:00
Chris Lattner
4a03a2d433
Turn on ipsccp by default instead of simple IPCP
...
llvm-svn: 18753
2004-12-10 08:03:43 +00:00
Brian Gaeke
af10b76b6c
Link V8 backend into llc.
...
llvm-svn: 18739
2004-12-10 05:04:13 +00:00
Reid Spencer
359df30f3d
When -link-as-library, add -l options to Module's deplibs
...
llvm-svn: 18617
2004-12-08 05:17:40 +00:00
Reid Spencer
ef96665753
Fix PR139:\
...
When not linking as a library, use LinkItems to retain command line order of \
linking, otherwise use LinkFiles
llvm-svn: 18549
2004-12-05 19:15:29 +00:00
Chris Lattner
0558e23872
Add -strip-debug option
...
remove the temporary -disable-dse option
llvm-svn: 18451
2004-12-03 05:45:58 +00:00
Chris Lattner
99a7c3d26f
Adjust to change in pass name
...
llvm-svn: 18442
2004-12-02 21:27:35 +00:00
Chris Lattner
4913b65616
Recognize --strip-all as a synonym for -s.
...
Add -S and --strip-debug option support.
llvm-svn: 18441
2004-12-02 21:26:10 +00:00
Reid Spencer
295a3bbb18
Implement file replacement correctly even with the f (TruncateNames) flag
...
set. The member name comparison was failing for truncated names. This patch
fixes that. Truncated names are now properly replaced.
llvm-svn: 18423
2004-12-02 09:21:55 +00:00
Reid Spencer
5686dc714d
No longer necessary, moved Makefile.rules
...
llvm-svn: 18337
2004-11-29 07:17:31 +00:00
Reid Spencer
bb9932c96a
Use LLVMLIBS=JIT to get JIT libraries
...
llvm-svn: 18333
2004-11-29 07:17:18 +00:00
Reid Spencer
3ec3fc9870
Make sure the program's symbols can be dlsym'd as well.
...
llvm-svn: 18331
2004-11-29 06:23:19 +00:00
Reid Spencer
da2a9e6b0c
Make the check a little quieter.
...
llvm-svn: 18325
2004-11-29 04:51:58 +00:00
Reid Spencer
d3f2e95e6c
Add LLVMbzip2 library, now required.
...
llvm-svn: 18255
2004-11-25 20:22:06 +00:00
Reid Spencer
cf5ca279ec
Always pass -D_GNU_SOURCE to cc1plus
...
llvm-svn: 18253
2004-11-25 19:38:51 +00:00
Reid Spencer
d7390bbd27
Always pass -D_GNU_SOURCE to cc1
...
llvm-svn: 18252
2004-11-25 19:38:39 +00:00
Reid Spencer
953e80db76
Correct the configuration variable used to find the bin directory.
...
llvm-svn: 18244
2004-11-25 09:36:28 +00:00
Reid Spencer
67386ceacc
Make sure additional C++ suffixes are recognized by llvmc.
...
llvm-svn: 18191
2004-11-24 00:01:57 +00:00
Reid Spencer
cfa51ff82b
* Adjust the options to make them either accept multiple occurrences or be
...
optional so that compatibility with GCC is accomplished.
* Implement the -print-file-name option in an attempt to provide the same
functionality as GCC. Unfortunately, without loading the cpp or c config
files, this option won't help much.
llvm-svn: 18189
2004-11-23 23:47:58 +00:00
Reid Spencer
cd893a9c50
* Don't pass empty arguments to ExecuteAndWait because it can cause the
...
sub-tool to start reading its standard input instead of the specified
input.
* Clean up ouput of path names on error.
* Extend GetPathForLinkageItem to always search the LibraryPaths and thus
make it suitable for an interface function (required by llvmc.cpp).
* Implement support for language-specific default library paths.
llvm-svn: 18188
2004-11-23 23:45:49 +00:00
Reid Spencer
5e1e6b9f82
Configuration data now supports a vector of library paths.
...
Add the GetPathForLinkageItem method to the interface so full paths can
be generated for a given linkage item.
llvm-svn: 18187
2004-11-23 23:40:06 +00:00
Reid Spencer
fe6dd9da55
Add the c and cpp configuration files.
...
llvm-svn: 18186
2004-11-23 23:38:46 +00:00
Reid Spencer
e1ae9d7c00
Removed in favor of configurable (*.in) versions.
...
llvm-svn: 18185
2004-11-23 23:38:07 +00:00
Reid Spencer
d51dfe3946
Make various adjustments to parsing so that the separator character doesn't
...
terminate options or paths, so that SPACE tokens legally separate options
on a command line, and so that the lang.libs paths are parsed properly.
llvm-svn: 18184
2004-11-23 23:37:26 +00:00
Reid Spencer
513587fbe6
SPACE is a legitimate token now, to separate option words.
...
llvm-svn: 18183
2004-11-23 23:35:50 +00:00
Reid Spencer
6a0d9b99df
Handle space, separators, bad substitutions, and library search path better
...
than before.
llvm-svn: 18182
2004-11-23 23:35:16 +00:00
Reid Spencer
c14e53efb8
Configurable language configuration files.
...
llvm-svn: 18181
2004-11-23 23:33:08 +00:00
Reid Spencer
66c2d807a3
Get the -o option right
...
llvm-svn: 18052
2004-11-20 20:45:33 +00:00
Reid Spencer
835060938c
Get the -o option right
...
llvm-svn: 18051
2004-11-20 20:39:33 +00:00
Reid Spencer
27962c7997
Not needed any more.
...
llvm-svn: 18050
2004-11-20 20:27:20 +00:00
Reid Spencer
72f75bc3b7
Content moved to llvm-ld.cpp
...
llvm-svn: 18049
2004-11-20 20:15:08 +00:00
Reid Spencer
0c66f97ae6
Incorporate GenerateCode.cpp. Make static things static.
...
llvm-svn: 18048
2004-11-20 20:02:56 +00:00
Reid Spencer
dac73aa00a
First cut at implementing generic link-time Optimization
...
llvm-svn: 18047
2004-11-20 19:43:28 +00:00
Reid Spencer
0e8c76ed90
The Archive class now has differentiation for BSD4.4 and SVR4 style archive
...
symbol tables. Adjust our usage to compensate.
llvm-svn: 18046
2004-11-20 18:01:22 +00:00
Chris Lattner
e404d724ea
Fix a bug that caused stuff like this:
...
main at ./eh.cpp:1414 -> printf("a\n");
to be printed, instead of this:
main at ./eh.cpp:14
14 -> printf("a\n");
llvm-svn: 18005
2004-11-19 19:45:44 +00:00
Chris Lattner
dad1823703
Fix a bug in the checkin where I adjusted this code to work when
...
LinkModules nukes the second module argument.
llvm-svn: 17986
2004-11-19 07:09:40 +00:00
Chris Lattner
7fd27e2c35
Remove debugging code, unneuter this functionality
...
llvm-svn: 17963
2004-11-18 19:42:50 +00:00
Chris Lattner
8cb483b335
remove debugging code
...
llvm-svn: 17962
2004-11-18 19:40:13 +00:00
Tanya Lattner
21590db8fd
Adding option to llc for ModuloScheduling. By default it is turned off.
...
llvm-svn: 17959
2004-11-18 18:38:01 +00:00
Chris Lattner
7a3767521d
-disable-opt is not -O0, it's okay for it to disable internalize.
...
llvm-svn: 17911
2004-11-17 16:41:19 +00:00
Chris Lattner
05fe0244e1
Even with -disable-opt we should still internalize and strip if requested.
...
llvm-svn: 17903
2004-11-16 18:59:20 +00:00
Reid Spencer
66dc515ed6
Per code review: \
...
* Make static things static \
* Get rid of unused TmpArchive variable \
* Implement symbol table printing \
* Adjust to changes in llvm::Archive interface \
* Make sure we destruct objects even if exceptions occur. \
* Fix a typo in an output string.
llvm-svn: 17878
2004-11-16 06:41:20 +00:00
Reid Spencer
9fc38b1712
Per code review: \
...
* hide the compatibility option \
* Make static things static \
* Use cl::extrahelp instead of cl::MoreHelp (defunct) \
* Use cl::PrintHelpMessage instead of our own printUse function \
* Use a std::set<sys::Path> for the path list because its now required by \
the sys::Path class and also ensues directories are traversed in sorted \
order.\
* Implement symbol table printing locally instead of in libLLVMArchive \
* Adjust to changes in llvm::Archive interface \
* Make sure we destruct objects even if exceptions occur. \
* Fix a typo in an output string.
llvm-svn: 17877
2004-11-16 06:41:09 +00:00
Chris Lattner
d308797cae
Make this code not depend on LinkModules leaving the second argument unmolested.
...
llvm-svn: 17874
2004-11-16 06:31:38 +00:00
Tanya Lattner
8213dae317
This file was originally developed by the LLVM research group so this comment should stay. I also do NOT want my name explicity listed on src files. I am already mentioned in the credits.
...
llvm-svn: 17833
2004-11-15 19:21:49 +00:00
Reid Spencer
4cee8e3365
Linker.h moved to include/llvm.
...
llvm-svn: 17805
2004-11-14 23:25:32 +00:00
Reid Spencer
aede779b1c
bugpoint needs LLVMLinker.a now.
...
llvm-svn: 17804
2004-11-14 23:23:18 +00:00
Reid Spencer
b3eaba688d
Correct call of methods whose names have changed.
...
llvm-svn: 17803
2004-11-14 23:17:41 +00:00
Reid Spencer
36c3a58557
This program needs libLLVMLinker.a now
...
llvm-svn: 17802
2004-11-14 23:12:22 +00:00
Reid Spencer
16c3bb3198
Linker.h has a new home.
...
llvm-svn: 17801
2004-11-14 23:00:08 +00:00
Reid Spencer
b2d0fa0823
Fix usage of changed function prototype
...
llvm-svn: 17798
2004-11-14 22:30:54 +00:00
Reid Spencer
34fae46c87
A tool for adding a symbol table to LLVM Archives
...
llvm-svn: 17797
2004-11-14 22:29:21 +00:00
Reid Spencer
30227fde87
Makefile for llvm-ranlib tool
...
llvm-svn: 17796
2004-11-14 22:28:33 +00:00
Reid Spencer
54a20f2009
*Fix usage of changed function prototype*Use Archive interface to symbol table for archives
...
llvm-svn: 17795
2004-11-14 22:27:46 +00:00
Reid Spencer
c762abe046
This tool needs libLLVMArchive now
...
llvm-svn: 17794
2004-11-14 22:27:00 +00:00
Reid Spencer
0cb8c8c2af
Remove linking declarations (in Linker.h now)
...
llvm-svn: 17793
2004-11-14 22:25:26 +00:00
Reid Spencer
e7814f62b9
We need the libLLVMArchive library now
...
llvm-svn: 17792
2004-11-14 22:23:31 +00:00
Reid Spencer
8d3f9038c1
Moved to lib/Linker (common with gccld)
...
llvm-svn: 17791
2004-11-14 22:22:45 +00:00
Reid Spencer
84a12bfbd0
Total rewrite using Archive library & new functionality
...
llvm-svn: 17790
2004-11-14 22:20:07 +00:00
Reid Spencer
23dcddf47f
This tool needs the libLLVMArchive library now.
...
llvm-svn: 17789
2004-11-14 22:19:21 +00:00
Reid Spencer
5f7d9675d4
Remove linking declarations (in Linker.h now)
...
llvm-svn: 17788
2004-11-14 22:17:49 +00:00
Reid Spencer
5ccfd9aea1
Provide exception handling
...
llvm-svn: 17787
2004-11-14 22:17:03 +00:00
Reid Spencer
3afabd441b
Moved to lib/Linker
...
llvm-svn: 17786
2004-11-14 22:15:31 +00:00
Reid Spencer
22f42243cc
Add the llvm-ranlib tool
...
llvm-svn: 17785
2004-11-14 22:13:59 +00:00
Reid Spencer
abbefecf8e
Make sure llee can deal with compressed bytecode too.
...
llvm-svn: 17652
2004-11-09 20:21:25 +00:00
Misha Brukman
8d5c13c3e3
Output the program name (in this case, gccld) with warning about invalid files
...
llvm-svn: 17638
2004-11-09 04:24:59 +00:00
Misha Brukman
465e7fb8ef
Don't silently ignore invalid files: tell the user!
...
llvm-svn: 17633
2004-11-08 22:03:10 +00:00
Reid Spencer
05d033159d
Add a --disable-compression option to gccas so the default compression of
...
bytecode can be defeated.
llvm-svn: 17626
2004-11-08 17:37:04 +00:00
Misha Brukman
fb279f652e
Use LLVMToolDir instead of ToolDir because the latter is no longer set (?)
...
llvm-svn: 17594
2004-11-07 22:26:43 +00:00
Reid Spencer
505b225e82
Rename the option for defeating compression to be a little more specific.
...
llvm-svn: 17567
2004-11-07 05:50:16 +00:00
Reid Spencer
f0adf68dfa
Enable compression by default.
...
llvm-svn: 17566
2004-11-07 05:43:51 +00:00
Reid Spencer
7b05ef63f1
* Enable bytecode compression by default
...
* Provide a -no-compress option to defeat compression.
llvm-svn: 17565
2004-11-07 05:41:32 +00:00
Reid Spencer
feb3d5097f
Turn on compression by default.
...
Change --compress to --no-compress so compression can be turned off.
llvm-svn: 17564
2004-11-07 05:37:27 +00:00