1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 19:12:56 +02:00
Commit Graph

2600 Commits

Author SHA1 Message Date
Reid Spencer
1e51643433 Make the size() method const
llvm-svn: 18852
2004-12-13 02:58:51 +00:00
Reid Spencer
285b0e4cda For PR351:\
* Modify file reading to use sys::MappedFile \
* Use sys::Path instead of std::string

llvm-svn: 18851
2004-12-13 02:58:40 +00:00
Reid Spencer
bb21c8cf16 Add LLVMGCCDIR for path lookup
llvm-svn: 18850
2004-12-13 02:58:28 +00:00
Reid Spencer
cc8a470ea6 Make the OpenAndLoad functions have an ErrorMessage argument.
llvm-svn: 18849
2004-12-13 02:58:16 +00:00
Reid Spencer
5be572d3b4 Completely rewrite the interface to be class based
llvm-svn: 18848
2004-12-13 02:58:05 +00:00
Reid Spencer
b4cb7f30c3 For PR351:\
* Consolidate path retrieval into just two methods. \
* Add FindLibrary as a convenience function. \
* Add isDynamicLibrary for testing for dynamic libs. \
* Make toString constant and reference clean.

llvm-svn: 18847
2004-12-13 02:57:53 +00:00
Reid Spencer
71746efbf5 For PR351:Remove the file type checking methods (now in sys::Path)
llvm-svn: 18846
2004-12-13 02:57:41 +00:00
Reid Spencer
e2af9dc813 Path::get -> Path::toString
llvm-svn: 18785
2004-12-11 00:14:15 +00:00
Chris Lattner
d104c10aa5 Add missing accessor.
llvm-svn: 18775
2004-12-10 20:35:47 +00:00
Chris Lattner
a856de4013 New prototype
llvm-svn: 18751
2004-12-10 07:55:01 +00:00
Jeff Cohen
2d53514c83 Fix residual Visual Studio build problems
llvm-svn: 18688
2004-12-09 05:51:11 +00:00
Chris Lattner
8cb5c70203 Move method out of line
llvm-svn: 18666
2004-12-08 21:04:10 +00:00
Chris Lattner
5cc8fcda9e Define the pointer hash struct before the string one, to improve compatibility
with ICC.  Patch contributed by Bjørn Wennberg.

llvm-svn: 18663
2004-12-08 20:59:18 +00:00
Alkis Evlogimenos
f57d029464 Use getOperand() and remove getElementAt() function.
llvm-svn: 18612
2004-12-08 03:45:20 +00:00
Reid Spencer
8db74faeb6 For PR387:\
Add runPass methods to remove -Woverloaded-virtual warnings are not \
present and circumvent possible inheritance bugs.

llvm-svn: 18600
2004-12-07 08:11:11 +00:00
Reid Spencer
d50c86f078 For PR387:\
Make only one print method to avoid overloaded virtual warnings when \
compiled with -Woverloaded-virtual

llvm-svn: 18589
2004-12-07 04:03:45 +00:00
Alkis Evlogimenos
806fb993fe Add accessors for Constants in a ConstantStruct.
llvm-svn: 18550
2004-12-05 20:09:18 +00:00
Reid Spencer
6b2113de16 Fix PR139: \
Add support for ordered linking with the LinkItems function

llvm-svn: 18546
2004-12-05 19:14:43 +00:00
Chris Lattner
cdcd7126f1 Add a new method
llvm-svn: 18531
2004-12-05 06:43:27 +00:00
Chris Lattner
f9f7c0c5d8 Fix typeo
llvm-svn: 18530
2004-12-05 06:33:15 +00:00
Reid Spencer
fc2bf75791 Make a const method const
llvm-svn: 18524
2004-12-05 05:17:34 +00:00
Chris Lattner
e2b8d886c9 Move the strip pass from Scalar to IPO lib
llvm-svn: 18438
2004-12-02 21:24:19 +00:00
Chris Lattner
6adc42af75 Remove dead field
llvm-svn: 18412
2004-12-02 02:35:38 +00:00
Chris Lattner
e561ef0261 Add method
llvm-svn: 18368
2004-11-30 02:51:53 +00:00
Reid Spencer
fea77c07f6 Add in some methods for use by the JIT. LoadLibraryPermanently brings the
library into the address space permanently. SearchForAddressOfSymbol looks
in all previously permanently loaded libraries and any currently open
libraries for a symbol, instead of just one library like GetAddressOfSymbol

