Brian Gaeke
7a719ed20c
Isolate machine-dependent use of <alloca.h> in "Support/Alloca.h",
...
so that we can easily change its use to be conditional on the result of
an autoconf test later.
llvm-svn: 6723
2003-06-16 21:54:01 +00:00
Brian Gaeke
3350651851
Whoops. I didn't mean to step on John's changes.
...
llvm-svn: 6722
2003-06-16 21:18:20 +00:00
Brian Gaeke
eb505aab08
This version supports FreeBSD.
...
llvm-svn: 6721
2003-06-16 21:14:57 +00:00
John Criswell
ec382b6a64
Changed the LITTLE_ENDIAN and BIG_ENDIAN macros to ENDIAN_LITTLE and ENDIAN_BIG.
...
This will prevent them from conflicting with macros defined by the system
header files.
When autoconf comes, this will look a lot nicer.
llvm-svn: 6684
2003-06-11 19:44:51 +00:00
John Criswell
cfac736363
Included assert.h so that the code compiles under newer versions of GCC.
...
llvm-svn: 6682
2003-06-11 14:01:36 +00:00
Sumant Kowshik
061d15551f
Made changes suggested by Chris; Renamed 'union' function to unionSetsWith
...
llvm-svn: 6605
2003-06-04 08:00:05 +00:00
Chris Lattner
be9cef8af4
There are now no uses of NonCopyableV
...
llvm-svn: 6580
2003-06-03 15:30:48 +00:00
Chris Lattner
46a1892c68
Add doxygen comment for namespace
...
llvm-svn: 6579
2003-06-03 15:30:37 +00:00
Sumant Kowshik
2618272dad
Implementation of Equivalence Classes
...
llvm-svn: 6422
2003-05-29 22:44:25 +00:00
Chris Lattner
d670b086c4
dyn_cast_or_null should work just the same as dyn_cast does
...
llvm-svn: 6394
2003-05-29 15:07:48 +00:00
Chris Lattner
5eb85148bd
Add support for a new "CommaSeparated" modifier
...
llvm-svn: 6293
2003-05-22 20:25:57 +00:00
Chris Lattner
36a38730c6
Updates to match recent timer updates
...
llvm-svn: 6069
2003-05-09 20:44:22 +00:00
Chris Lattner
ecb0bac0ec
Allow autoconversion from ilist_iterator<T> to T* in a dyn_cast and friends
...
llvm-svn: 5862
2003-04-23 16:17:53 +00:00
Chris Lattner
215b00589f
Allow dyn_cast to operate on things that aren't OBVIOUSLY a pointer type.
...
These things can be converted to a pointer, like ilist_iterators
llvm-svn: 5861
2003-04-23 16:17:28 +00:00
Chris Lattner
3628607140
Update comment
...
llvm-svn: 5752
2003-03-21 21:40:39 +00:00
Chris Lattner
9c19c07e8b
Fix problems with BitSetVector that makes it not compile under GCC 3.0 and 2.95
...
llvm-svn: 5745
2003-03-17 18:11:27 +00:00
Chris Lattner
940863bd22
Fix #endif
...
llvm-svn: 5615
2003-02-24 04:40:35 +00:00
Chris Lattner
af9598f6a8
Add support for the slist extension
...
llvm-svn: 5614
2003-02-24 04:31:49 +00:00
Chris Lattner
6a9307866c
Allow the addition of edge source labels
...
llvm-svn: 5493
2003-02-05 19:40:59 +00:00
Chris Lattner
2c5b6a0021
Add hash_multimap support
...
llvm-svn: 5457
2003-02-01 04:14:28 +00:00
Chris Lattner
aa6b2bfd78
Initial checking: defult the make_vector function
...
llvm-svn: 5424
2003-01-28 20:01:16 +00:00
Chris Lattner
4fd26cc90e
Move annotation to support library
...
llvm-svn: 5268
2003-01-14 21:29:58 +00:00
Chris Lattner
de4aa4cf8c
New files for miscompilation detection
...
llvm-svn: 5120
2002-12-23 23:50:16 +00:00
Chris Lattner
5bd7897ac2
Fix header
...
llvm-svn: 4966
2002-12-12 03:43:30 +00:00
Vikram S. Adve
80cac479bd
Bug fix in operator==() and in method fini().
...
llvm-svn: 4945
2002-12-06 15:02:22 +00:00
Vikram S. Adve
cb8b5af572
Several fixes:
...
(1) Applied patch from Casey to implement iterator::operator= correctly:
it should use a pointer, not a reference.
(2) Added operators == and !=, and method all().
(3) Important bug fix: excess bits need to be ignored in operations
like ==, count(), and all(). We do this by ensuring excess bits
in the last bitset are always 0.
llvm-svn: 4837
2002-11-27 17:46:38 +00:00
Chris Lattner
a3ddb9b5ce
Add facility to compute peak memory usage
...
llvm-svn: 4752
2002-11-18 21:45:55 +00:00
Chris Lattner
fb1855921c
Fix warning
...
llvm-svn: 4708
2002-11-15 18:04:16 +00:00
Chris Lattner
c0a07a4631
Add tarj_end() method
...
llvm-svn: 4684
2002-11-10 23:46:31 +00:00
Chris Lattner
628b23ab1d
Fix a problem where bad graphs could be generated
...
llvm-svn: 4671
2002-11-10 06:47:03 +00:00
Vikram S. Adve
1b72f8cd28
Include HashExtras.h since it is almost always needed anyway.
...
llvm-svn: 4626
2002-11-08 14:07:33 +00:00
Chris Lattner
21d8b9f0d6
Make maxSize a private variable, add a size() accessor
...
llvm-svn: 4573
2002-11-06 18:34:40 +00:00
Vikram S. Adve
e781ba560e
An implementation of the bit-vector representation of sets.
...
llvm-svn: 4568
2002-11-06 17:14:14 +00:00
Chris Lattner
745b8516d2
Allow memory sizes to be negative, eliminate TmpRSS
...
llvm-svn: 4539
2002-11-04 19:20:09 +00:00
Vikram S. Adve
a9c3afbe4f
Generic graph iterator to enumerate the SCCs of a graph
...
in linear time using Tarjan's DFS algorithm.
llvm-svn: 4531
2002-11-04 14:15:57 +00:00
Chris Lattner
b017a3ef50
Statistic class should return const reference to *this, not a reference to
...
the data type.
llvm-svn: 4458
2002-10-31 02:50:27 +00:00
Chris Lattner
94a4f22573
Don't #include <Support/*>, #include "Support/*"
...
llvm-svn: 4325
2002-10-28 02:11:53 +00:00
Chris Lattner
b1f02f7f02
Add neccesary #include
...
llvm-svn: 4294
2002-10-27 19:16:27 +00:00
Chris Lattner
d5112d71f3
Old GCC's don't have an <ostream>
...
llvm-svn: 4293
2002-10-27 19:12:37 +00:00
Chris Lattner
e7c0293f1f
Don't emit braces around something without outgoing edges
...
llvm-svn: 4225
2002-10-18 14:55:44 +00:00
Chris Lattner
aac0864f11
Break up the GraphWriter into smaller chunks to be used in different ways
...
llvm-svn: 4207
2002-10-17 00:59:59 +00:00
Chris Lattner
d2122e26ce
As wierd as it feels to type it, const void* is more generic than void*
...
llvm-svn: 4206
2002-10-17 00:16:39 +00:00
Chris Lattner
6d44463ac2
Allow simple nodes to have outgoing edges
...
llvm-svn: 4202
2002-10-16 20:15:38 +00:00
Chris Lattner
b2694db06e
* Factor printing code again, add emitSimpleNode method
...
llvm-svn: 4198
2002-10-16 02:03:18 +00:00
Chris Lattner
adfe59294d
* Add new DOTGraphTraits::addCustomGraphFeatures method
...
llvm-svn: 4197
2002-10-16 01:44:59 +00:00
Chris Lattner
e515976a11
* Significantly refactor GraphWriter into a class.
...
llvm-svn: 4194
2002-10-16 01:34:18 +00:00
Chris Lattner
cf5eb3317a
- Generic graph printing infrastructure changes:
...
* Only print outgoing edges from a cell if the destination isn't null.
This is important for DSGraphs, which have sources with no edges.
* Allow Node attributes to override shape of the node
llvm-svn: 4192
2002-10-16 01:18:14 +00:00
Chris Lattner
10bdae7c9e
disable the unused "pointer" member
...
llvm-svn: 4144
2002-10-13 19:30:44 +00:00
Chris Lattner
0e0e32dea9
Add dummy entries to document what members can be added
...
llvm-svn: 4141
2002-10-13 17:12:05 +00:00
Chris Lattner
e3336c72c0
* Don't only print out reachable nodes in the graph.
...
* use new api to get all nodes in the graph
* Allow custom graph traits
llvm-svn: 4109
2002-10-10 22:29:51 +00:00
Chris Lattner
f43f410dfb
Add new getGraphProperties that may be specialized by graphs
...
llvm-svn: 4108
2002-10-10 22:29:10 +00:00
Chris Lattner
433604a5f5
Don't rotate paper.
...
llvm-svn: 4066
2002-10-07 22:37:03 +00:00
Chris Lattner
1484662c07
- Allow printing generic LLVM graphs to 'dot' files, so they can be
...
visualized easily.
llvm-svn: 4061
2002-10-07 18:37:10 +00:00
Chris Lattner
9a389b3cce
The wall clock timer (implementing using the RTC or cycle counter on x86) is
...
so much more accurate than the per process timers that we get better results
(less noise) by sorting according to wall time than process time.
llvm-svn: 4034
2002-10-03 21:08:20 +00:00
Chris Lattner
c758fe6b72
- Rework Statistics:
...
* Renamed StatisticReporter.h/cpp to Statistic.h/cpp
* Broke constructor to take two const char * arguments instead of one, so
that indendation can be taken care of automatically.
* Sort the list by pass name when printing
* Make sure to print all statistics as a group, instead of randomly when
the statistics dtors are called.
llvm-svn: 3999
2002-10-01 22:35:45 +00:00
Chris Lattner
6dad11f6c0
Checkin generic interval timer support
...
llvm-svn: 3992
2002-10-01 19:36:54 +00:00
Chris Lattner
3eeba80732
Fix ambiguity problem due to builtin log2(double) function
...
llvm-svn: 3800
2002-09-17 23:56:50 +00:00
Vikram S. Adve
9d48fcaf1b
Add ilist_iterator constructor from a node reference.
...
llvm-svn: 3756
2002-09-16 16:46:17 +00:00
Chris Lattner
a4583fdafc
Fix to work correctly under linux
...
llvm-svn: 3720
2002-09-14 19:52:49 +00:00
Vikram S. Adve
40a24e841e
Add support for MacOS and (hopefully) other BSD derivatives.
...
llvm-svn: 3717
2002-09-14 10:42:59 +00:00
Chris Lattner
240f026d9a
Tighten up sanity checking
...
llvm-svn: 3706
2002-09-13 22:18:26 +00:00
Chris Lattner
8c63fee2d9
Try to work well on multiple platforms.
...
llvm-svn: 3704
2002-09-13 21:51:25 +00:00
Chris Lattner
e614665c1c
Add better linux support by using the right macro. This still should be
...
autoconfiscated, but for now this is sufficient.
llvm-svn: 3701
2002-09-13 15:37:58 +00:00
Chris Lattner
5d40b83adf
Checkin patch written by Casey Carter, enabling support for the redhat GCC 2.96
...
compiler.
llvm-svn: 3697
2002-09-13 14:33:39 +00:00
Chris Lattner
57c6a2123d
Checkin initial support for automatic memory leak detection routines
...
llvm-svn: 3617
2002-09-08 18:51:12 +00:00
Chris Lattner
5b13472129
Simplify interface to parsers.
...
llvm-svn: 3255
2002-08-07 18:36:27 +00:00
Chris Lattner
0c87ad3b87
Add support for GCC 3.0.4
...
llvm-svn: 3080
2002-07-25 15:23:20 +00:00
Chris Lattner
379d3286ff
GCC 3.1 changes
...
llvm-svn: 3076
2002-07-25 15:00:43 +00:00
Chris Lattner
1e9a5805a4
GCC 3.1 fixes
...
llvm-svn: 3066
2002-07-24 22:20:00 +00:00
Chris Lattner
889cddf52c
Changes to build with GCC 3.1
...
llvm-svn: 3064
2002-07-24 22:08:36 +00:00
Chris Lattner
1fafa67e37
Use the new include/Support/iterator file
...
llvm-svn: 3062
2002-07-24 22:07:42 +00:00
Chris Lattner
bad64ee7e3
Add forward_iterator wrapper
...
llvm-svn: 3061
2002-07-24 22:07:13 +00:00
Chris Lattner
80b3dfd7d6
Add another GCC2.95->3.1 compatibility header
...
llvm-svn: 3060
2002-07-24 21:38:41 +00:00
Chris Lattner
47ef71bd87
Spiff up the header files
...
llvm-svn: 3059
2002-07-24 21:25:34 +00:00
Chris Lattner
f0f2da260f
Move hash_* extension headers from ext/ to Support/ so that we can support
...
GCC 2.95, GCC 3.0.4 and GCC 3.1 all concurrently, without having to delete
headers after a chackou.
llvm-svn: 3055
2002-07-24 21:16:42 +00:00
Chris Lattner
afdf577637
Changes to make it GCC 3.1 compatible
...
llvm-svn: 3052
2002-07-24 20:44:01 +00:00
Chris Lattner
2182c33ab5
Add missing typename's that GCC3.1 is whining about.
...
llvm-svn: 3051
2002-07-24 20:22:09 +00:00
Chris Lattner
feb53298fd
Disable the operator= in Value
...
Disable the copy ctor and operator= in Annotation.h
llvm-svn: 3048
2002-07-24 20:01:57 +00:00
Chris Lattner
2c54a0db79
Initial checkin
...
llvm-svn: 3005
2002-07-23 17:56:53 +00:00
Chris Lattner
ee49ae0626
Add support for removing an option from a genericparser
...
llvm-svn: 2998
2002-07-23 17:15:09 +00:00
Chris Lattner
c0c03be046
Change to avoid bug in GCC 3.0.4
...
llvm-svn: 2997
2002-07-23 00:44:37 +00:00
Chris Lattner
5df56c47fc
Checkin CommandLine 2.0
...
llvm-svn: 2982
2002-07-22 02:07:59 +00:00
Anand Shukla
f1c0d920e3
changes to make it compatible with 64bit gcc
...
llvm-svn: 2786
2002-06-25 20:22:25 +00:00
Chris Lattner
113f4f4609
MEGAPATCH checkin.
...
For details, See: docs/2002-06-25-MegaPatchInfo.txt
llvm-svn: 2779
2002-06-25 16:13:24 +00:00
Chris Lattner
d99d9d5aef
Implement DataTypes.h in terms of inttypes.h
...
llvm-svn: 2729
2002-05-23 15:48:12 +00:00
Chris Lattner
5184bdc596
Implement a new command line option, -debug, which is meant to unify all of
...
the random debugging macros scattered throughout llvm.
The new DEBUG(x) macro should be used instead of special purpose debug macros.
llvm-svn: 2709
2002-05-22 17:06:20 +00:00
Chris Lattner
8f7b500fff
Add ability to update existing variables with values read from the command line
...
to certain classes. This is nice because it means that in header files we can
just declare a value, and still have that value be set based on a command-line
argument. The difference is now that the #include of CommandLine.h does not
need to go into the header file as well.
llvm-svn: 2708
2002-05-22 17:03:05 +00:00
Chris Lattner
84dc8633e8
Cleanups, rename IsPowerOf2 to isPowerOf2
...
llvm-svn: 2662
2002-05-19 21:19:55 +00:00
Vikram S. Adve
e363307e49
Added log2 for log-base-2 and also modified IsPower2 to use it.
...
llvm-svn: 2653
2002-05-19 15:46:52 +00:00
Chris Lattner
529ad64148
Initial checkin of Statistic class
...
llvm-svn: 2599
2002-05-10 15:36:56 +00:00
Chris Lattner
138c8a32b5
Remove obsolete namespace from example
...
llvm-svn: 2368
2002-04-28 16:18:32 +00:00
Chris Lattner
67f206acc7
New api for signal handling for LLVM tools
...
llvm-svn: 2301
2002-04-18 19:53:34 +00:00
Chris Lattner
98728f7021
Pull casting operators out of Value.h
...
llvm-svn: 2166
2002-04-08 21:43:56 +00:00
Chris Lattner
2e183b5c44
Add new function utohexstr.
...
llvm-svn: 2140
2002-04-07 08:36:19 +00:00
Chris Lattner
c141abf8f2
Genericize the ReversePostOrderIterator.
...
llvm-svn: 1785
2002-02-24 21:48:59 +00:00
Chris Lattner
ae99a1bc0f
New Support file for operations on set like objects
...
llvm-svn: 1714
2002-02-05 03:35:10 +00:00
Chris Lattner
28d8eb2286
PostOrderIterator really does depend on Method and BasicBlock. Obviously this
...
is a huge fixme.
llvm-svn: 1682
2002-02-04 16:29:55 +00:00
Chris Lattner
7f74a56e24
Changes to build successfully with GCC 3.02
...
llvm-svn: 1503
2002-01-20 22:54:45 +00:00
Chris Lattner
5de2204fe8
Create a new #include "Support/..." directory structure to move things
...
from "llvm/Support/..." that are not llvm dependant.
Move files and fix #includes
llvm-svn: 1400
2001-11-27 00:03:19 +00:00
Chris Lattner
f679703feb
Move DataTypes.h from llvm/Support to just Support
...
llvm-svn: 1399
2001-11-26 23:04:08 +00:00
Chris Lattner
9d0578c92b
Convert ConstRules to use annotations to clean it up.
...
llvm-svn: 514
2001-09-09 21:00:23 +00:00
Chris Lattner
0799ddb3a9
Make annotations operations const with a mutable annotation list so that
...
we can annotate Types. A better solution would be make types nonconst.
llvm-svn: 416
2001-09-07 16:16:35 +00:00
Chris Lattner
8aaab6b9c1
Extend annotations to pass data pointers around to the functions
...
llvm-svn: 374
2001-08-27 05:17:47 +00:00
Chris Lattner
3885a2db4f
Add annotation support
...
llvm-svn: 366
2001-08-23 17:07:56 +00:00