Chris Lattner
8044aa8d33
add a new method.
...
llvm-svn: 20293
2005-02-24 02:37:26 +00:00
Chris Lattner
fb1c36cdb3
Add new method.
...
llvm-svn: 20287
2005-02-23 16:50:59 +00:00
Chris Lattner
a43f090dcd
remove some more dead templates and a dead macro.
...
llvm-svn: 20279
2005-02-22 23:36:37 +00:00
Chris Lattner
2024801b74
Remove a bunch of dead templates.
...
llvm-svn: 20275
2005-02-22 23:19:42 +00:00
Jeff Cohen
b83e650f1f
Change __MINGW to __MINGW32__. Patch submitted by Henrik Bach.
...
llvm-svn: 20243
2005-02-19 03:01:13 +00:00
Chris Lattner
10f39c27ee
Map doubles from integers, not the double itself.
...
llvm-svn: 20229
2005-02-17 20:16:58 +00:00
Chris Lattner
e7d2b05fb0
Add a new method to make it easy to update graphs.
...
llvm-svn: 20194
2005-02-15 18:40:55 +00:00
Chris Lattner
c2aa286697
Move private helper function into the only .cpp file that uses it.
...
llvm-svn: 20169
2005-02-13 23:14:06 +00:00
Chris Lattner
4d06277d43
Do not replace ostream << Module*, only ostream << Module&.
...
llvm-svn: 20157
2005-02-13 19:15:01 +00:00
Chris Lattner
4d1409f15a
Add a new replaceSymbolicValuesWithConcrete method to the SCEV class,
...
adjust const'ness a bit to be more correct.
llvm-svn: 20145
2005-02-13 04:34:51 +00:00
Chris Lattner
7636e86e7e
Add some iterators that should have come in long ago
...
llvm-svn: 20085
2005-02-09 03:14:29 +00:00
Chris Lattner
a378bec169
Hopefully fix the build on Darwin with GCC 3.3
...
llvm-svn: 20064
2005-02-07 16:09:01 +00:00
Chris Lattner
9b289130f7
Eliminate the explicit opcode field in ConstantExpr, using the SubclassData
...
field to hold it instead. This shrinks memory usage for 176.gcc from
57628728 to 57598144 bytes, a small reduction of about 30K.
llvm-svn: 20047
2005-02-05 02:00:12 +00:00
Chris Lattner
7eb45f89a5
Eliminate the explicit volatile fields in LoadInst and StoreInst. This shrinks
...
LoadInst from 60 -> 56 bytes and StoreInst from 76 -> 72 bytes.
Note however, that this doesn't actually save any memory on common systems
where 'malloc' returns 8-byte aligned memory, as the saved space is replaced
by useless alignment padding. :(
llvm-svn: 20046
2005-02-05 01:44:18 +00:00
Chris Lattner
de2bf4ed11
SubclassID is really a small field. Split it into half and let subclasses
...
play with the unused part.
llvm-svn: 20043
2005-02-05 01:37:44 +00:00
Chris Lattner
0febe1ed81
Add some new members
...
llvm-svn: 20034
2005-02-04 19:58:06 +00:00
Chris Lattner
820991042d
add new member
...
llvm-svn: 20033
2005-02-04 19:57:57 +00:00
Chris Lattner
22eb2f789e
Add a new method.
...
llvm-svn: 20017
2005-02-03 18:40:05 +00:00
Chris Lattner
3757dc8600
remove dead method
...
llvm-svn: 19977
2005-02-01 21:37:06 +00:00
Chris Lattner
fdbedbbb45
Switch from using an ilist for uses to using a custom doubly linked list.
...
This list does not provide the ability to go backwards in the list (its
more of an unordered collection, stored in the shape of a list).
This change means that use iterators are now only forward iterators, not
bidirectional.
This improves the memory usage of use lists from '5 + 4*#use' per value to
'1 + 4*#use'. While it would be better to reduce the multiplied factor,
I'm not smart enough to do so. This list also has slightly more efficient
operators for manipulating list nodes (a few less loads/stores), due to not
needing to be able to iterate backwards through the list.
This change reduces the memory footprint required to hold 176.gcc from
66.025M -> 57.687M, a 14% reduction. It also speeds up the compiler,
7.73% in the case of bytecode loading alone (release build loading 176.gcc).
llvm-svn: 19956
2005-02-01 01:22:06 +00:00
Chris Lattner
ee6bc42f3e
* Make some methods more const correct.
...
* Change the FunctionCalls and AuxFunctionCalls vectors into std::lists.
This makes many operations on these lists much more natural, and avoids
*exteremely* expensive copying of DSCallSites (e.g. moving nodes around
between lists, erasing a node from not the end of the vector, etc).
With a profile build of analyze, this speeds up BU DS from 25.14s to
12.59s on 176.gcc. I expect that it would help TD even more, but I don't
have data for it.
This effectively eliminates removeIdenticalCalls and children from the
profile, going from 6.53 to 0.27s.
llvm-svn: 19939
2005-01-30 23:51:02 +00:00
Chris Lattner
92b24431d9
Improve spelling
...
llvm-svn: 19931
2005-01-30 00:13:34 +00:00
Chris Lattner
382abe80a0
Improve conformance with the Misha spelling benchmark suite
...
llvm-svn: 19930
2005-01-30 00:09:23 +00:00
Chris Lattner
e9c443b500
Adjust to ilist changes.
...
Based on the ilist changes avoid allocating an entire Use object for the
end of the Use chain. This saves 8 bytes of memory for each Value allocated
in the program. For 176.gcc, this reduces us from 69.5M -> 66.0M, a 5.3%
memory savings.
llvm-svn: 19925
2005-01-29 18:43:28 +00:00
Chris Lattner
aa4ae8f5b3
Adjust to ilist changes.
...
llvm-svn: 19923
2005-01-29 18:41:12 +00:00
Chris Lattner
1367f39eb9
Adjust to changes in ilist
...
llvm-svn: 19922
2005-01-29 18:41:00 +00:00
Chris Lattner
3a8cb1178e
Rename createNode -> createSentinal.
...
Add a new method, destroySentinal, that is used to delete it (instead of
requiring use of delete.
llvm-svn: 19921
2005-01-29 18:40:19 +00:00
Chris Lattner
3f035ee52d
There is no reason to include ostream here, include iosfwd instead.
...
This file was schizophrenic when it came to representing sizes. In some
cases it represented them as 'unsigneds', which are not enough for 64-bit
hosts. In other cases, it represented them as uint64_t's, which are
inefficient for 32-bit hosts.
This patch unifies all of the sizes to use size_t instead.
llvm-svn: 19917
2005-01-29 17:16:07 +00:00
Chris Lattner
41114c90af
Fix quotes.
...
llvm-svn: 19909
2005-01-29 06:29:45 +00:00
Jeff Cohen
8d28a62773
Unbreak VC++ build
...
llvm-svn: 19908
2005-01-29 06:27:16 +00:00
Chris Lattner
3b3e7f7cc2
Memory used is a delta between memuse at the start of the time and the
...
memuse at the end, thus it is signed.
llvm-svn: 19904
2005-01-29 05:21:16 +00:00
Chris Lattner
d8266ae3dd
Adjust to changes in the User class.
...
llvm-svn: 19888
2005-01-29 00:33:00 +00:00
Chris Lattner
941fce0bb5
Adjust to changes in the User class. Introduce a new UnaryInstruction
...
class.
llvm-svn: 19887
2005-01-29 00:32:51 +00:00
Chris Lattner
1567599aae
Adjust to user changes.
...
llvm-svn: 19886
2005-01-29 00:32:00 +00:00
Chris Lattner
6e2367383d
Many changes to cope with the User.h changes. Instructions now generally
...
directly embed their operands.
llvm-svn: 19885
2005-01-29 00:31:36 +00:00
Chris Lattner
91422cffe4
Adjust to User.h changes.
...
llvm-svn: 19884
2005-01-29 00:30:52 +00:00
Chris Lattner
c6c1106909
Instead of storing operands as std::vector<Use>, just maintain a pointer
...
and num operands in the User class. this allows us to embed the operands
directly in the subclasses if possible. For example, for binary operators
we store the two operands in the derived class.
The has several effects:
1. it improves locality because the operands and instruction are together
2. it makes accesses to operands faster (one less load) if you access them
through the derived class pointer. For example this:
Value *GetBinaryOperatorOp(BinaryOperator *I, int i) {
return I->getOperand(i);
}
Was compiled to:
_Z19GetBinaryOperatorOpPN4llvm14BinaryOperatorEi:
movl 4(%esp), %edx
movl 8(%esp), %eax
sall $4, %eax
movl 24(%edx), %ecx
addl %ecx, %eax
movl (%eax), %eax
ret
and is now compiled to:
_Z19GetBinaryOperatorOpPN4llvm14BinaryOperatorEi:
movl 8(%esp), %eax
movl 4(%esp), %edx
sall $4, %eax
addl %edx, %eax
movl 44(%eax), %eax
ret
Accesses through "Instruction*" are unmodified.
3. This reduces memory consumption (by about 3%) by eliminating 1 word of
vector overhead and a malloc header on a seperate object.
4. This speeds up gccas about 10% (both debug and release builds) on
large things (such as 176.gcc). For example, it takes a debug build
from 172.9 -> 155.6s and a release gccas from 67.7 -> 61.8s
llvm-svn: 19883
2005-01-29 00:29:39 +00:00
Chris Lattner
a7ce993d7f
Do not clean up if the MappedFile was never used or if the client already
...
closed the file. This unbreaks the build.
llvm-svn: 19871
2005-01-28 16:08:23 +00:00
Jeff Cohen
29092b4f26
Get VC++ compiling again
...
llvm-svn: 19869
2005-01-28 07:29:32 +00:00
Reid Spencer
dab05f06a4
Convert some old C-style casts to C++ style.
...
llvm-svn: 19868
2005-01-28 07:22:20 +00:00
Chris Lattner
d009d52fe5
Add some methods.
...
llvm-svn: 19817
2005-01-24 19:55:34 +00:00
Misha Brukman
b2961bf931
primitive' has no
a'
...
llvm-svn: 19808
2005-01-24 16:28:03 +00:00
Chris Lattner
b7a64c49f0
Do not return true from isSized for things without a size (like functions and
...
labels) even though they are concrete. This fixes the DSA regressions from
last night.
llvm-svn: 19807
2005-01-24 16:00:52 +00:00
Chris Lattner
766ad3378c
This giant patch speeds up Type::isSized(). Before, this would have to search
...
large nested types over and over again to determine if they are sized or not.
Now, isSized() is able to make snap decisions about all concrete types, which
are a common occurance (and includes all primitives).
On 177.mesa, this speeds up DSE from 39.5s -> 21.3s and GCSE from
13.2s -> 11.3s, reducing gccas time from 80s -> 61s (this is a debug build).
DSE and GCSE are still too slow on this testcase, but this is a simple
improvement.
llvm-svn: 19800
2005-01-24 02:08:34 +00:00
Chris Lattner
65c4c91477
Add an accessor.
...
llvm-svn: 19794
2005-01-23 22:57:27 +00:00
Chris Lattner
38249d15df
Expose more information from register allocation to passes that run after
...
it.
llvm-svn: 19788
2005-01-23 22:13:36 +00:00
Chris Lattner
519fcf19c2
Give SelectionDAG a TargetLowering instance instead of TM instance.
...
llvm-svn: 19778
2005-01-23 04:36:06 +00:00
Chris Lattner
18d4178fe6
Remove two dead methods and improve the comments for DiffFilesWithTolerance.
...
Also, make DiffFilesWithTolerance take sys::Path objects instead of std::strings.
llvm-svn: 19770
2005-01-23 03:30:39 +00:00
Chris Lattner
236f3c69b8
New method.
...
llvm-svn: 19765
2005-01-23 03:11:38 +00:00
Jeff Cohen
43692e25e9
Fix VC++ complaint
...
llvm-svn: 19747
2005-01-22 16:30:58 +00:00
Chris Lattner
9ee3bbc844
Keep track of node depth for each node
...
llvm-svn: 19732
2005-01-21 21:39:38 +00:00
Chris Lattner
bd8da4c80e
Apparently destroyFile() now throws an exception. Since this class is
...
designed to be put on the stack, that's not cool. Catch and ignore the
exception.
llvm-svn: 19723
2005-01-20 23:31:35 +00:00
Chris Lattner
8e17ad37f2
Eliminate the unimplemented ADDC/SUBB operations, add ADD_PARTS/SUB_PARTS instead.
...
llvm-svn: 19713
2005-01-20 18:50:39 +00:00
Chris Lattner
7005632b59
Add an accessor for targets that pass args in regs
...
llvm-svn: 19702
2005-01-19 20:19:58 +00:00
Chris Lattner
2a03fa3a5c
Add a new method, described in the comment.
...
llvm-svn: 19683
2005-01-19 06:53:02 +00:00
Jeff Cohen
a3414ac8c7
Add missing data types for VC++
...
llvm-svn: 19680
2005-01-19 05:08:31 +00:00
Chris Lattner
4938a7c8a1
Move all data members to the end of the class.
...
Add a hook to find out how the target handles shift amounts that are out of
range. Either they are undefined (the default), they mask the shift amount
to the size of the register (X86, Alpha, etc), or they extend the shift (PPC).
This defaults to undefined, which is conservatively correct.
llvm-svn: 19676
2005-01-19 03:36:03 +00:00
Chris Lattner
0697def39d
Keep track of the returned value type as well.
...
llvm-svn: 19669
2005-01-18 19:26:18 +00:00
Chris Lattner
818e819e43
Allow setcc operations to have non-bool types.
...
llvm-svn: 19655
2005-01-18 02:51:41 +00:00
Chris Lattner
e2fd07b43d
Make methods private, add a method.
...
llvm-svn: 19634
2005-01-17 17:14:43 +00:00
Chris Lattner
783a9d8893
Add methods
...
llvm-svn: 19627
2005-01-17 02:24:59 +00:00
Chris Lattner
8dd332e4e5
Add comments
...
Add fields to hold the result type of setcc operations and shift amounts.
llvm-svn: 19618
2005-01-16 23:59:30 +00:00
Chris Lattner
e38f72316d
Revamp supported ops. Instead of just being supported or not, we now keep
...
track of how to deal with it, and provide the target with a hook that they
can use to legalize arbitrary operations in arbitrary ways.
llvm-svn: 19609
2005-01-16 07:27:49 +00:00
Reid Spencer
5d058e0ec8
Provide support for HP/UX aCC compiler's variant of hash_map and hash_set
...
(RogueWave). These are implemented in rw/stdex/hash_map.h and
rw/stdex/hash_set.h on HP/UX.
llvm-svn: 19600
2005-01-16 02:58:39 +00:00
Chris Lattner
605b9a23a2
Improve compatiblity with HPUX on Itanium, patch by Duraid Madina
...
llvm-svn: 19586
2005-01-16 01:31:31 +00:00
Chris Lattner
dfb3741f64
Improve compatibility with aCC on HPUX. Patch by Duraid Madina
...
llvm-svn: 19585
2005-01-16 01:22:18 +00:00
Chris Lattner
1d0e1ffe02
Move some information out of LegalizeDAG into the generic Target interface.
...
llvm-svn: 19581
2005-01-16 01:10:58 +00:00
Chris Lattner
ee53940434
Add some helper methods.
...
llvm-svn: 19570
2005-01-15 06:52:18 +00:00
Chris Lattner
2f65e8798f
Add new SIGN_EXTEND_INREG, ZERO_EXTEND_INREG, and FP_ROUND_INREG operators.
...
llvm-svn: 19568
2005-01-15 06:17:04 +00:00
Chris Lattner
98611ce291
Add a new target-independent code generator flag.
...
llvm-svn: 19567
2005-01-15 06:00:32 +00:00
Chris Lattner
3df2651c81
Change CopyFromReg to take and produce a chain node, allowing it to be used
...
with physregs that are not live across the entire block.
llvm-svn: 19560
2005-01-14 22:37:20 +00:00
Chris Lattner
c73bf62770
Start adding some new operators, give IMPLICIT_DEF a chain operand.
...
llvm-svn: 19558
2005-01-14 22:07:46 +00:00
Chris Lattner
eff86ebbc3
Add a method
...
llvm-svn: 19540
2005-01-13 23:26:28 +00:00
Chris Lattner
c6f23adb2a
Add a method
...
llvm-svn: 19538
2005-01-13 22:58:50 +00:00
Chris Lattner
7a8788c9ac
Add new ImplicitDef node, rename CopyRegSDNode class to RegSDNode.
...
llvm-svn: 19535
2005-01-13 20:50:02 +00:00
Chris Lattner
000509e7b0
Add a new node type, add comments.
...
llvm-svn: 19525
2005-01-13 17:58:35 +00:00
Chris Lattner
92c07c0dba
New method.
...
llvm-svn: 19516
2005-01-12 18:37:33 +00:00
Chris Lattner
f01a5206ea
Update comments to indicate CopyFrom/ToReg take physregs as well as vregs.
...
llvm-svn: 19514
2005-01-12 18:11:36 +00:00
Reid Spencer
710115945a
Fix the documentation for executeAndWait so the argument comments are
...
actually attributed to the arguments by doxygen.
llvm-svn: 19473
2005-01-11 06:37:27 +00:00
Chris Lattner
1b9caa4504
Add MEMSET/MEMCPY/MEMMOVE operations. Fix a really bad bug in the vector
...
SDNode ctor.
llvm-svn: 19462
2005-01-11 05:56:17 +00:00
Chris Lattner
a942f987c0
Add support for bottom-up graphs.
...
llvm-svn: 19446
2005-01-11 00:24:59 +00:00
Chris Lattner
9ed0d66c8a
Add a helper method.
...
llvm-svn: 19442
2005-01-10 23:25:04 +00:00
Chris Lattner
a4f7c88eb6
Add support for graph operations, and add a viewGraph method to SelectionDAG.
...
llvm-svn: 19440
2005-01-10 23:05:53 +00:00
Chris Lattner
3db5a50eb5
Add a helper method
...
llvm-svn: 19439
2005-01-10 23:05:07 +00:00
Jeff Cohen
8b03a55724
Apply feedback from Chris.
...
llvm-svn: 19432
2005-01-10 04:23:32 +00:00
Jeff Cohen
a7f1ae5dc0
Apply feed back from Chris:
...
1. Rename createLoaderPass to CreateProfileLoaderPass
2. Opt shouldn't use the pass registered in CodeGen.
llvm-svn: 19431
2005-01-10 03:56:27 +00:00
Jeff Cohen
f692cd303d
Add last four createXxxPass functions
...
llvm-svn: 19424
2005-01-09 20:42:52 +00:00
Jeff Cohen
6827f061cc
Get lib/Analysis/DataStructure to compile with VC++
...
llvm-svn: 19412
2005-01-09 04:18:28 +00:00
Chris Lattner
42dd85fc56
Add interfaces to lower varargs and return/frame address intrinsics.
...
llvm-svn: 19406
2005-01-09 00:00:31 +00:00
Jeff Cohen
3cd512f524
Fix VC++ compilation error
...
llvm-svn: 19403
2005-01-08 22:44:06 +00:00
Jeff Cohen
6c0db8d863
Add even more missing createXxxPass functions.
...
llvm-svn: 19402
2005-01-08 22:01:16 +00:00
Chris Lattner
1a057a2b37
Allow array types to have 64-bit size.
...
llvm-svn: 19394
2005-01-08 20:19:27 +00:00
Jeff Cohen
aef3f70921
Use size_t instead of long to represent memory usage. long is 32 bits
...
on 64-bit Windows.
llvm-svn: 19393
2005-01-08 20:15:57 +00:00
Chris Lattner
911dca53ee
Adjust prototype
...
llvm-svn: 19387
2005-01-08 19:57:49 +00:00
Chris Lattner
a58b3f48ef
Silence VS warnings.
...
llvm-svn: 19384
2005-01-08 19:52:31 +00:00
Chris Lattner
2a75da3851
Make LowerCallTo more generic and useful.
...
llvm-svn: 19373
2005-01-08 19:25:39 +00:00
Jeff Cohen
69ed91d1ca
Add a few more passes to LinkAllPasses.h
...
llvm-svn: 19371
2005-01-08 18:15:23 +00:00
Jeff Cohen
ce541ade79
Add more missing createXxxPass functions.
...
llvm-svn: 19370
2005-01-08 17:21:40 +00:00
Chris Lattner
e4cd40b379
Add operators for FP -> INT conversions and back.
...
llvm-svn: 19368
2005-01-08 08:08:49 +00:00
Chris Lattner
6182c88b85
Add a new SelectionDAG::RemoveDeadNodes method
...
llvm-svn: 19344
2005-01-07 21:08:55 +00:00
Jeff Cohen
6b821ecd16
Fix include. Too easy to make mistakes like this on Windows :(
...
llvm-svn: 19343
2005-01-07 19:21:49 +00:00
Jeff Cohen
a97d6be787
Get new SelectionDAG stuff building with Visual Studio.
...
llvm-svn: 19340
2005-01-07 15:52:36 +00:00
Jeff Cohen
d8ac84c3f3
But not the identation of THAT line
...
llvm-svn: 19328
2005-01-07 07:46:40 +00:00
Chris Lattner
c72669973a
Complete rewrite of the SelectionDAG class.
...
llvm-svn: 19327
2005-01-07 07:46:32 +00:00
Chris Lattner
409c6158ad
Common base class for SelectionDAG-based instruction selectors.
...
llvm-svn: 19326
2005-01-07 07:46:03 +00:00
Chris Lattner
c5b77f7009
Initial implementation of the nodes in a SelectionDAG.
...
llvm-svn: 19325
2005-01-07 07:45:27 +00:00
Chris Lattner
01ed041b94
First draft of a new Target interface
...
llvm-svn: 19323
2005-01-07 07:44:22 +00:00
Jeff Cohen
8a926637e2
Correct indentation levels
...
llvm-svn: 19322
2005-01-07 07:44:02 +00:00
Chris Lattner
83deb67391
Add convenience method.
...
llvm-svn: 19321
2005-01-07 07:40:32 +00:00
Jeff Cohen
c07c54f5b4
Add missing createXxxPass functions
...
llvm-svn: 19319
2005-01-07 06:57:28 +00:00
Misha Brukman
8b60d3e9df
Fix spelling.
...
llvm-svn: 19317
2005-01-07 06:45:07 +00:00
Jeff Cohen
83039834d7
Update list of passes
...
llvm-svn: 19316
2005-01-07 06:12:41 +00:00
Jeff Cohen
8d5d10078b
Fix return type
...
llvm-svn: 19314
2005-01-07 05:41:39 +00:00
Jeff Cohen
9bf3df5cc6
Get the #ifdef right on LinkAllPasses.h.
...
llvm-svn: 19310
2005-01-06 07:01:08 +00:00
Jeff Cohen
c205cf1049
Fix minor mistakes
...
llvm-svn: 19309
2005-01-06 06:29:42 +00:00
Jeff Cohen
b5bd66d55c
Get rid of those pesky tabs...
...
llvm-svn: 19308
2005-01-06 06:06:35 +00:00
Jeff Cohen
dfe5e3b330
Add project opt to Visual Studio.
...
llvm-svn: 19307
2005-01-06 06:02:53 +00:00
Jeff Cohen
727aeaf966
Fix incorrect return type.
...
llvm-svn: 19304
2005-01-06 05:45:45 +00:00
Chris Lattner
d8856e4665
Add required #include
...
llvm-svn: 19302
2005-01-06 03:25:27 +00:00
Chris Lattner
b5473d7cf3
Add a useful method
...
llvm-svn: 19301
2005-01-06 03:23:59 +00:00
Chris Lattner
8263ec34fd
Add a list end sentinal
...
llvm-svn: 19299
2005-01-05 22:14:14 +00:00
Chris Lattner
1105e059bb
add an assertion
...
llvm-svn: 19290
2005-01-05 16:27:34 +00:00
Chris Lattner
61bed2fe76
Do not let 'ftostr' return a string that starts with spaces. This allows
...
the AsmWriter to emit FP constants like 1.0 in normal exponential notation
instead of hex notation.
llvm-svn: 19279
2005-01-04 01:56:28 +00:00
Chris Lattner
a008165daa
Add some bits that can be set on instructions. Renumber existing bits so
...
they are dense. Add a virtual method that targets can choose to implement.
llvm-svn: 19242
2005-01-02 02:28:31 +00:00
Reid Spencer
37f31d4aa1
Make printing a warning message optional in CheckBytecodeOutputToConsole.
...
llvm-svn: 19240
2005-01-02 00:10:03 +00:00
Reid Spencer
2d73c4d556
Implement a function to print a warning if bytecode output is to be sent to
...
a terminal/console.
llvm-svn: 19237
2005-01-01 23:56:20 +00:00
Reid Spencer
ed2f874a8d
Add functions for determining if the stdin/out/err is connected to a
...
console or not.
llvm-svn: 19233
2005-01-01 22:29:26 +00:00
Jeff Cohen
8e751d4f87
Add llvm-as project to Visual Studio
...
llvm-svn: 19227
2005-01-01 20:51:41 +00:00
Jeff Cohen
1d174640fe
Fix bountiful sources of VC++ 'possible loss of data' warnings
...
llvm-svn: 19224
2005-01-01 18:58:23 +00:00
Reid Spencer
560327d430
Add HAVE_SBRK
...
llvm-svn: 19222
2005-01-01 18:16:16 +00:00
Chris Lattner
70d0a6155b
Add a useful accessor
...
llvm-svn: 19209
2005-01-01 15:58:55 +00:00
Chris Lattner
7f004e59d8
Add two helper functions.
...
llvm-svn: 19208
2005-01-01 15:58:41 +00:00
Reid Spencer
53cfb14270
* Fix a bug in an m4 macro that used an incorrect test operator
...
* Add CAN_DLOPEN_SELF so we can determine if dlopen(0) will open the
program or not.
* Correct a warning messages to be a little more specific on what it checks
llvm-svn: 19184
2004-12-29 07:07:57 +00:00
Reid Spencer
b454405d4a
For PR351:
...
* Move implementation of sys::PreventCoreFiles function to this file from
the now defunct SysConfig abstraction.
llvm-svn: 19159
2004-12-27 06:17:27 +00:00
Reid Spencer
7da5e588d4
For PR351:
...
SysConf abstraction was pointless because it had a single function in it that
pertained only to the current process. So merge it into the Process abstraction
and remove the files completely.
llvm-svn: 19149
2004-12-27 06:15:14 +00:00
Reid Spencer
38f6b8a1bd
For PR351:
...
* Add checks for sterror and strerror_r functions
* Add check to determine if /dev/zero is needed for allocating RWX memory.
llvm-svn: 19148
2004-12-27 06:15:02 +00:00
Reid Spencer
ff28563c07
For PR351:
...
* Make sure all headers used by lib/System have checks
* Use "standard" autoconf checks for certain problematic headers
For PR432:
* Resurrect --with-llvmgccdir so a specific llvm-gcc/llvm-g++ installation
can be specified.
llvm-svn: 19142
2004-12-25 07:31:29 +00:00
Reid Spencer
27dbe5c161
For PR351:
...
Create new variables LLVM_ON_UNIX and LLVM_ON_WIN32 so we can start getting
rid of reliance upon a symbolic link to switch implementations in lib/System
llvm-svn: 19131
2004-12-24 06:29:05 +00:00
Reid Spencer
9d949160f5
For PR351:
...
Move non-portable FDHandle class to its only user: lib/Debugger
llvm-svn: 19106
2004-12-22 10:24:43 +00:00
Jeff Cohen
147ad804fa
Fix VC++ compilation error
...
llvm-svn: 19082
2004-12-21 15:40:41 +00:00
Reid Spencer
56bec4165e
Remove this file as there are no LLVM users of it any more.
...
llvm-svn: 19066
2004-12-20 04:35:20 +00:00
Reid Spencer
6abec217dd
Remove this file as its not used by anything in LLVM any more. System
...
dependent behavior is now made through the lib/System interface.
llvm-svn: 19064
2004-12-20 04:25:53 +00:00
Reid Spencer
df938f3108
Remove these files as they are included by nothing in LLVM any more. The
...
system dependent functionality has been moved to lib/System.
llvm-svn: 19063
2004-12-20 04:24:32 +00:00
Reid Spencer
9bba44181d
Remove these headers. The files that used to #include them don't any more
...
as most system dependent behavior has been moved to lib/System.
llvm-svn: 19062
2004-12-20 04:20:37 +00:00
Reid Spencer
cdaadc1eb5
Add HAVE_SYSCONF
...
llvm-svn: 19060
2004-12-20 04:08:58 +00:00
Reid Spencer
d244303b05
For PR351:
...
* Add GetMallocUsage as a wrapper around mallinfo()
* Add GetTotalMemoryUsage to get approximate RSS size
* Add GetTimeUsage to get elapsed/system/user time
llvm-svn: 19051
2004-12-20 00:58:53 +00:00
Reid Spencer
8ef5b3a158
Wrap long lines
...
llvm-svn: 19050
2004-12-20 00:58:41 +00:00
Reid Spencer
38b0d98740
For PR351:
...
This file is no longer needed as system dependent functions have been
encapsulated into lib/System.
llvm-svn: 19049
2004-12-20 00:58:25 +00:00
Reid Spencer
944664fd34
For PR351:
...
Incorporate the abilities of RunPRogramWithTimeout into
sys::Program::ExecuteAndWait so that redirection and a timeout are optionally
supported.
llvm-svn: 19039
2004-12-19 17:59:57 +00:00
Reid Spencer
9bf67b0b3f
For PR351:
...
Turn path instance variables into sys::Path instead of std::string
llvm-svn: 19038
2004-12-19 17:59:45 +00:00
Reid Spencer
e3eb1bb93d
For PR351:
...
Replace RunProgramWithTimeout with an inline function that calls
sys::Program::ExecuteAndWait. This is now just a convenience function.
llvm-svn: 19037
2004-12-19 17:59:33 +00:00
Reid Spencer
97e79cf40a
Correct the name of the method. CopyFiles -> CopyFile.
...
llvm-svn: 19025
2004-12-18 00:14:24 +00:00
Chris Lattner
40cf227b6a
Make code fit in 80 cols
...
llvm-svn: 19016
2004-12-17 17:02:54 +00:00
Reid Spencer
df60327fbe
For PR351:
...
* Make the OutputC and OutputAsm functions work with sys::Path for the output
file name instead of using std::string.
* Get rid of extraneous "toString" calls.
* Change "removeFile" to sys::Path::destroyFile()
llvm-svn: 19000
2004-12-16 23:01:34 +00:00
Reid Spencer
391b891e42
For PR351:
...
* Remove the "removeFile" function, now implemented by the
sys::Path::destroyFile method.
* Make the FileRemove work with a sys::Path instead of a std::string
llvm-svn: 18999
2004-12-16 23:00:05 +00:00
Reid Spencer
22b625f52c
Get rid of inclusion of config.h because this file is autoconf'd.
...
llvm-svn: 18992
2004-12-16 18:47:17 +00:00
Reid Spencer
652f1f43fd
Adjust documentation of GetBytecodeLibraryPaths after removing LLVMGCCDIR
...
support from it.
llvm-svn: 18972
2004-12-15 22:49:18 +00:00
Reid Spencer
bb0cee77f8
Remove LLVMGCCDIR.
...
llvm-svn: 18971
2004-12-15 22:28:35 +00:00
Reid Spencer
9d3a8ad836
Fix a file overwrite bug in llvm-ar introduced by changes to
...
createTemporaryFile semantics where it doesn't create a fully unique name
if the basename doesn't exist. This functionality is now optionally
provided by the boolean reuse_current parameter to createTemporaryFile and
makeUnique. The default values differ because of the way these functions
are used in LLVM.
llvm-svn: 18961
2004-12-15 08:32:45 +00:00
Chris Lattner
78b1a2c137
Make the AliasAnalysis interface more precise for common cases.
...
llvm-svn: 18956
2004-12-15 07:21:39 +00:00
Reid Spencer
8fe73b4d39
For PR351:
...
* Fix implementation and documentation about LLVMGCCDIR/bytecode-libs
* Add the makeUnique method, replacement for getUniqueFilename in Support.
* Add the sys::CopyFile function, replacement for CopyFile in Support.
* Move GetLLVMConfigDir() into generic code area since its generic.
llvm-svn: 18947
2004-12-15 01:50:13 +00:00
Reid Spencer
c13933032d
For PR351:
...
Remove getUniqueFilename and CopyFile. These are now implemented by
sys::Path::makeUnique and sys::CopyFile, respectively.
llvm-svn: 18946
2004-12-15 01:46:54 +00:00
Reid Spencer
8461ddd8c9
Add some system specific functions we use
...
llvm-svn: 18945
2004-12-15 01:41:56 +00:00
Jeff Cohen
cc0adb0271
Implement Win32 Path::getStatusInfo(), TimeValue::toString()
...
llvm-svn: 18930
2004-12-14 05:26:43 +00:00
Reid Spencer
165388298b
For PR351:
...
* Fix commentary, wrap lines, etc.
* Add an environment pointer to the ExecuteAndWait function.
llvm-svn: 18926
2004-12-14 04:17:12 +00:00
Reid Spencer
a0f6155809
For PR351:
...
* isExecutable -> sys::Path::executable()
* Adjust interface of FindExecutable to return a sys::Path
llvm-svn: 18917
2004-12-13 23:40:08 +00:00
Reid Spencer
3b88b3427b
For PR351:
...
Remove AllocateRWXMemory as it is not used any more in LLVM. The function
has been replaced with sys::Memory::AllocateRWX several months ago.
llvm-svn: 18912
2004-12-13 20:14:30 +00:00
Reid Spencer
df7f779d7d
For PR351:
...
Remove the MakeFileReadable and MakeFileExecutable functions which are no
longer present in LLVM. They have been replaced with the sys::Path methods
makeReadable and makeExecutable, respectively.
llvm-svn: 18910
2004-12-13 20:08:14 +00:00
Reid Spencer
5a18b63eb5
For PR351:
...
Implement three new functions to allow setting access/permission bits on
the file referenced by a path. The makeReadable and makeExecutable methods
replace the FileUtilities MakeFileReadable and MakeFileExecutable
functions. The makeWritable function is new and provided for consistency
since Path has a writable() method.
llvm-svn: 18907
2004-12-13 19:59:50 +00:00
Chris Lattner
79c3a57af7
Change this method to return ulong, not uint, for 64-bit targets.
...
llvm-svn: 18906
2004-12-13 19:48:51 +00:00
Reid Spencer
7dfa723d34
For PR351:
...
The ReadFileIntoAddressSpace and UnmapFileFromAddressSpace functions are no
longer used by LLVM. Remove them. Replacement functionality for both
functions is now encapsulated in the sys::MappedFile class.
llvm-svn: 18903
2004-12-13 18:28:59 +00:00
Reid Spencer
dd50ab43d0
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
fe4882b78e
Added a size_type typedef to LLVM containers to make Visual Studio shut up
...
(and possibly to make LLVM more x86 64bit friendly).
llvm-svn: 18891
2004-12-13 16:28:53 +00:00
Reid Spencer
f7cd830e8d
Add a convenience function for clearing the two global areas.
...
Patch contributed by Morten Ofsted.
llvm-svn: 18890
2004-12-13 16:22:32 +00:00
Reid Spencer
24cf14cef6
* Add a std::ostream inserter for sys::Path
...
* Correct the std::string constructor to take a const reference.
llvm-svn: 18877
2004-12-13 06:57:15 +00:00
Reid Spencer
6d4e664b79
Remove commented out functions that have been replaced with lib/System
...
functionality.
llvm-svn: 18868
2004-12-13 03:15:47 +00:00
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