llvm-svn: 18354
2004-11-29 13:27:56 +00:00
Reid Spencer
71ebca79cb Changes resulting from AC_LIB_LTDL usage.
llvm-svn: 18350
2004-11-29 12:36:16 +00:00
Reid Spencer
dba402cd23 Don't include ltdl.h any more. Its nested in lib/System now.
llvm-svn: 18347
2004-11-29 12:12:11 +00:00
Reid Spencer
19f0bd4d59 Make the default constructor cause the program's symbols to be loaded as
if it was a dynamic library.

llvm-svn: 18340
2004-11-29 10:38:54 +00:00
Chris Lattner
c57746a1e0 Change interface to this method a bit
llvm-svn: 18274
2004-11-27 18:37:04 +00:00
Chris Lattner
ab36efe42b Add a new interface
llvm-svn: 18266
2004-11-26 21:36:25 +00:00
Reid Spencer
6bfb910955 Remove HAVE_BZLIB and HAVE_BZIP2. We always have bzip2 now.
llvm-svn: 18254
2004-11-25 20:21:53 +00:00
Reid Spencer
0fd67aa7c9 Restrict the interface to not allow algorithm selection
llvm-svn: 18248
2004-11-25 19:37:42 +00:00
Chris Lattner
70c19defde Fix the FIXME, nuke the JIT specific forceCompilationOf method.
llvm-svn: 18131
2004-11-22 21:54:35 +00:00
Chris Lattner
39b616869e These methods are now obsolete
llvm-svn: 18128
2004-11-22 21:48:01 +00:00
Chris Lattner
f14eff8940 Add a new debug intrinsic parent class. Patch contributed by Michael
McCracken, thanks!

llvm-svn: 18107
2004-11-22 17:18:05 +00:00
Chris Lattner
2dbdf38808 This is the proper code for this method, thanks to Reid for getting CVS working
again.

llvm-svn: 18103
2004-11-22 16:54:54 +00:00
John Criswell
fbf58400ce Moved into the poolalloc tree.
llvm-svn: 18102
2004-11-22 16:32:35 +00:00
Reid Spencer
7aa1c0b8fb Implement a missing function called by JIT/Emitter.cpp but never defined.
NOTE: Its not clear that this implementation is correct.
CHRIS: Please review this!
llvm-svn: 18101
2004-11-22 12:38:36 +00:00
Chris Lattner
ed19f4fe7d Fix a warning
llvm-svn: 18083
2004-11-21 04:42:32 +00:00
Chris Lattner
3765dc4ebd Add another bit, to make the JIT a bit more efficient.
llvm-svn: 18077
2004-11-21 03:27:13 +00:00
Chris Lattner
6d1fb33657 ignore generated files
llvm-svn: 18073
2004-11-21 00:01:54 +00:00
Chris Lattner
32fb560b34 Ignore generated files
llvm-svn: 18071
2004-11-21 00:00:04 +00:00
Chris Lattner
34db55fe83 Ignore files
llvm-svn: 18070
2004-11-20 23:58:43 +00:00
Chris Lattner
53ea58d4c1 Change this interface a bit
llvm-svn: 18063
2004-11-20 23:52:43 +00:00
Chris Lattner
ebb79ba538 Add new methods that a target should implement
llvm-svn: 18060
2004-11-20 23:50:02 +00:00
Chris Lattner
62d04b04f0 Add missing #include
llvm-svn: 18058
2004-11-20 23:40:54 +00:00
Reid Spencer
f381e95cc6 Distinguish between BSD4.4 and SVR4 symbol tables
llvm-svn: 18044
2004-11-20 07:29:40 +00:00
Chris Lattner
c0599d0f14 Add getCurrentPCOffset() and addRelocation() methods.
llvm-svn: 18034
2004-11-20 03:44:39 +00:00
Chris Lattner
20654daf37 Add the getRelocationType method that I forgot
llvm-svn: 18033
2004-11-20 03:43:50 +00:00
Chris Lattner
bae6c00a15 Allow targets to implement relocation support.
llvm-svn: 18032
2004-11-20 03:43:27 +00:00
Chris Lattner
674e29ccde New file
llvm-svn: 18029
2004-11-20 03:05:50 +00:00
Chris Lattner
6e17c0f19e Remove dead #include
llvm-svn: 18027
2004-11-20 02:17:03 +00:00
Chris Lattner
f9b6c00d88 External symbols are const char*'s now, change this to match.
llvm-svn: 18008
2004-11-19 20:56:22 +00:00
Chris Lattner
2a37cb2ef9 Instead of storing std::string's for ExternalSymbol references, rely on the
fact that all ExternalSymbols are actually string literals with static storage.
Thus we don't have to do anything special to hold them and we certainly don't
have to copy string data around.

