Reid Spencer
7783e8ad69
Make findModulesDefiningSymbols modify its symbols argument so we can \
...
eliminate symbols defined by the archive efficiently
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17976 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-19 03:18:22 +00:00
Chris Lattner
1085548d35
Add support for llvm.dbg.stoppoint
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17969 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 21:41:16 +00:00
Chris Lattner
721aef6897
Update comments, now that CPR's are gone, inline the methods
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17957 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 17:46:57 +00:00
Reid Spencer
b0ce1a387c
Include ltdl.h if we have it.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17952 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 09:50:00 +00:00
Reid Spencer
e2234a7055
Add checks for HAVE_LTDL_H and HAVE_LT_DLOPEN
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17951 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 09:49:13 +00:00
Reid Spencer
0de02a6ba9
Dynamic Library abstraction. This makes the abstraction of a single dynamic
...
library (shared library/shared object) whose symbols can be looked up
dynamically. Used for plug-ins.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17940 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 04:33:39 +00:00
Chris Lattner
1a3a487763
Fix typeo
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17938 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 04:31:10 +00:00
Chris Lattner
bae74d9192
Add ability to give hints to the overlaps routines.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17934 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 03:47:34 +00:00
Chris Lattner
743ef6d70e
Add new advanceTo method
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17932 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 02:37:31 +00:00
Chris Lattner
8d8d513d4d
Fix a minor bug in expiredAt. endNumber() is the first number that is not valid.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17931 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 01:34:44 +00:00
Chris Lattner
23b71c1e1e
Rename some methods, use 'begin' instead of 'start', add new LiveInterval
...
iterator/begin/end members.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17930 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 01:29:39 +00:00
Alkis Evlogimenos
859804f529
Make ReturnInst accept a value of type void as the return value. The
...
ReturnInst constructed is the same as if NULL was passed instead of
the void value.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17923 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-17 21:02:25 +00:00
Chris Lattner
4c4c415fca
New prototype for lowerpacked pass.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17915 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-17 18:01:49 +00:00
Reid Spencer
f04ff4e9ac
Make the comment for LinkFiles a bit more precise and easily understood.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17899 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-16 16:46:22 +00:00
Reid Spencer
e26057a376
Standardize on 'class' instead of 'struct'. Gets rid of warnings in VC++
...
Patch contributed by Jeff Cohen.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17889 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-16 06:58:55 +00:00
Reid Spencer
60f1758f7c
Per code review:\
...
* Use STL names for STL operations \
* Do not have Archive doing symbol table printing \
* Avoid compiler warnings about only having private constructors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17881 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-16 06:46:55 +00:00
Chris Lattner
456b97297c
Document this as clobbering the second arg, make the second arg be non-const
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17879 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-16 06:41:21 +00:00
Reid Spencer
8bf7fba10b
Per code review:
...
* get rid of (void) construct in function declarations
* make toString a const member
* add a default implementation of toString for Win32
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17873 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-16 06:22:17 +00:00
Reid Spencer
b608a81a18
Per code review:
...
* Clean up the StatusInfo constructor to construct all members and give
them reasonable values.
* Get rid of the Vector typedef and make the interface to
getDirectoryContent use a std::set instead of a std::vector so the dir
content is sorted.
* Make the getStatusInfo method const and not return a useless boolean.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17872 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-16 06:15:19 +00:00
Reid Spencer
9bbba09139
Per code review:
...
*Implement/Document the cl::extrahelp feature instead of the MoreHelp ptr.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17871 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-16 06:11:52 +00:00
Chris Lattner
1840f3ce7f
Add an accessor
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17865 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-15 23:20:19 +00:00
Reid Spencer
226b72672e
Remove useless/confusing namespace qualifier.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17852 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-15 21:27:05 +00:00
Chris Lattner
c063502e32
Warning fixes for VC++, contributed by Morten Ofstad!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17831 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-15 19:02:35 +00:00
Reid Spencer
766b793143
Changes necessary to enable linking of archives without LLVM symbol tables.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17811 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-15 01:20:11 +00:00
Reid Spencer
b5a6f419d0
Changes per code review:
...
* Document StatusInfo fields better
* No lines > 80 cols
* Have getStatusInfo return bool if file doesn't exist
* Don't document in detail how temporary file name should be created.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17808 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-14 23:29:00 +00:00
Reid Spencer
f31c7ff957
*Make naming convention consistent.*Add convertion to/from Unix Epoch time.*Add ability to convert to readable string.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17762 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-14 21:53:55 +00:00
Reid Spencer
00e9ca7148
Make the remove*OnSignal functions deal with Paths not strings
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17761 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-14 21:53:09 +00:00
Reid Spencer
c5fe25314c
*Put the StatusInfo type in the right section. *Provide the ability to rename a file.*Provide the ability to get/set stat(2) information.*Provide the ability to identify LLVM file types.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17760 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-14 21:52:22 +00:00
Reid Spencer
8d2a8c3115
Allow explicit closing of the MappedFile, before destruction
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17759 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-14 21:51:36 +00:00
Reid Spencer
f44715638b
Linker is its own module now. Moved to include/llvm/Linker.h
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17758 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-14 21:50:50 +00:00
Reid Spencer
14ef01405c
Add higher level interface to simplify use of Compressor
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17757 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-14 21:50:00 +00:00
Reid Spencer
cc08ee507f
Add the MoreHelp function pointer. If non-null, this specifies a function to be called to print out additional help information
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17756 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-14 21:49:13 +00:00
Reid Spencer
33e2fcd6f5
Remove ReadArchiveFile (functionality moved to Archive.h). Add an alternate form for GetBytecodeSymbols.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17755 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-14 21:48:27 +00:00
Reid Spencer
9461bd7996
Complete rewrite to get first working version.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17754 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-14 21:47:41 +00:00
Reid Spencer
56ae5185ae
Interface to Linker (revised/expanded from Support/Linker.h)
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17752 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-14 21:46:08 +00:00
Misha Brukman
f2cdf5e934
Add GhostLinkage for marking functions before they're fully materialized
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17747 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-14 21:02:28 +00:00
Reid Spencer
7d0a022489
Moved from include/llvm/Support/Linker.h
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17743 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-14 20:21:58 +00:00
Chris Lattner
e6c745261e
Add useful method, minor cleanups
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17715 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-13 23:28:10 +00:00
Chris Lattner
f17ffcce18
Add support for shifts
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17702 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-13 19:32:45 +00:00
Reid Spencer
8ee9da05ed
Provide conversion from posix time.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17656 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-09 20:29:10 +00:00
Reid Spencer
9195f37c5f
* Implement getStatusInfo for getting stat(2) like information
...
* Implement createTemporaryFile for mkstemp(3) functionality
* Fix isBytecodeFile to accept llvc magic # (compressed) as bytecode.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17654 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-09 20:26:31 +00:00
Misha Brukman
35c4c33879
Remove extra spaces
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17629 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-08 19:01:03 +00:00
Reid Spencer
ad768d7a1a
Make writing compressed bytecode the default.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17625 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-08 17:35:34 +00:00
Misha Brukman
e81aaf238c
Add method to delete machine code generated for a Function
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17600 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-07 23:58:02 +00:00
Reid Spencer
78d215b76d
Make compression the default on writing.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17577 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-07 18:18:11 +00:00
Reid Spencer
8ad8a5219c
* Provide option for specifying bytecode compression
...
* Enabled bytecode compression by default.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17563 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-07 05:30:43 +00:00
Chris Lattner
8226db66a2
This is V9 specific stuff
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17546 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-07 00:42:29 +00:00
Reid Spencer
17f52c5c46
Add support for compressed bytecode
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17535 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-06 23:17:23 +00:00
Reid Spencer
2394fa99bd
Provide an interface for getting just the external symbols from a
...
Bytecode file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17502 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-06 08:54:47 +00:00
Reid Spencer
c3c5521424
Deprecate constructors we don't want users to use.
...
Temporarily comment out two interface methods we might not implement.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17501 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-06 08:53:59 +00:00
Reid Spencer
07adb2836b
Stop propagating method names that violate the coding standard
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17498 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-05 22:15:36 +00:00
Reid Spencer
6c4d9e566f
Go ahead and trust the client not to mess with the ModuleProvider* returned
...
by the findModuleContainingSymbol method.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17491 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-05 18:48:02 +00:00
Reid Spencer
6f08c46790
* Documentation corrections (thanks to Chris for nit-picking)
...
* Remove dead typedefs.
* Redefine how getAllPaths treats its argument.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17489 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-05 17:44:26 +00:00
Reid Spencer
ab19fa7967
First version of the interface to Archive files. This introduces the
...
llvm::Archive class to provide for reading, writing, indexing and search
functions on standard ar(1) format files that contain bytecode modules.
Implementation to follow.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17487 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-05 09:19:17 +00:00
Chris Lattner
5200ad1b34
defining __STDC_LIMIT_MACROS on the command line is not really necessary
...
for Visual Studio, and is a bit of a pain when you want to include the
LLVM headers from your own project, so I moved the check a bit down into
the Unix case to avoid the hassle... Here is a patch
Patch by Morten Ofstad!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17450 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-03 17:15:45 +00:00
Chris Lattner
033a7d5389
Substantially cleanup/speedup the eq graphs pass by walking the callgraph
...
a DSGraph at a time instead of a function at a time. This is also more
correct, though it doesn't seem to fix any programs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17435 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-02 17:51:11 +00:00
Chris Lattner
e09e21dd1b
Fix typo, contributed by Henrik Bach!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17434 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-02 17:31:02 +00:00
Chris Lattner
4457f7ea46
Remove more dead methods
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17413 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-01 21:07:05 +00:00
Chris Lattner
dddc13f986
Delete a dead method
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17412 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-01 21:04:47 +00:00
Chris Lattner
fcb7d950bc
Rename FoldedGraph -> DSInfo to be consistent with other passes
...
delete some dead methods
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17410 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-01 21:02:23 +00:00
Chris Lattner
77408b8987
Get rid of the EquivClassGraphArgsInfo class, and the map that held it.
...
We only need one instance of the vector that it contains at a time.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17407 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-01 20:37:00 +00:00
Chris Lattner
68f9658fcb
Eliminate the cloneGraph method
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17405 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-01 19:54:06 +00:00
Chris Lattner
31d3f671be
* Do not refer to ActualCallees in CBU, when we can do it locally.
...
* *DO NOT* print CBU graphs when asked to print our own. This is just
FREAKING confusing and misleading: it's better to not print anything.
* Simplify and clean up some code
* Add some more paranoia assertion checking code that I found to track
down this bug:
* Fix a nasty bug that was causing us to crash on Prolangs-C++/objects,
where we were missing processing some graphs. This hunk is the bugfix:
- if (!I->isExternal() && !FoldedGraphsMap.count(I))
+ if (!I->isExternal() && !ValMap.count(I))
urg!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17386 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-31 23:41:26 +00:00
Chris Lattner
4bbf3dfbe6
Simplify graph traversal, improve grammar
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17383 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-31 23:01:34 +00:00
Chris Lattner
ab8544aa75
Do not do horrible things to the CBU graphs. In particular, we do NOT own
...
the CBU graphs, copy them instead of hacking on the CBU graphs.
Also, instead of forwarding request from ECGraphs clients to the CBU graphs
clients, service them ourselves.
Finally, remove a broken "optimization"
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17378 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-31 21:56:11 +00:00
Chris Lattner
5b3ed508f6
Add an assertion and a method
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17353 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-30 04:03:47 +00:00
Misha Brukman
717582290f
Fix grammar (i.e.)
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17343 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-29 19:20:42 +00:00
Misha Brukman
1b0d4f310b
The Alpha (tm) intrinsics aren't even being used
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17341 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-29 18:43:43 +00:00
John Criswell
9ba883c22f
Commented out the _Alloc_traits specialization entirely, as it is only
...
supported by specific versions of GCC.
It is left in place in case anyone wants to updated it for GCC 3.4 or
re-use it for earlier versions of GCC where it works.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17324 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-28 18:21:41 +00:00
John Criswell
cd74271a79
Only add the _Alloc_traits specialization in if we're compiling for
...
Linux and not compiling for Sparc.
This is still probably not correct, or portable, but it'll do for now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17321 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-28 17:31:46 +00:00
Brian Gaeke
6802b55b6b
Regenerated after fixing typo.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17303 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-28 05:06:45 +00:00
Reid Spencer
af362fc492
Add the HAVE_RAND48 define.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17285 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-27 23:09:31 +00:00
Chris Lattner
1fca5ff62b
Convert 'struct' to 'class' in various places to adhere to the coding standards
...
and work better with VC++. Patch contributed by Morten Ofstad!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17281 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-27 16:14:51 +00:00
Nate Begeman
0aafc3289c
Move destructor out of line to avoid vtable emission in every file that includes the header. Thanks to sabre.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17278 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-27 06:00:53 +00:00
Nate Begeman
4c3480169b
Fix the build by eliminating some more dead code. That'll learn me not to listen to Reid
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17275 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-27 05:44:23 +00:00
Nate Begeman
7853b38fd0
Remove dead data member in MRegisterInfo class. Thanks sabre!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17274 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-27 04:51:58 +00:00
Misha Brukman
28ab668c10
Wrap comments at 80 cols
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17261 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-26 18:00:03 +00:00
Chris Lattner
b2fc1fcb90
Fix header
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17259 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-26 16:19:57 +00:00
Misha Brukman
e757752e39
* DataTypesFix.h moved to AIXDataTypesFix.h
...
* Condition #inclusion of AIXDataTypes.h on the _AIX preprocessor symbol to
prevent extra I/O on non-AIX systems. Thus, no #ifdef in AIXDataTypes.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17257 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-26 16:15:18 +00:00
Chris Lattner
3dfbb558b5
Remove the unused MachineBasicBlock2IndexFunctor class.
...
Move method bodies that depend on <algorithm> out of line to
MachineBasicBlock.cpp. Patch contributed by Morten Ofstad!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17252 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-26 15:41:13 +00:00
Nate Begeman
01808b36c3
Remove method getRegClass from MRegisterInfo, as it is no longer used.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17243 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-26 06:00:31 +00:00
Chris Lattner
7cf820191c
Remove a dead class. Thanks to Morten Ofstad for pointing this out.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17222 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-25 19:07:43 +00:00
Chris Lattner
7a36ae8b01
Patch to support MSVC better, contributed by Morten Ofstad
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17215 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-25 18:40:47 +00:00
Chris Lattner
988d174e96
Patch to support MSVC correctly, contributed by Morten Ofstad!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17213 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-25 18:38:05 +00:00
Misha Brukman
cf1160b012
Fix grammar in comments to getSizeOf()
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17200 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-24 03:18:30 +00:00
Alkis Evlogimenos
7be2a12065
Improve comments and wrap to 80 columns.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17198 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-24 03:01:32 +00:00
Alkis Evlogimenos
60ab140298
Add ConstantExpr::getSizeOf(Type*).
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17196 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-24 01:41:10 +00:00
Misha Brukman
7e302d2f5f
If we're going to make the braces of functions line up for ease of readability
...
and aesthetic reasons, might as well finish the job
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17140 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-19 05:50:34 +00:00
Misha Brukman
938d53e143
Remove unnecessary spaces in function signature
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17139 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-19 05:49:46 +00:00
Misha Brukman
e196516fa7
* Fit constructor initializer on a single line
...
* Delete blank chars at end of line to fit into 80 cols
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17137 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-19 00:29:16 +00:00
Misha Brukman
e42aeece6c
Move code to redefine INT64_{MIN,MAX} on AIX/PowerPC to a separate header,
...
because #undef becomes commented out in DataTypes.h.in due to autoheader
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17135 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-18 22:14:48 +00:00
Nate Begeman
eaa13851a7
Initial implementation of the strength reduction for GEP instructions in
...
loops. This optimization is not turned on by default yet, but may be run
with the opt tool's -loop-reduce flag. There are many FIXMEs listed in the
code that will make it far more applicable to a wide range of code, but you
have to start somewhere :)
This limited version currently triggers on the following tests in the
MultiSource directory:
pcompress2: 7 times
cfrac: 5 times
anagram: 2 times
ks: 6 times
yacr2: 2 times
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17134 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-18 21:08:22 +00:00
Misha Brukman
103f2eede3
* AIX on Power defines INT64_MIN and INT64_MAX in ways that annoy GCC, so
...
special-case those definitions
* Add comments in #ifdef/#else/#endif clauses for ease of reading
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17132 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-18 18:35:21 +00:00
Chris Lattner
4caf5d563d
Fix miscompilations in the SparcV9 backend that were induced by this patch:
...
http://mail.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20041011/019311.html
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17130 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-18 17:19:20 +00:00
Reid Spencer
0998afdc1e
Declare a function in the correct namespace.
...
Patch contributed by Morten Ofstad. Thanks Morten!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17124 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-18 14:43:45 +00:00
Reid Spencer
394855a87d
Add HAVE_BZLIB_H and HAVE_ZLIB_H tests.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17092 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-17 17:07:29 +00:00
Chris Lattner
c8717b1624
Add support for the unreachable instruction
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17039 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-16 18:06:43 +00:00
Chris Lattner
7eb8a52332
Add new UndefValueVal type
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17038 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-16 18:06:07 +00:00
Chris Lattner
076b3f1693
Add new UnreachableInst class
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17037 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-16 18:05:54 +00:00
Chris Lattner
731cde9447
Add new unreachable instruction
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17036 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-16 18:05:37 +00:00
Chris Lattner
e1e922e090
Add new UndefValue class
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17035 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-16 18:05:25 +00:00
Chris Lattner
58fa099475
UndefValue's are constants
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17034 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-16 18:05:10 +00:00
Chris Lattner
f319e832e7
Move the implementation of the clone method for these classes to
...
Instructions.cpp, so that a vtable is not emitted into every translation unit
that uses the classes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17025 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-15 23:52:05 +00:00
Chris Lattner
ca4f6ebefc
Allow machine operands to represent global variables with offsets. This is
...
useful when you have a reference like:
int A[100];
void foo() { A[10] = 1; }
In this case, &A[10] is a single constant and should be treated as such.
Only MO_GlobalAddress and MO_ExternalSymbol are allowed to use this field, no
other operand type is.
This is another fine patch contributed by Jeff Cohen!!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17007 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-15 04:38:41 +00:00
Misha Brukman
ee3d2c8bc8
Convert tabs to spaces
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16988 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-14 18:47:56 +00:00
Chris Lattner
5fb00c5893
Make sure any client of Dominators.h links in Dominators.cpp
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16986 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-14 15:46:59 +00:00
Chris Lattner
15f47878e4
Remove unneeded typedef, patch by Morten Ofstad
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16984 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-14 14:51:09 +00:00
Chris Lattner
fbb719c7f0
Use explicit std:: qualification to avoid relying on Koenig lookup, which
...
VC++ does not do properly. Thanks to Morten Ofstad for the patch!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16955 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-13 15:11:23 +00:00
Chris Lattner
c87b1db927
Get rid of template templates that were preventing VC from compiling the
...
set_intersect template. Thanks to Morten Ofstad and Jeff Cohen for the
patch!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16954 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-13 15:09:21 +00:00
Chris Lattner
86e100bd9b
Update doco, make doxygen more, use standard dividers.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16948 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-13 04:44:53 +00:00
Misha Brukman
c2ab5a2a63
Fix file comment header
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16942 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-12 21:48:02 +00:00
Misha Brukman
481d56c5de
On second thought, OpaqueType is not really a good first-class type.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16941 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-12 20:35:04 +00:00
Chris Lattner
e004fd005d
Add comment
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16937 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-12 17:08:44 +00:00
Misha Brukman
207f2d4056
Opaque types are considered to be first-class.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16936 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-12 17:06:17 +00:00
Chris Lattner
5c3734e349
Add std:: prefix for compilers without correct koenig lookup implemented.
...
Patch contributed by Paolo Invernizzi
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16933 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-12 16:10:39 +00:00
Chris Lattner
84e48b860d
Right, calls have Operand#0 == the called function, don't forget this.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16930 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-12 04:45:20 +00:00
Chris Lattner
e80c8191c2
New header. Classes can be added as needed.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16928 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-12 04:20:46 +00:00
Chris Lattner
7fa6e666ec
Allow creation of GEP constantexprs with a vector of value* operands as
...
well as a vector of constant*'s. It turns out that this is more efficient
and all of the clients want to do that, so we should cater to them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16923 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-11 22:52:25 +00:00
Chris Lattner
b92f50fe60
Add long overdue methods
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16921 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-11 22:21:13 +00:00
Chris Lattner
d15165723c
Get friendly with Type
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16812 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-07 19:21:43 +00:00
Chris Lattner
485457f562
Change signature of this method again
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16810 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-07 19:19:12 +00:00
Chris Lattner
93a00e4ceb
Rename pass
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16801 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-07 04:12:02 +00:00
Misha Brukman
f5d9fa7e78
Undoxyfy internal method.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16774 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-06 17:19:58 +00:00
Misha Brukman
0cbd1fbb0e
Doxygen-ify comments
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16773 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-06 16:56:16 +00:00
Chris Lattner
df00115aa4
Rename method, change comment, add argument
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16771 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-06 16:34:23 +00:00
Chris Lattner
c441f1e1c7
Fix #include flavor
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16658 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-04 18:10:18 +00:00
Reid Spencer
0fd3061a28
Add HAVE_BZIP2 and HAVE_ZLIB
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16655 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-04 17:48:37 +00:00
Reid Spencer
469c34bdeb
Add a context for the callback so different compression scenarios can be
...
distinguished. Tidy up documentation. Thanks, Chris.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16652 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-04 17:29:25 +00:00
Reid Spencer
ce4e6ade3e
Minor corrections suggested by Chris' ever-watchful eye.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16651 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-04 17:26:26 +00:00
Reid Spencer
9737492204
First version of the MappedFile abstraction for operating system idependent
...
mapping of files. This first version uses mmap where its available. The
class needs to implement an alternate mechanism based on malloc'd memory
and file reading/writing for platforms without virtual memory.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16649 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-04 11:08:32 +00:00
Reid Spencer
460eb63612
First version of a support utility to provide generalized compression in
...
LLVM that handles availability and unavailability of bzip2 and zlib.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16648 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-04 10:49:41 +00:00
Alkis Evlogimenos
4b97f23a00
Add const version of getLastBlock() member function.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16625 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-30 21:42:02 +00:00
Alkis Evlogimenos
30eed211c9
Remove whitespace from the end of the line.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16624 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-30 21:39:47 +00:00
Brian Gaeke
f858f7f380
Add accessor function prototypes for reoptimizer support passes.
...
Make accessors return FunctionPass* as appropriate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16619 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-30 20:13:55 +00:00
Chris Lattner
70ca358b7d
* Wrap some comments to 80 cols
...
* Add const_iterator stuff
* Add a print method, which means that I can now call dump() from the
debugger.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16612 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-30 15:59:17 +00:00
Chris Lattner
49db6fe193
Be consistent with our naming
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16552 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-28 18:37:00 +00:00
Chris Lattner
dcc4a6f705
Capture information about whether the target instructions have delay slots
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16550 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-28 18:33:50 +00:00
Alkis Evlogimenos
c72c617a4e
Add includes and use std:: for standard library calls to make code
...
compile on windows. This patch was contributed by Paolo Invernizzi.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16539 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-28 14:42:44 +00:00
Alkis Evlogimenos
148d2065e4
Use class instead of struct for defining classes. This unbreaks the
...
build on windows. Patch contributed by Paolo Invernizzi!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16531 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-28 01:59:17 +00:00
Reid Spencer
45392b694f
Clean up the interface of TimeValue:
...
- get rid of unneeded constructors
- get rid of duplicate methods/constructors/operators
- normalize to LLVM coding standards
- wrap to 80 columns.
Many thanks to Alkis Evlogimenos for his suggestions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16514 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-25 08:29:54 +00:00
Reid Spencer
9926c31351
Initial implementation of the TimeValue abstraction.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16511 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-24 23:25:19 +00:00
John Criswell
4046846d2c
Updated the last two header files so that they are configured with
...
AC_CONFIG_HEADERS. This should prevent LLVM from needlessly re-compiling
on a re-configure.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16510 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-24 21:19:06 +00:00
John Criswell
9f011866e9
Modified hash_map and hash_set configuration so that they are not
...
regenerated on every run of configure.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16509 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-24 18:28:00 +00:00
John Criswell
5fbb1f8fcc
Configure Datatypes.h.in with AC_CONFIG_HEADERS. This should prevent it
...
from being re-generated if the new version is identical to the old version.
Hence, it should save us some recompiling after re-configures.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16506 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-24 13:28:51 +00:00
Reid Spencer
530036b5e8
Change Value from a "struct" to a "class" so that VC 7.1 doesn't generate
...
missing symbols when its referenced as a class.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16496 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-23 14:49:45 +00:00
Reid Spencer
358e685597
Update to add the HAVE_UINT64_T test and the STACK_DIRECTION indicator.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16480 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-22 15:32:08 +00:00
Reid Spencer
023f212f3c
The alloca function, strangely enough, is found in the malloc.h header file
...
on MINGW platform. Provide an #elseif case to #include malloc.h for this
platform if malloc.h is found.
Patch provided by Henrik Bach. Thanks Henrik!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16479 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-22 15:28:32 +00:00
Chris Lattner
e704e49ea7
This is an empty directory
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16459 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-21 16:26:13 +00:00
Chris Lattner
9c15698355
This is a dead directory now
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16458 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-21 16:25:41 +00:00
Chris Lattner
b12914bfc0
'Pass' should now not be derived from by clients. Instead, they should derive
...
from ModulePass. Instead of implementing Pass::run, then should implement
ModulePass::runOnModule.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16436 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-20 04:48:05 +00:00