Devang Patel
5af1651f7d
Use abstract class to facilitate dlopen() interface.
...
llvm-svn: 30569
2006-09-21 17:22:55 +00:00
Chris Lattner
ff8a6b86db
comment out debug code
...
llvm-svn: 30401
2006-09-15 23:01:10 +00:00
Chris Lattner
634bc046ca
Add a new -cbe-bug mode, which works just like -run-llc, except that it uses
...
LLC as the reference compiler to reduce testcases for bugs in GCC.
llvm-svn: 30400
2006-09-15 21:29:15 +00:00
Anton Korobeynikov
d61d39ec53
Adding dllimport, dllexport and external weak linkage types.
...
DLL* linkages got full (I hope) codegeneration support in C & both x86
assembler backends.
External weak linkage added for future use, we don't provide any
codegeneration, etc. support for it.
llvm-svn: 30374
2006-09-14 18:23:27 +00:00
Chris Lattner
3f0ffd31cf
add a new (hidden) -disable-core-files option
...
llvm-svn: 30318
2006-09-14 06:17:09 +00:00
Devang Patel
dd53fd41cd
Add comment.
...
llvm-svn: 30315
2006-09-14 05:49:10 +00:00
Nick Lewycky
a2c681ab41
Fix --enable-valgrind. Add room for the new arguments, and don't keep
...
a pointer to a temporary.
llvm-svn: 30312
2006-09-14 04:20:17 +00:00
Nick Lewycky
7faef23f02
Add --enable-valgrind option to run optimizations through valgrind to
...
pick up on memory errors.
llvm-svn: 30311
2006-09-14 03:49:54 +00:00
Devang Patel
e480d2a2d7
GlobalValue with InternalLinkage may have operands with ExternalLinkage
...
type. Do not ignore these operands while finding external references.
llvm-svn: 30310
2006-09-14 01:35:13 +00:00
Chris Lattner
70b9f5bd1e
Move ipsccp pass earlier to clean up obvious bogosities
...
llvm-svn: 30232
2006-09-09 21:30:13 +00:00
Chris Lattner
fe01c281a9
ok this really works :)
...
llvm-svn: 30195
2006-09-08 18:33:49 +00:00
Devang Patel
842163d60a
Remove redundant include.
...
llvm-svn: 30194
2006-09-08 18:20:25 +00:00
Chris Lattner
eda4a9e008
Need to include Makefile.config to get the value of $(OS). Add a comment.
...
llvm-svn: 30193
2006-09-08 18:08:50 +00:00
Anton Korobeynikov
dc7b51910b
Enabling LTO building on Darwin only right now. This probably should be
...
removed after 'PIC vs non-PIC' problem solution
llvm-svn: 30192
2006-09-08 18:00:43 +00:00
Devang Patel
5606dd8a45
Using addPassesToEmitWholeFile is not a good idea here.
...
Use FunctionPassManager to do the job.
llvm-svn: 30160
2006-09-07 21:41:11 +00:00
Devang Patel
ce2c1eb154
Add linker into list of LINK_COMPONENTS.
...
llvm-svn: 30159
2006-09-07 21:36:55 +00:00
Devang Patel
12ee0cbde4
Add lto into the list of PARALLEL_DIRS
...
llvm-svn: 30154
2006-09-07 20:21:58 +00:00
Devang Patel
5b3510abd3
Use addPassesToEmitWholeFile() instead of addPassesToEmitFile()
...
llvm-svn: 30153
2006-09-07 20:20:56 +00:00
Chris Lattner
3b18c1a946
Change DisambiguateGlobalSymbols to not rename asm globals, which breaks
...
bugpoint on leopard.
llvm-svn: 30150
2006-09-07 18:21:07 +00:00
Devang Patel
5561aa7271
Add getTargetTriple() that linker can use to query target architecture.
...
llvm-svn: 30132
2006-09-06 20:16:28 +00:00
Devang Patel
ee9f617cff
Keep track of all modules crated using a name to module map.
...
Add private member function getMoudle().
llvm-svn: 30130
2006-09-06 18:50:26 +00:00
Devang Patel
95b7c7af2e
Instead of demangling symbol name by hand, use original name, which was
...
used to mangle symbol name, directly.
llvm-svn: 30124
2006-09-06 00:45:52 +00:00
Devang Patel
e3b9490b05
Extract target triplet from optimized module.
...
Untabify.
llvm-svn: 30123
2006-09-06 00:28:22 +00:00
Chris Lattner
af726fe9d5
lli uses LinkAllCodegenComponents, so it needs this. Thanks to
...
Rafael Esp?ndola for pointing this out
llvm-svn: 30100
2006-09-04 18:34:16 +00:00
Chris Lattner
3b78c704d1
Use llvm-config instead of magic JIT thing to link in libs
...
llvm-svn: 30091
2006-09-04 06:01:43 +00:00
Chris Lattner
28689ff2d0
Use LINK_COMPONENTS to specify *components* to link against instead of
...
using USED_LIBS to specify *libraries* to link against.
llvm-svn: 30090
2006-09-04 05:59:09 +00:00
Chris Lattner
2d4cae9896
Allow things like --libs CBackend
...
llvm-svn: 30089
2006-09-04 05:35:23 +00:00
Chris Lattner
956f73bdfa
Switch to using llvm-config to build
...
llvm-svn: 30088
2006-09-04 05:24:16 +00:00
Chris Lattner
36bf108d71
Switch to using llvm-config to select components to link in.
...
llvm-svn: 30085
2006-09-04 04:47:49 +00:00
Chris Lattner
12e97307a1
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.
llvm-svn: 30081
2006-09-04 04:14:57 +00:00
Chris Lattner
d140393a49
rearrange targets to satisfy dependencies. Too bad we aren't using llvm-config.
...
llvm-svn: 30077
2006-09-04 04:04:41 +00:00
Chris Lattner
c754b0a37f
If a cycle exists, don't succeed building the second time around.
...
llvm-svn: 30076
2006-09-04 01:49:10 +00:00
Chris Lattner
dcd72422fd
remove message
...
llvm-svn: 30075
2006-09-04 01:48:32 +00:00
Chris Lattner
2ecd34e869
Remove use of target::getName()
...
llvm-svn: 30069
2006-09-03 18:38:30 +00:00
Anton Korobeynikov
6c6a70f999
- Fixed broken Win32 build
...
- Removed warning about clobbered parameter in Bytecode/Reader
llvm-svn: 30026
2006-09-01 20:35:17 +00:00
Chris Lattner
dcc8bcc04d
Code cleanups, no functionality change.
...
llvm-svn: 29969
2006-08-29 23:38:20 +00:00
Reid Spencer
014a2dd53d
Delete a no-longer-supported configuration item.
...
llvm-svn: 29960
2006-08-29 20:52:44 +00:00
Chris Lattner
29619a9a01
Add a --disable-compression option like llvm-link/llvm-as etc have
...
llvm-svn: 29941
2006-08-28 17:31:55 +00:00
Reid Spencer
e7141c8be6
For PR387:
...
Close out this long standing bug by removing the remaining overloaded
virtual functions in LLVM. The -Woverloaded-virtual option is now turned on.
llvm-svn: 29934
2006-08-28 01:02:49 +00:00
Chris Lattner
c2d3d3112e
eliminate RegisterOpt. It does the same thing as RegisterPass.
...
llvm-svn: 29925
2006-08-27 22:42:52 +00:00
Chris Lattner
dc729ee32b
-analyze mode shouldn't output a .bc file.
...
llvm-svn: 29923
2006-08-27 22:40:26 +00:00
Chris Lattner
3c9b2420df
Eliminate RegisterAnalysis. RegisterPass now does all that is necessary.
...
llvm-svn: 29921
2006-08-27 22:30:17 +00:00
Chris Lattner
68e53db664
analyze no longer exists, don't offer to run it :)
...
llvm-svn: 29919
2006-08-27 22:12:06 +00:00
Chris Lattner
d8c0bfb9a1
eliminate only use of FilteredPassNameParser
...
llvm-svn: 29916
2006-08-27 22:07:43 +00:00
Chris Lattner
8e5e13b4fe
Merge the 'analyze' mode code with the 'opt' mode code. Eliminate the
...
'autodetect .ll files' functionality.
llvm-svn: 29915
2006-08-27 22:07:01 +00:00
Reid Spencer
f25aebf8cf
For PR797:
...
Remove exception throwing/handling from lib/Bytecode, and adjust its users
to compensate for changes in the interface.
llvm-svn: 29875
2006-08-25 17:43:11 +00:00
Reid Spencer
84f4e1f776
Fix a bug introduced by a change in the Archive::writeToDisk interface.
...
llvm-svn: 29870
2006-08-25 05:29:36 +00:00
Reid Spencer
93a2acf7bc
Fix a bug caused by change in the interface of Archive::writeToDisk.
...
llvm-svn: 29869
2006-08-25 05:28:17 +00:00
Reid Spencer
ec0f205dc1
For PR797:
...
Remove exception handling from the bytecode archiver and adjust the llvm-ar
tool to accommodate the new interfaces.
llvm-svn: 29866
2006-08-24 23:45:08 +00:00
Nate Begeman
a147cbfa21
Make sure that both non-asm file types are marked as experimental
...
llvm-svn: 29851
2006-08-23 21:29:52 +00:00
Nate Begeman
3cb3921a60
Initial checkin of the Mach-O emitter. There's plenty of fixmes, but it
...
does emit linkable .o files in very simple cases.
llvm-svn: 29850
2006-08-23 21:08:52 +00:00
Reid Spencer
e4ca722199
For PR797:
...
Final removal of exceptions from lib/System and adjustment of users to
accommodate.
llvm-svn: 29846
2006-08-23 20:34:57 +00:00
Devang Patel
663a005fba
If unable to create tmp. file on disk then return LTO_WRITE_FAILURE status.
...
llvm-svn: 29844
2006-08-23 16:59:25 +00:00
Reid Spencer
879ed5ab9c
For PR797:
...
Eliminate exception throwing from Path::renamePathOnDisk and adjust its
users correspondingly.
llvm-svn: 29843
2006-08-23 07:30:48 +00:00
Reid Spencer
51edba15c6
For PR797:
...
Remove exception throwing from Path::getDirectoryContents and its users.
llvm-svn: 29841
2006-08-23 06:56:27 +00:00
Reid Spencer
8db844241b
For PR797:
...
Remove exceptions from the Path::create*OnDisk methods. Update their users
to handle error messages via arguments and result codes.
llvm-svn: 29840
2006-08-23 00:39:35 +00:00
Reid Spencer
3376c6d8c5
Rearrange order to build more frequently used tools first and make the
...
triplet ordering (large, small, small) explicit with one triplet per line.
llvm-svn: 29839
2006-08-23 00:12:11 +00:00
Reid Spencer
37162a57ab
Fix a typo.
...
llvm-svn: 29838
2006-08-23 00:06:14 +00:00
Reid Spencer
9d2f19c7e4
For PR797:
...
Change the Path::make*OnDisk methods exception free and adjust their usage.
llvm-svn: 29836
2006-08-22 23:27:23 +00:00
Reid Spencer
9afdac4a55
Rearrange the build order to better accommodate parallel build by reducing
...
memory pressure. This order spaces out large executables with small ones in
between so that in a -j2 or -j3 build, it only attempts to build only one
large executable at time. If you're doing -j4, you probably have enuogh
memory anyway.
llvm-svn: 29835
2006-08-22 23:21:21 +00:00
Reid Spencer
6ba87bbfd3
Make the sys::Path::GetTemporaryDirectory method not throw exceptions and
...
adjust users of it to compensate.
llvm-svn: 29831
2006-08-22 19:01:30 +00:00
Reid Spencer
944645af44
For PR797:
...
Adjust usage of the ExecuteAndWait function to use the last argument which
is the ErrMsg string. This is necessitated because this function no longer
throws exceptions on error.
llvm-svn: 29791
2006-08-21 06:04:45 +00:00
Reid Spencer
a322366501
For PR885:
...
Consolidate the LinkAllAnalyses.h and LinkAllPasses.h headers into one
so there is no dupliation.
llvm-svn: 29787
2006-08-21 05:34:03 +00:00
Nate Begeman
a12dc61def
Fix a build failure
...
llvm-svn: 29786
2006-08-21 04:57:01 +00:00
Reid Spencer
c295914b7a
For PR797:
...
Make sys::Program::ExecuteAndWait not throw exceptions and update any
affected code. It now return -9999 to signal that the program couldn't be
executed. Only one case (in bugpoint) actually examines the result code.
llvm-svn: 29785
2006-08-21 02:04:43 +00:00
Reid Spencer
54aa04f972
Make sure the verify pass gets run after the user's loaded passes as well
...
when the verify-each option is given.
llvm-svn: 29783
2006-08-20 20:54:38 +00:00
Reid Spencer
f2c6a5da97
Rename the -verify option to be -verify-each so that it doesn't conflict
...
with the -verify pass option. It is also more accurate in that this option
causes a verify option to be run after every pass.
llvm-svn: 29782
2006-08-20 20:48:44 +00:00
Reid Spencer
7ed9bb4b47
Convert llvm-ld to use the PluginLoader like opt instead of having its
...
one-off (and broken) RunOptimizations function. Also, run some cleanup
passes after the user's loaded passes run. This make sure to clean up
any cruft left around by thos passes.
This patch was inspired by a patch submitted by Bram Adams.
llvm-svn: 29781
2006-08-20 19:18:36 +00:00
Reid Spencer
713eedc1fb
For PR797:
...
Rid the Assembly Parser of exceptions. This is a really gross hack but it
will do until the Assembly Parser is re-written as a recursive descent.
The basic premise is that wherever the old "ThrowException" function was
called (new name: GenerateError) we set a flag (TriggerError). Every
production checks that flag and calls YYERROR if it is set. Additionally,
each call to ThrowException in the grammar is replaced with GEN_ERROR
which calls GenerateError and then YYERROR immediately. This prevents
the remaining production from continuing after an error condition.
llvm-svn: 29763
2006-08-18 08:43:06 +00:00
Reid Spencer
378f7d5d20
For PR872:
...
Shrinkify LLVM's footprint by removing the analyze tool and moving its
functionality into the opt tool. THis eliminates one of the largest tools
from LLVM and doesn't make opt much bigger because it already included
most of the analysis passes. To get the old analyze functionality pass
the -analyze option to opt. Note that the integeration here is dead
simple. The "main" of analyze was just copied to opt and invoked if the
-analyze option was given. There may be opportunities for further
integration such as removing the distinction between transform passes
and analysis passes.
To use the analysis functionality, if you previously did this:
analyze $FNAME -domset -disable-verify
you would now do this:
opt -analyze $FNAME -domset -disable-verify
Pretty simple.
llvm-svn: 29762
2006-08-18 06:34:30 +00:00
Chris Lattner
56588abbf8
fit in 80 cols
...
llvm-svn: 29754
2006-08-17 18:51:28 +00:00
Chris Lattner
6e81c96cb8
minor cleanups
...
llvm-svn: 29753
2006-08-17 18:49:52 +00:00
Reid Spencer
4e41aaf805
Patches to correct several bugs in llvmc.
...
Patches contributed by Bram Adams. Thanks Bram.
llvm-svn: 29729
2006-08-16 20:31:44 +00:00
Patrick Jenkins
38a197a2eb
Adding FindBugs.cpp so the -find-bugs option will work.
...
llvm-svn: 29704
2006-08-15 16:41:52 +00:00
Patrick Jenkins
c46c03834c
This commit adds a new feature called find-bugs. The find-bugs option can be invoked on a .bc file from the command like with -find-bugs and a list of passes you wish to test. This procedure takes the set of optimization passes the user specifies, randomizes the passes, runs the passes on the specified .bc file, compiles the program, and finally runs the program checking its output vs the .bc file with no optimizations. This process repeats until either the user kills bugpoint or an error occurs in the optimizations, program complitation, or the running of the program. If an error occurs, bugpoint attempts to diagnose the error by eliminating passes that are not at fault and code that is not needed.
...
llvm-svn: 29703
2006-08-15 16:40:49 +00:00
Devang Patel
151c3969b1
untabify
...
llvm-svn: 29686
2006-08-14 23:37:18 +00:00
Devang Patel
4500688cc7
Use mangler, instead of addUnderscore(), to get mangled name.
...
Now, LLVMSymbol keeps symbol original name and mangled name.
llvm-svn: 29679
2006-08-14 22:36:16 +00:00
Reid Spencer
82c0e38366
Provide indentation of the generated program.
...
llvm-svn: 29678
2006-08-14 22:35:15 +00:00
Reid Spencer
47fcb4779d
Don't print double newline for --src-root and --obj-root as it tends to
...
confuse shells that might use this output.
llvm-svn: 29629
2006-08-11 21:50:24 +00:00
Anton Korobeynikov
4bf026787a
Fixed typo. Thanks, Reid.
...
llvm-svn: 29533
2006-08-04 22:55:53 +00:00
Anton Korobeynikov
ec35113141
Removed usage of "sort", which can lead to undeterministic behavior on mingw & cygwin platforms.
...
llvm-svn: 29532
2006-08-04 21:52:23 +00:00
Devang Patel
308f033e59
Collect references from globals.
...
llvm-svn: 29530
2006-08-04 19:10:26 +00:00
Reid Spencer
a5c3483f7d
For PR845:
...
Enable the makefile check on the result of find-cycles.pl. LLVM is now
cycle free and we intend to keep it that way. This patch will fail the
build if cycles are found.
llvm-svn: 29517
2006-08-03 21:46:42 +00:00
Reid Spencer
c45a6e40bd
Fix a typo in the name of expand_dependencies.
...
Make the dependency line pattern match handle white space better.
llvm-svn: 29516
2006-08-03 21:45:35 +00:00
Devang Patel
a108423475
Make it fit into 80-columns.
...
llvm-svn: 29503
2006-08-03 17:26:30 +00:00
Devang Patel
27672ee821
Fix typo.
...
llvm-svn: 29502
2006-08-03 17:25:36 +00:00
Devang Patel
acd4b07075
Simplify. Use addprefix.
...
llvm-svn: 29501
2006-08-03 17:18:45 +00:00
Chris Lattner
baf6ef94c1
Now that SparcV9 is gone, this logical can be simplified significantly.
...
llvm-svn: 29498
2006-08-03 16:59:17 +00:00
Devang Patel
d615e20ef3
Remove ARM for the moment since it is a work in progress.
...
llvm-svn: 29495
2006-08-03 16:14:09 +00:00
Devang Patel
36839b8637
Add new tool, lto, to do link time optimization. This tool installs
...
dynamic library that linker can use to optimize llvm byte codes at
link time.
llvm-svn: 29494
2006-08-03 15:44:57 +00:00
Chris Lattner
5af6a3ffdb
Fix the build on case-sensitive filesystems :(
...
llvm-svn: 29457
2006-08-01 22:34:35 +00:00
Chris Lattner
b25c49dd0c
no need to check readability here
...
llvm-svn: 29449
2006-08-01 18:22:21 +00:00
Chris Lattner
ec905190bf
No need to check isWriteable here (which isn't sufficient anyway). Just attempt
...
to do the operation and if it fails, oh well.
llvm-svn: 29446
2006-08-01 18:12:29 +00:00
Chris Lattner
63c5e1cf92
Use Path::getFileStatus
...
llvm-svn: 29445
2006-08-01 18:09:46 +00:00
Chris Lattner
32ffbc316a
Use Path::getFileStatus to get status-related info.
...
llvm-svn: 29444
2006-08-01 18:04:01 +00:00
Jim Laskey
95eda5b1f3
Introducing plugable register allocators and instruction schedulers.
...
llvm-svn: 29434
2006-08-01 14:21:23 +00:00
Chris Lattner
4857253d98
Change Path::getStatusInfo to return a boolean and error string on an error
...
instead of throwing an exception. This reduces the amount of code that is
exposed to exceptions (e.g. FileUtilities), though it is clearly only one step
along the way.
llvm-svn: 29395
2006-07-28 22:03:44 +00:00
Patrick Jenkins
752d52cbb6
Updating the comments above SplitFunctionsOutOfModule in ExtractFunction.cpp to reflect the changes made to that function. Specifically I am removing the FIXME comment because the issue has been addressed.
...
llvm-svn: 29385
2006-07-28 18:03:01 +00:00
Patrick Jenkins
b417a5c166
This commit improves bugpoints speed. On my G4 this changed caused kimwitu++ to run through bugpoint in 1091.15 seconds (user + system time). The time it took to run this on my G4 before I made these changes is 1420.82 seconds (user + system time). This is a speedup of about 5.5 minutes.
...
This is faster because SplitFunctionsOutOfModule no longer calls Clone Module and then removes the functions it doesnt want from the module returned. Instead it creates a module and copies over the specified functions, making changes to the new and old module where neccessary. This reduces the memory demand.
llvm-svn: 29379
2006-07-28 01:19:28 +00:00
Reid Spencer
b101b1bf60
Undo last commit, which was committed accidentally.
...
llvm-svn: 29369
2006-07-27 23:19:00 +00:00
Reid Spencer
eca6f7320e
Changes to support cross-compiling LLVM. The GenLibDeps.pl script needs to
...
have a compile-host version of "nm", not build-host. In order to effect this
we must use autoconf to determine the correct "nm" to use and propagate that
through the makefiles, through llvm-config and finally to GenLibDeps.pl as
an optional argument.
Patch contributed by Anton Korobeynikov. Thanks!
llvm-svn: 29368
2006-07-27 23:00:30 +00:00
Chris Lattner
44b1e8e53f
Avoid a "scary" make warning for the 1.8 release. This should be reenabled
...
right after 1.8 "ships".
llvm-svn: 29308
2006-07-26 21:14:04 +00:00
Chris Lattner
729b7a98ad
Add llvm2cpp to DIRs list
...
llvm-svn: 29299
2006-07-26 20:19:06 +00:00
Reid Spencer
5fd1180d71
Make changes necessary for stopping the build if a cyclic library
...
dependency is found. The find-cycles.pl script now exits with a return code
that equals the number of cycles found. The Makefile was changed to ignore
the status code of find-cycles.pl. This should be removed once the libraries
are free of cyclic dependencies.
llvm-svn: 29290
2006-07-26 17:10:54 +00:00
Reid Spencer
1c937fe257
Build llvm-config to identify library cycles earlier in the build process.
...
llvm-svn: 29289
2006-07-26 17:06:02 +00:00
Devang Patel
2c15c01c19
Fix MacOSX build failures. (pr841)
...
llvm-svn: 29246
2006-07-21 19:44:55 +00:00
Chris Lattner
55782c6c41
Build more debugger/selectiondag libraries as archives instead of .o files.
...
This works around bugs in some versions of the cygwin linker.
Patch contributed by Anton Korobeynikov.
llvm-svn: 29239
2006-07-21 00:10:47 +00:00
Andrew Lenharth
2b0baddc33
Fix linking on Alpha
...
llvm-svn: 29219
2006-07-20 17:27:58 +00:00
Reid Spencer
546436c482
Finish removal of EH usage from the Archive library. The REQUIRES_EH flag
...
in lib/Bytecode/Archive/Makefile is now removed. One small step closer to
a smaller LLVM.
llvm-svn: 29067
2006-07-07 20:56:50 +00:00
Reid Spencer
cfa807ab31
Remove EH use from the Archive library and adjust its users accordingly.
...
llvm-svn: 29066
2006-07-07 19:09:14 +00:00
Chris Lattner
05a8970245
Tools require EH for their top-level try blocks.
...
llvm-svn: 29035
2006-07-07 00:46:19 +00:00
Chris Lattner
35359d9705
Fix PR819, llvm2cpp should read .bc files, not .ll files.
...
llvm-svn: 29030
2006-07-06 23:48:57 +00:00
Chris Lattner
5734e8d7c3
Change the verifier to never throw an exception. Instead verifyModule canoptionally return the string error, which is an easier api for clients touse anyway.
...
llvm-svn: 29017
2006-07-06 18:02:27 +00:00
Reid Spencer
ad88ff24b8
Split long comment lines.
...
llvm-svn: 28988
2006-07-03 16:46:03 +00:00
Chris Lattner
cc21fa7b41
Pass -Xlinker flags to gcc when it builds the shared object.
...
llvm-svn: 28939
2006-06-27 20:35:36 +00:00
Devang Patel
039215b020
Fix cut-n-pasto in comments.
...
llvm-svn: 28928
2006-06-27 18:07:29 +00:00
Chris Lattner
41c173c68a
Remove unneeded libs
...
llvm-svn: 28900
2006-06-21 17:26:13 +00:00
Reid Spencer
c95970be9d
For PR811:
...
Don't both with the "C" and "cc" extensions as they aren't common and they
the "C" extension conflicts with the "c" extension on operating systems
that have case insensitive file names.
llvm-svn: 28899
2006-06-21 17:21:39 +00:00
Chris Lattner
16cf81306e
Don't pass target name into TargetData anymore, it is never used or needed.
...
llvm-svn: 28831
2006-06-16 18:23:49 +00:00
Reid Spencer
aba6398f8b
Actually add instructions to the list of defined values so it gets
...
recognized as such! This prevents the CppWriter from treating every
operand as a forward reference and making a mess of the output.
llvm-svn: 28800
2006-06-15 16:09:59 +00:00
Chris Lattner
20ec1654b1
Teach bugpoint to kill optimization passes that run over the timeout limit,
...
which allows it to debug optimizer infinite loops. This patch is contributed
by Nick Lewycky, thanks!
llvm-svn: 28763
2006-06-13 03:10:48 +00:00
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
Chris Lattner
ab81de7514
Free memory allocated by copy_env.
...
llvm-svn: 28299
2006-05-14 19:17:28 +00:00
Chris Lattner
2bd9d8eaca
print a nice error if bugpoint gets an error reading inputs. Bug identified
...
by coverity.
llvm-svn: 28298
2006-05-14 19:15:56 +00:00
Chris Lattner
90abfe4bd9
Fix a bug found by inspection.
...
llvm-svn: 28297
2006-05-14 19:11:40 +00:00
Chris Lattner
44f90c93e6
Delete memory allocated by CopyEnv
...
llvm-svn: 28288
2006-05-14 18:38:13 +00:00
Chris Lattner
917f8fd1d9
Remove dead return value.
...
llvm-svn: 28245
2006-05-12 17:28:36 +00:00
Owen Anderson
8c2c1e90c4
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.
llvm-svn: 28238
2006-05-12 06:33:49 +00:00
Chris Lattner
34d26c38b2
wrap long line
...
llvm-svn: 28113
2006-05-04 23:35:31 +00:00
Chris Lattner
b6277c510c
Adjust to use proper TargetData copy ctor
...
llvm-svn: 28112
2006-05-04 21:18:40 +00:00
Reid Spencer
76a0a8aa37
For PR764:
...
Don't check in the LibDeps.txt and FinalLibDeps.txt files to CVS because
the content differs from platform to platform. Instead, adjust the makefile
so that a dummy llvm-config is built if Perl is not available.
llvm-svn: 28084
2006-05-03 17:49:50 +00:00
Owen Anderson
20a631fde7
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.
llvm-svn: 28074
2006-05-03 01:29:57 +00:00
Chris Lattner
17aae4c516
This no longer needs the JIT.
...
llvm-svn: 27942
2006-04-22 05:04:23 +00:00
Reid Spencer
2b1041cf13
Okay, llvm-config is good to go now.
...
llvm-svn: 27916
2006-04-20 21:14:39 +00:00
Reid Spencer
5952201b67
Several Changes To Support Building llvm-config:
...
1. If Perl is not available, don't run Perl dependent targets.
2. Check in FinalLibDeps.txt for build environments that can't build it
because there's no Perl processor.
3. Ensure that FinalLibDeps.txt depends on LibDeps.txt so it is
automatically regenerated.
4. Support objdir != srcdir building.
llvm-svn: 27915
2006-04-20 21:13:58 +00:00
Reid Spencer
62b9b71ff7
Don't build llvm-config until issues are resolved.
...
llvm-svn: 27914
2006-04-20 21:00:24 +00:00
Reid Spencer
57d891afe1
Build the llvm-config directory as a tool.
...
llvm-svn: 27913
2006-04-20 20:53:23 +00:00
Chris Lattner
53f4499b22
Never link in sparcv9
...
llvm-svn: 27884
2006-04-20 17:07:46 +00:00
Andrew Lenharth
2bdd6fe9ef
fix printing call graphs
...
llvm-svn: 27820
2006-04-18 23:45:19 +00:00
Chris Lattner
9232c8c1c5
Add a warning.
...
llvm-svn: 27795
2006-04-18 05:31:20 +00:00
Chris Lattner
3af67456dd
Add a warning
...
llvm-svn: 27794
2006-04-18 05:26:10 +00:00
Reid Spencer
097122a246
Distribute CVS versions of lex files
...
llvm-svn: 27629
2006-04-12 20:56:12 +00:00
Jeff Cohen
0eafbc3593
Get JIT/Interpreter working on Windows again.
...
llvm-svn: 27037
2006-03-24 02:53:49 +00:00
Reid Spencer
13f65f29e0
Ignore the lexer output.
...
llvm-svn: 27034
2006-03-24 02:22:22 +00:00
Chris Lattner
811dd8d009
remove always-null IntrinsicLowering argument.
...
llvm-svn: 26971
2006-03-23 05:28:02 +00:00
Chris Lattner
56ee4ea22f
add an assert to get a slightly better msg about this problem
...
llvm-svn: 26812
2006-03-16 23:16:17 +00:00
Reid Spencer
c67a060a51
Convert llvm.cs.uiuc.edu -> llvm.org
...
llvm-svn: 26748
2006-03-14 05:54:52 +00:00
Chris Lattner
fdb533a1f6
Fix a really annoying bug in bugpoint that made reducing C++ testcases
...
almost impossible with the new CFE. It now guarantees that the static
ctor/dtor list is correctly split between the modules.
llvm-svn: 26624
2006-03-08 23:55:38 +00:00
Chris Lattner
d0eb1d12d2
Fit to 80 columns.
...
Add support for running static ctor/dtors that aren't handled by __main.
This fixes programs with the JIT and the new CFE, such as HBD.
llvm-svn: 26620
2006-03-08 18:43:36 +00:00
Reid Spencer
8e5da55b6d
Make sure command line options are parsed before we try to add the LibPath
...
(-L options) to TheLinker. Problem noticed by Wink Saville.
llvm-svn: 26571
2006-03-06 06:38:19 +00:00
Andrew Lenharth
ef9aa1294a
For transforms the behave differently if main goes away, add an option to prevent bugpoint from removing main
...
llvm-svn: 26557
2006-03-05 22:21:36 +00:00
Robert Bocchino
101a959531
Implemented -quiet feature for analyze
...
llvm-svn: 26494
2006-03-03 02:12:04 +00:00
Chris Lattner
8bd3e91fa2
Turn on loop unswitching tonight
...
llvm-svn: 26312
2006-02-22 07:33:49 +00:00
Chris Lattner
02f92a88b6
reorder some libraries
...
llvm-svn: 26309
2006-02-22 00:59:06 +00:00
Chris Lattner
e5002f3e09
remove support for the skeleton target
...
llvm-svn: 26236
2006-02-16 21:10:57 +00:00
Chris Lattner
e01ff337ee
Adjust to new style "generated files in CVS" mechanism for lex output
...
llvm-svn: 26163
2006-02-14 05:16:35 +00:00
Chris Lattner
806024f7a3
SparcV8 -> Sparc
...
llvm-svn: 26008
2006-02-05 08:30:45 +00:00
Andrew Lenharth
67e0189faa
Pass plugins on to children when optimizing.
...
llvm-svn: 25650
2006-01-26 18:37:21 +00:00
Chris Lattner
3090f923bd
Remove dead #include
...
llvm-svn: 25520
2006-01-23 00:38:14 +00:00
Chris Lattner
af044cc84b
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.
llvm-svn: 25519
2006-01-23 00:36:05 +00:00
Chris Lattner
8d8a19fa58
this doesn't work, remove it
...
llvm-svn: 25518
2006-01-23 00:32:33 +00:00
Chris Lattner
03c032ce71
add explicit #includes of iostream
...
llvm-svn: 25510
2006-01-22 22:53:40 +00:00
Reid Spencer
5995c57574
For PR521:
...
With these patches we implement the ability for the Linker library to
keep track of which libraries were actually bytecode files (not archives)
and cause their users to remove such files from the list of libraries to
pass to the native linker.
llvm-svn: 25169
2006-01-10 03:14:40 +00:00
Reid Spencer
9d59a8273e
Fix line length of a comment.
...
llvm-svn: 25149
2006-01-08 22:40:10 +00:00
Chris Lattner
95d46c17c0
remove unused header
...
llvm-svn: 25101
2006-01-05 00:21:37 +00:00
Jim Laskey
219d559824
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.
llvm-svn: 25100
2006-01-04 22:28:25 +00:00
Jim Laskey
9744c6292b
Adding MachineDebugInfo as a immutable pass.
...
llvm-svn: 25088
2006-01-04 13:42:02 +00:00
Reid Spencer
60c1a12019
Revert removal of std:: prefixes and addtion of "using namespace std;".
...
This violates the LLVM coding standards.
llvm-svn: 25050
2005-12-30 09:07:29 +00:00
Duraid Madina
b8d1012487
don't need this anymore
...
llvm-svn: 25049
2005-12-30 02:50:44 +00:00
Duraid Madina
ce551baee6
delete file portably
...
llvm-svn: 25048
2005-12-30 02:47:21 +00:00
Reid Spencer
9695ae00bf
General cleanup:
...
1. Don't mix C++ and C standard I/O, convert to C++ iostreams
2. Wrap long lines
3. use the std namespace to simplify/shorten the code
llvm-svn: 25042
2005-12-29 21:13:45 +00:00
Duraid Madina
fad8e748be
ditto
...
llvm-svn: 25038
2005-12-28 06:58:12 +00:00
Duraid Madina
e6bf2c27dd
more compliance stufff
...
llvm-svn: 25037
2005-12-28 06:56:09 +00:00
Duraid Madina
f703b207cf
behold my standards-compliant humps!
...
llvm-svn: 25033
2005-12-28 05:56:36 +00:00
Duraid Madina
bcc57c0c16
WAKEY WAKEY
...
llvm-svn: 25032
2005-12-28 05:48:55 +00:00
Jeff Cohen
7c89bdd5a0
Get bugpoint building with VC++ again.
...
llvm-svn: 24977
2005-12-23 05:00:38 +00:00
Reid Spencer
842118ce95
For PR351:
...
Generally, remove use of fork/exec from bugpoint in favor of the portable
sys::Program::ExecuteAndWait method. This change requires two new options
to bugpoint to tell it that it is running in "child" mode. In this mode,
it reads its input and runs the passes. The result code signals to the
parent instance of bugpoint what happened (success, fail, crash).
This change should make bugpoint usable on Win32 systems.
llvm-svn: 24961
2005-12-22 20:02:55 +00:00
Chris Lattner
7d05269769
Fix test/Regression/Other/2002-01-31-CallGraph.ll after the recent callgraph
...
rework.
llvm-svn: 24959
2005-12-22 19:26:06 +00:00
Reid Spencer
f984b68181
Implement PR679:
...
* Changed the -rpath option from cl::opt to cl::list
* Changed the interface to GenerateNative to take a std::vector<std::string>
instead of just a std::string
* Changed GenerateNative to generate multiple -Wl,-rpath, options to be
passed to gcc.
llvm-svn: 24930
2005-12-22 01:50:56 +00:00
Reid Spencer
41e1b6fed0
Implement PR512:
...
This patch adds a -post-link-opts option to llvm-ld which allows an arbitrary
program to optimize bytecode after linking. The program is passed two file
names. The first is the input (linked bytecode) the second is where it must
place its output (presumably after optimizing). If the output file is bytecode,
it is used as a substitute for the input. This will allow things like poolalloc
to be written as a separate program instead of a loadable module or built into
LLVM.
llvm-svn: 24893
2005-12-21 05:03:23 +00:00
Chris Lattner
08a04cb3f2
rename option for consistency with -mcpu -mattr etc
...
llvm-svn: 24734
2005-12-16 05:19:55 +00:00
Chris Lattner
78e9e10b53
rename option
...
llvm-svn: 24732
2005-12-16 05:19:18 +00:00
Chris Lattner
76766cb880
provide an option to override the target triple in a module from the commandline.
...
llvm-svn: 24730
2005-12-16 05:00:21 +00:00
Chris Lattner
e568b88c98
provide an option to override the target triple in a module from the command
...
line.
llvm-svn: 24729
2005-12-16 04:59:57 +00:00
Chris Lattner
8dea0eca2f
Fix printing of the instructions.
...
llvm-svn: 24714
2005-12-14 22:01:07 +00:00
Reid Spencer
4c10e7643f
Remove -start-group and -end-group no-op options, accidentally committed
...
in last patch.
llvm-svn: 24710
2005-12-14 19:08:51 +00:00
Reid Spencer
6796b48e51
Adjust the constructor to the Linker class to take an argument that names
...
the module being constructed. This is used to correctly name the module.
Previously the name of the linker tool was used which produces confusing
output when the module identifier is used in an error message.
llvm-svn: 24699
2005-12-13 20:00:37 +00:00
Andrew Lenharth
312e65568c
This solves the problem of the CBE renaming symbols that start with . but the assembly side still trying to reference them by their old names. Should be safe untill we hit a language front end that lets you specify such a name.
...
llvm-svn: 24626
2005-12-06 20:51:30 +00:00
Chris Lattner
352630141c
Revert my previous patch which broke due to lazy streaming of functions
...
from .bc files.
llvm-svn: 24575
2005-12-02 19:00:22 +00:00
Chris Lattner
ef2d8ca0b6
If a module has a main, but it is defined externally, refuse to run it.
...
Attempting to run it will find lli's main, which isn't the desired effect.
llvm-svn: 24569
2005-12-01 22:48:23 +00:00
Chris Lattner
fab12d00c9
Allow users to specify -Wl,-native* multiple times if they please
...
llvm-svn: 24392
2005-11-17 16:08:04 +00:00
Chris Lattner
731055e370
Add a new -fast option, which generates code quickly.
...
llvm-svn: 24234
2005-11-08 02:12:17 +00:00
Chris Lattner
b3140c3e8a
add a hack that fixes:
...
llvm-gcc main.c -Wl,-native -o a.out -g
This is important because it used by many configure scripts.
John, please pull this onto the 1.6 branch.
llvm-svn: 24163
2005-11-03 07:17:51 +00:00
John Criswell
fe5f33b120
Move some constant folding code shared by Analysis and Transform passes
...
into the LLVMAnalysis library.
This allows LLVMTranform and LLVMTransformUtils to be archives and linked
with LLVMAnalysis.a, which provides any missing definitions.
llvm-svn: 24036
2005-10-27 15:54:34 +00:00
John Criswell
94b7bea733
1. Remove libraries no longer created from the list of libraries linked into the
...
SparcV9 JIT.
2. Make LLVMTransformUtils a relinked object file and always link it before
LLVMAnalysis.a. These two libraries have circular dependencies on each
other which creates problem when building the SparcV9 JIT. This change
fixes the dependency on all platforms problems with a minimum of fuss.
llvm-svn: 24023
2005-10-26 20:35:13 +00:00
Chris Lattner
aad5452c2e
transforms before analyses
...
llvm-svn: 23976
2005-10-25 17:10:30 +00:00
Chris Lattner
788318cb69
Remove a now-unneeded library
...
llvm-svn: 23942
2005-10-24 02:31:05 +00:00
Chris Lattner
2a5442f365
pull in the archive version of this lib to reduce exe size
...
llvm-svn: 23929
2005-10-24 01:13:21 +00:00
Chris Lattner
f4d2a4b3bf
Pull in the archive versions of these libs to reduce executable size
...
llvm-svn: 23928
2005-10-24 01:12:14 +00:00
Chris Lattner
1f001771b2
Link in datastructure as a relinked o file
...
llvm-svn: 23926
2005-10-24 01:07:56 +00:00
Chris Lattner
652ce549ec
Link to archive versions of libraries instead of the relinked ones
...
llvm-svn: 23925
2005-10-24 01:05:53 +00:00
Chris Lattner
8f16bb6c3c
Use the new LinkAllAnalyses.h header instead of forcing passes to be
...
in relinked object files
llvm-svn: 23922
2005-10-24 01:00:13 +00:00
Chris Lattner
b45e57c2dd
move this to the analyze tool
...
llvm-svn: 23918
2005-10-24 00:27:36 +00:00
Chris Lattner
672471fbed
Use archive versions of these libraries, using the LinkAllPasses header.
...
llvm-svn: 23916
2005-10-24 00:12:20 +00:00
Chris Lattner
41548484f4
Shrinkify to make --help output look better
...
llvm-svn: 23911
2005-10-23 22:37:13 +00:00
Chris Lattner
0b2bf4c255
shrinkify the option name a bit
...
llvm-svn: 23910
2005-10-23 22:35:42 +00:00
Jeff Cohen
11e26b52b2
When a function takes a variable number of pointer arguments, with a zero
...
pointer marking the end of the list, the zero *must* be cast to the pointer
type. An un-cast zero is a 32-bit int, and at least on x86_64, gcc will
not extend the zero to 64 bits, thus allowing the upper 32 bits to be
random junk.
The new END_WITH_NULL macro may be used to annotate a such a function
so that GCC (version 4 or newer) will detect the use of un-casted zero
at compile time.
llvm-svn: 23888
2005-10-23 04:37:20 +00:00
Chris Lattner
711a5fe009
document this as experimental
...
llvm-svn: 23883
2005-10-22 22:00:45 +00:00
Chris Lattner
727671a3dc
Fix PR637
...
llvm-svn: 23784
2005-10-18 06:29:43 +00:00
Chris Lattner
f20941116b
Speed up isBytecodeLPath from 20s to .01s in common cases. This makes -native
...
not completely painful to use. Once we decide a directory has a bytecode
library, we know it this function returns true, no need to scan entire directories.
llvm-svn: 23405
2005-09-23 06:11:24 +00:00
Chris Lattner
9b9b510084
1. Do not use .c_str() to keep a persistent handle on a temporary string.
...
2. Concatenate -lfoo and -L/bar options into a single option instead of
passing "-L /bar" (for example) which doesn't work on Darwin.
3. Send -v output to stderr instead of stdout
llvm-svn: 23404
2005-09-23 06:05:46 +00:00
Jim Laskey
27d628dfc9
Add help support for -mcpu and -mattr.
...
llvm-svn: 23222
2005-09-02 19:27:43 +00:00
Jim Laskey
19058c3989
1. Use SubtargetFeatures in llc/lli.
...
2. Propagate feature "string" to all targets.
3. Implement use of SubtargetFeatures in PowerPCTargetSubtarget.
llvm-svn: 23192
2005-09-01 21:38:21 +00:00
Reid Spencer
dfb3fb4a25
Implement PR614:
...
These changes modify the makefiles so that the output of flex and bison are
placed in the SRC directory, not the OBJ directory. It is intended that they
be checked in as any other LLVM source so that platforms without convenient
access to flex/bison can be compiled. From now on, if you change a .y or
.l file you *must* also commit the generated .cpp and .h files.
llvm-svn: 23115
2005-08-27 18:50:39 +00:00
Chris Lattner
bd615f518c
If the user interrupts bugpoint, don't extract loops
...
llvm-svn: 22603
2005-08-02 23:25:56 +00:00
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