llvm-svn: 18007
2004-11-19 20:46:15 +00:00
Chris Lattner
783a12cad5 Add static functions to clear singleton maps. Patch contributed by
Morten Ofstad!

llvm-svn: 17994
2004-11-19 16:39:04 +00:00
Chris Lattner
da8484d5d3 These methods are long gone, ConstantPointerRef is dead.
llvm-svn: 17993
2004-11-19 16:25:42 +00:00
Reid Spencer
a181a37bb4 Make findModulesDefiningSymbols modify its symbols argument so we can \
eliminate symbols defined by the archive efficiently

llvm-svn: 17976
2004-11-19 03:18:22 +00:00
Chris Lattner
1239b47b6e Add support for llvm.dbg.stoppoint
llvm-svn: 17969
2004-11-18 21:41:16 +00:00
Chris Lattner
37651b157b Update comments, now that CPR's are gone, inline the methods
llvm-svn: 17957
2004-11-18 17:46:57 +00:00
Reid Spencer
ef9391e69b Include ltdl.h if we have it.
llvm-svn: 17952
2004-11-18 09:50:00 +00:00
Reid Spencer
058e3d2b5e Add checks for HAVE_LTDL_H and HAVE_LT_DLOPEN
llvm-svn: 17951
2004-11-18 09:49:13 +00:00
Reid Spencer
c1871a4eaa 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.

llvm-svn: 17940
2004-11-18 04:33:39 +00:00
Alkis Evlogimenos
b9e38d3cc5 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.

llvm-svn: 17923
2004-11-17 21:02:25 +00:00
Chris Lattner
fd98a3195a New prototype for lowerpacked pass.
llvm-svn: 17915
2004-11-17 18:01:49 +00:00
Reid Spencer
ee379f96f0 Make the comment for LinkFiles a bit more precise and easily understood.
llvm-svn: 17899
2004-11-16 16:46:22 +00:00
Reid Spencer
cdc0b6d962 Standardize on 'class' instead of 'struct'. Gets rid of warnings in VC++
Patch contributed by Jeff Cohen.

llvm-svn: 17889
2004-11-16 06:58:55 +00:00
Reid Spencer
032a3cc7de 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.

llvm-svn: 17881
2004-11-16 06:46:55 +00:00
Chris Lattner
7a2de9f653 Document this as clobbering the second arg, make the second arg be non-const
llvm-svn: 17879
2004-11-16 06:41:21 +00:00
Reid Spencer
bcef3fef1d Per code review:
* get rid of (void) construct in function declarations
* make toString a const member
* add a default implementation of toString for Win32

llvm-svn: 17873
2004-11-16 06:22:17 +00:00
Reid Spencer
4031ff44bb 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.

llvm-svn: 17872
2004-11-16 06:15:19 +00:00
Reid Spencer
fdf8ac8d29 Per code review:
*Implement/Document the cl::extrahelp feature instead of the MoreHelp ptr.

llvm-svn: 17871
2004-11-16 06:11:52 +00:00
Chris Lattner
40539fe637 Add an accessor
llvm-svn: 17865
2004-11-15 23:20:19 +00:00
Reid Spencer
625a480806 Remove useless/confusing namespace qualifier.
llvm-svn: 17852
2004-11-15 21:27:05 +00:00
Chris Lattner
60e159a806 Warning fixes for VC++, contributed by Morten Ofstad!
llvm-svn: 17831
2004-11-15 19:02:35 +00:00
Reid Spencer
bfc924424d Changes necessary to enable linking of archives without LLVM symbol tables.
llvm-svn: 17811
2004-11-15 01:20:11 +00:00
Reid Spencer
32924c8d62 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.

llvm-svn: 17808
2004-11-14 23:29:00 +00:00
Reid Spencer
e902694309 *Make naming convention consistent.*Add convertion to/from Unix Epoch time.*Add ability to convert to readable string.
llvm-svn: 17762
2004-11-14 21:53:55 +00:00
Reid Spencer
73e4677779 Make the remove*OnSignal functions deal with Paths not strings
llvm-svn: 17761
2004-11-14 21:53:09 +00:00
Reid Spencer
63a08a4cef *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.
llvm-svn: 17760
2004-11-14 21:52:22 +00:00
Reid Spencer
858bc78223 Allow explicit closing of the MappedFile, before destruction
llvm-svn: 17759
2004-11-14 21:51:36 +00:00
Reid Spencer
df6952563a Linker is its own module now. Moved to include/llvm/Linker.h
llvm-svn: 17758
2004-11-14 21:50:50 +00:00
Reid Spencer
7622437947 Add higher level interface to simplify use of Compressor
llvm-svn: 17757
2004-11-14 21:50:00 +00:00
Reid Spencer
2505c4beff Add the MoreHelp function pointer. If non-null, this specifies a function to be called to print out additional help information
llvm-svn: 17756
2004-11-14 21:49:13 +00:00
Reid Spencer
0635c876ce Remove ReadArchiveFile (functionality moved to Archive.h). Add an alternate form for GetBytecodeSymbols.
llvm-svn: 17755
2004-11-14 21:48:27 +00:00
Reid Spencer
760e7993c4 Complete rewrite to get first working version.
llvm-svn: 17754
2004-11-14 21:47:41 +00:00
Reid Spencer
9008154865 Interface to Linker (revised/expanded from Support/Linker.h)
llvm-svn: 17752
2004-11-14 21:46:08 +00:00
Misha Brukman
c7cdc44158 Add GhostLinkage for marking functions before they're fully materialized
llvm-svn: 17747
2004-11-14 21:02:28 +00:00
Reid Spencer
2f680d5cfd Moved from include/llvm/Support/Linker.h
llvm-svn: 17743
2004-11-14 20:21:58 +00:00
Chris Lattner
bbd13a8e4e Add useful method, minor cleanups
llvm-svn: 17715
2004-11-13 23:28:10 +00:00
Chris Lattner
1d52a24587 Add support for shifts
llvm-svn: 17702
2004-11-13 19:32:45 +00:00
Reid Spencer
97f373cf98 Provide conversion from posix time.
llvm-svn: 17656
2004-11-09 20:29:10 +00:00
Reid Spencer
28ceb24005 * Implement getStatusInfo for getting stat(2) like information
* Implement createTemporaryFile for mkstemp(3) functionality
* Fix isBytecodeFile to accept llvc magic # (compressed) as bytecode.

llvm-svn: 17654
2004-11-09 20:26:31 +00:00
Misha Brukman
eb1d9f84eb Remove extra spaces
llvm-svn: 17629
2004-11-08 19:01:03 +00:00
Reid Spencer
941a856338 Make writing compressed bytecode the default.
llvm-svn: 17625
2004-11-08 17:35:34 +00:00
Misha Brukman
14f6ade91b Add method to delete machine code generated for a Function
llvm-svn: 17600
2004-11-07 23:58:02 +00:00
Reid Spencer
0c3d88e887 Make compression the default on writing.
llvm-svn: 17577
2004-11-07 18:18:11 +00:00
Reid Spencer
a68b503c6e * Provide option for specifying bytecode compression
* Enabled bytecode compression by default.

llvm-svn: 17563
2004-11-07 05:30:43 +00:00
Chris Lattner
6807c1681b This is V9 specific stuff
llvm-svn: 17546
2004-11-07 00:42:29 +00:00
Reid Spencer
a81994464f Add support for compressed bytecode
llvm-svn: 17535
2004-11-06 23:17:23 +00:00
Reid Spencer
cb8f378199 Provide an interface for getting just the external symbols from a
Bytecode file.

llvm-svn: 17502
2004-11-06 08:54:47 +00:00
Reid Spencer
91df2e92d3 Deprecate constructors we don't want users to use.
Temporarily comment out two interface methods we might not implement.

llvm-svn: 17501
2004-11-06 08:53:59 +00:00
Reid Spencer
7090e6a875 Stop propagating method names that violate the coding standard
llvm-svn: 17498
2004-11-05 22:15:36 +00:00
Reid Spencer
a23368c9ec Go ahead and trust the client not to mess with the ModuleProvider* returned
by the findModuleContainingSymbol method.

llvm-svn: 17491
2004-11-05 18:48:02 +00:00
Reid Spencer
a6e5980b7a * Documentation corrections (thanks to Chris for nit-picking)
* Remove dead typedefs.
* Redefine how getAllPaths treats its argument.

llvm-svn: 17489
2004-11-05 17:44:26 +00:00
Reid Spencer
91df40213f 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.

llvm-svn: 17487
2004-11-05 09:19:17 +00:00
Chris Lattner
39cfd1e916 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!

llvm-svn: 17450
2004-11-03 17:15:45 +00:00
Chris Lattner
53a16841da Fix typo, contributed by Henrik Bach!
llvm-svn: 17434
2004-11-02 17:31:02 +00:00
Chris Lattner
5242fcc785 Add an assertion and a method
llvm-svn: 17353
2004-10-30 04:03:47 +00:00
Misha Brukman
c6897a03b6 Fix grammar (i.e.)
llvm-svn: 17343
2004-10-29 19:20:42 +00:00
Misha Brukman
45881be596 The Alpha (tm) intrinsics aren't even being used
llvm-svn: 17341
2004-10-29 18:43:43 +00:00
John Criswell
52e32cacff 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.

llvm-svn: 17324
2004-10-28 18:21:41 +00:00
John Criswell
5d67a2e428 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.

llvm-svn: 17321
2004-10-28 17:31:46 +00:00
Brian Gaeke
e2b2076b46 Regenerated after fixing typo.
llvm-svn: 17303
2004-10-28 05:06:45 +00:00
Reid Spencer
6fb57becbd Add the HAVE_RAND48 define.
llvm-svn: 17285
2004-10-27 23:09:31 +00:00
Chris Lattner
dd0094e4ed Convert 'struct' to 'class' in various places to adhere to the coding standards
and work better with VC++.  Patch contributed by Morten Ofstad!

llvm-svn: 17281
2004-10-27 16:14:51 +00:00
Nate Begeman
2a64d462d9 Move destructor out of line to avoid vtable emission in every file that includes the header. Thanks to sabre.
llvm-svn: 17278
2004-10-27 06:00:53 +00:00
Nate Begeman
a6fafb1f64 Fix the build by eliminating some more dead code. That'll learn me not to listen to Reid
llvm-svn: 17275
2004-10-27 05:44:23 +00:00
Nate Begeman
3a55e171f1 Remove dead data member in MRegisterInfo class. Thanks sabre!
llvm-svn: 17274
2004-10-27 04:51:58 +00:00
Misha Brukman
6d5e98bb06 Wrap comments at 80 cols
llvm-svn: 17261
2004-10-26 18:00:03 +00:00
Chris Lattner
85c502ec31 Fix header
llvm-svn: 17259
2004-10-26 16:19:57 +00:00
Misha Brukman
4c1e87f2d9 * 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

llvm-svn: 17257
2004-10-26 16:15:18 +00:00
Chris Lattner
fabd2aa5b5 Remove the unused MachineBasicBlock2IndexFunctor class.
Move method bodies that depend on <algorithm> out of line to
MachineBasicBlock.cpp.  Patch contributed by Morten Ofstad!

llvm-svn: 17252
2004-10-26 15:41:13 +00:00
Nate Begeman
4363d6203f Remove method getRegClass from MRegisterInfo, as it is no longer used.
llvm-svn: 17243
2004-10-26 06:00:31 +00:00
Chris Lattner
94f00d243c Remove a dead class. Thanks to Morten Ofstad for pointing this out.
llvm-svn: 17222
2004-10-25 19:07:43 +00:00
Chris Lattner
ec942219ad Patch to support MSVC better, contributed by Morten Ofstad
llvm-svn: 17215
2004-10-25 18:40:47 +00:00
Chris Lattner
3286872a18 Patch to support MSVC correctly, contributed by Morten Ofstad!
llvm-svn: 17213
2004-10-25 18:38:05 +00:00
Misha Brukman
dd92de83ca Fix grammar in comments to getSizeOf()
llvm-svn: 17200
2004-10-24 03:18:30 +00:00
Alkis Evlogimenos
75aa7bdf21 Improve comments and wrap to 80 columns.
llvm-svn: 17198
2004-10-24 03:01:32 +00:00
Alkis Evlogimenos
a893aad8fb Add ConstantExpr::getSizeOf(Type*).
llvm-svn: 17196
2004-10-24 01:41:10 +00:00
Misha Brukman
c0ac8cae1c 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

llvm-svn: 17140
2004-10-19 05:50:34 +00:00
Misha Brukman
be39800a89 Remove unnecessary spaces in function signature
llvm-svn: 17139
2004-10-19 05:49:46 +00:00
Misha Brukman
fd9bef227a * Fit constructor initializer on a single line
* Delete blank chars at end of line to fit into 80 cols

llvm-svn: 17137
2004-10-19 00:29:16 +00:00
Misha Brukman
56f2d0e5fe 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

llvm-svn: 17135
2004-10-18 22:14:48 +00:00
Nate Begeman
49e38c2185 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

llvm-svn: 17134
2004-10-18 21:08:22 +00:00
Misha Brukman
07479efa84 * 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

llvm-svn: 17132
2004-10-18 18:35:21 +00:00
Chris Lattner
9f1c4d5b67 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

llvm-svn: 17130
2004-10-18 17:19:20 +00:00
Reid Spencer
a5b7b341a4 Declare a function in the correct namespace.
Patch contributed by Morten Ofstad. Thanks Morten!

llvm-svn: 17124
2004-10-18 14:43:45 +00:00
Reid Spencer
eb6a51b3f0 Add HAVE_BZLIB_H and HAVE_ZLIB_H tests.
llvm-svn: 17092
2004-10-17 17:07:29 +00:00
Chris Lattner
cd83905b39 Add support for the unreachable instruction
llvm-svn: 17039
2004-10-16 18:06:43 +00:00
Chris Lattner
6dd0bb3d27 Add new UndefValueVal type
llvm-svn: 17038
2004-10-16 18:06:07 +00:00
Chris Lattner
423a692a5b Add new UnreachableInst class
llvm-svn: 17037
2004-10-16 18:05:54 +00:00
Chris Lattner
88ba528955 Add new unreachable instruction
llvm-svn: 17036
2004-10-16 18:05:37 +00:00
Chris Lattner
1217610926 Add new UndefValue class
llvm-svn: 17035
2004-10-16 18:05:25 +00:00
Chris Lattner
56508557cf UndefValue's are constants
llvm-svn: 17034
2004-10-16 18:05:10 +00:00
Chris Lattner
b222ad66ef 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.

llvm-svn: 17025
2004-10-15 23:52:05 +00:00
Chris Lattner
65976f4178 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!!

llvm-svn: 17007
2004-10-15 04:38:41 +00:00
Misha Brukman
e20eb48c53 Convert tabs to spaces
llvm-svn: 16988
2004-10-14 18:47:56 +00:00
Chris Lattner
df0849be71 Make sure any client of Dominators.h links in Dominators.cpp
llvm-svn: 16986
2004-10-14 15:46:59 +00:00
Chris Lattner
1bd3fdd438 Remove unneeded typedef, patch by Morten Ofstad
llvm-svn: 16984
2004-10-14 14:51:09 +00:00
Chris Lattner
ae45589b0f Use explicit std:: qualification to avoid relying on Koenig lookup, which
VC++ does not do properly.  Thanks to Morten Ofstad for the patch!

llvm-svn: 16955
2004-10-13 15:11:23 +00:00