1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 11:42:57 +01:00
Commit Graph

8523 Commits

Author SHA1 Message Date
Chris Lattner
85f5b18995 Pass a vector around to reduce dynamic allocation
Throw the RawInst class in an anon namespace

llvm-svn: 8990
2003-10-09 20:45:42 +00:00
Chris Lattner
b876f55b76 Kill warning when compiling in optimized mode
llvm-svn: 8989
2003-10-09 20:43:55 +00:00
Chris Lattner
36f2dcd3d5 Change getConstantValue to throw an exception on error, not return null
llvm-svn: 8988
2003-10-09 20:41:16 +00:00
Chris Lattner
8e6b42c567 Make getContainedType more efficient by not returning null if out of range!
llvm-svn: 8987
2003-10-09 20:35:15 +00:00
Chris Lattner
01d8fd6a3b Do not read past the end of the contained type list
llvm-svn: 8986
2003-10-09 20:31:18 +00:00
Chris Lattner
c0abb16551 Remove potentially N^2 algorithm from symbol table reader. No speedup
in practice though

llvm-svn: 8985
2003-10-09 20:30:04 +00:00
Chris Lattner
8f99fbb02c Major refactoring of the bytecode reader. This includes the following
changes:
  * BytecodeReader::getType(...) used to return a null pointer
    on error.  This was only checked about half the time.  Now we convert
    it to throw an exception, and delete the half that checked for error.
    This was checked in before, but psmith crashed and lost the change :(
  * insertValue no longer returns -1 on error, so callers don't need to
    check for it.
  * Substantial rewrite of InstructionReader.cpp, to use more efficient,
    simpler, data structures.  This provides another 5% speedup.  This also
    makes the code much easier to read and understand.

llvm-svn: 8984
2003-10-09 20:22:47 +00:00
Chris Lattner
4eb71c8940 Significantly clean up parsing of instructions. This exceptionizes and
simplifies the control flow a bit.  This provides a small (~3%) speedup,
but it's primarily a cleanup exercise.

llvm-svn: 8983
2003-10-09 18:25:19 +00:00
Chris Lattner
bdf6a7ae06 Include the new docs directory, whenever it gets added. www is gone
llvm-svn: 8982
2003-10-09 16:10:15 +00:00
John Criswell
a43819053c Added 177.mesa to the list of Makefiles to propogate to the object root.
llvm-svn: 8981
2003-10-09 15:44:28 +00:00
Chris Lattner
c527ed77b8 Eliminate the instruction placeholder. Simplify a bunch of code.
This results in no significant speedup, but does provide simpler code

llvm-svn: 8980
2003-10-09 06:14:26 +00:00
Chris Lattner
6f7b5bd63f Eliminate the old LateResolveValues data structure, replacing it with a
new, simpler, ForwardReferences data structure.  This is just the first
simple replacement, subsequent changes will improve the code more.

This simple change improves the performance of loading a file from HDF5
(contributed by Bill) from 2.36s to 1.93s, a 22% improvement.  This
presumably has to do with the fact that we only create ONE placeholder for
a particular forward referenced values, and also may be because the data
structure is much simpler.

llvm-svn: 8979
2003-10-09 06:05:40 +00:00
Chris Lattner
3b7b192b6a Remove a dead method
llvm-svn: 8978
2003-10-09 05:25:34 +00:00
Chris Lattner
55e1c2edfb This patch substantially simplifies and cleans up handling of basic blocks
in the bytecode parser.  Before we tried to shoehorn basic blocks into the
"getValue" code path with other types of values.  For a variety of reasons
this was a bad idea, so this patch separates it out into its own data structure.

This simplifies the code, makes it fit in 80 columns, and is also much faster.
In a testcase provided by Bill, which has lots of PHI nodes, this patch speeds
up bytecode parsing from taking 6.9s to taking 2.32s.  More speedups to
follow later.

llvm-svn: 8977
2003-10-08 22:52:54 +00:00
Chris Lattner
c920c81739 Inline the postResolveValues method. It was poorly named anyway
llvm-svn: 8976
2003-10-08 21:51:46 +00:00
Brian Gaeke
58114a907c test/Programs/NoSource and www are gone from the tree; don't try to configure
their Makefiles.

llvm-svn: 8975
2003-10-08 21:48:26 +00:00
Brian Gaeke
730c899b43 Use 3-arg form of AC_DEFINE.
llvm-svn: 8974
2003-10-08 21:45:58 +00:00
Brian Gaeke
766a1fe79d Use 3-arg form of AC_DEFINE.
Check for strsignal(), which isn't found everywhere, and sys_siglist,
 which can be used to implement it.

llvm-svn: 8973
2003-10-08 21:44:07 +00:00
Brian Gaeke
481aaf411f I really meant to use that AUTOHEADER variable I put in there.
llvm-svn: 8972
2003-10-08 21:38:35 +00:00
Chris Lattner
a7d6d16c13 Various cleanups and simplifications. This speeds up reading a bytecode file
Bill gave me from 8.69s to 6.90s.

llvm-svn: 8971
2003-10-08 21:18:57 +00:00
Misha Brukman
7b758ed3b5 Destroy allocated resources on exception.
llvm-svn: 8969
2003-10-08 19:55:47 +00:00
Brian Gaeke
66d8a200cf Make more error messages have gccld's name in them.
Add a newline after "Cannot find <library>".

llvm-svn: 8968
2003-10-08 19:09:30 +00:00
Chris Lattner
c9222aa60a old testcase
llvm-svn: 8967
2003-10-08 18:28:10 +00:00
Chris Lattner
aca333bd44 Checkin an old bug, which appears to be fixed
llvm-svn: 8966
2003-10-08 18:26:10 +00:00
Chris Lattner
bf95cc12a3 Update comment
llvm-svn: 8965
2003-10-08 16:56:11 +00:00
Chris Lattner
9cece85acb Use a set to keep track of which edges have been noticed as executable already
to avoid reprocessing PHI nodes needlessly.  This speeds up the big bad PHI
testcase 43%: from 104.9826 to 73.5157s

llvm-svn: 8964
2003-10-08 16:55:34 +00:00
Chris Lattner
251ff679ce Minor fixes here and there
llvm-svn: 8963
2003-10-08 16:21:03 +00:00
Chris Lattner
36960b263b Avoid building data structures we don't really need. This improves the runtime
of a test that Bill Wendling sent me from 228.5s to 105s.  Obviously there is
more improvement to be had, but this is a nice speedup which should be "felt"
by many programs.

llvm-svn: 8962
2003-10-08 15:47:41 +00:00
Chris Lattner
116ee26d36 Convert over to short bug URLs
llvm-svn: 8961
2003-10-08 06:01:38 +00:00
Alkis Evlogimenos
74568bc9d4 Change MRegisterDesc::AliasSet, TargetInstrDescriptor::ImplicitDefs
and TargetInstrDescriptor::ImplicitUses to always point to a null
terminated array and never be null. So there is no need to check for
pointer validity when iterating over those sets. Code that looked
like:

if (const unsigned* AS = TID.ImplicitDefs) {
  for (int i = 0; AS[i]; ++i) {
    // use AS[i]
  }
}

was changed to:

for (const unsigned* AS = TID.ImplicitDefs; *AS; ++AS) {
  // use *AS
}

llvm-svn: 8960
2003-10-08 05:20:08 +00:00
Alkis Evlogimenos
a9f403d226 Properly close anchor tags in column descriptions
llvm-svn: 8959
2003-10-08 05:09:52 +00:00
Alkis Evlogimenos
33a498f90c Forward declare class Type since it is used in this class and Type.h is not included
llvm-svn: 8958
2003-10-08 04:45:45 +00:00
Brian Gaeke
c7b7956e94 Add rule for regenerating config.h.in using autoheader.
llvm-svn: 8957
2003-10-07 23:44:10 +00:00
Brian Gaeke
f8bed70df3 Regenerated with (at top-level llvm directory):
% autoheader -I autoconf autoconf/configure.ac

llvm-svn: 8956
2003-10-07 23:39:51 +00:00
Chris Lattner
16b7ed1eaa whoops, don't accidentally lose variable names
llvm-svn: 8955
2003-10-07 22:58:41 +00:00
Chris Lattner
f507e6e58e Fix bug: InstCombine/cast.ll:test11 / PR#7
llvm-svn: 8954
2003-10-07 22:54:13 +00:00
Chris Lattner
7c1203fedb new testcase
llvm-svn: 8953
2003-10-07 22:53:46 +00:00
Chris Lattner
e8b656a62f Refactor code a bit
llvm-svn: 8952
2003-10-07 22:32:43 +00:00
Chris Lattner
bd123c6e51 Add a sanity check for constant expression casts
llvm-svn: 8951
2003-10-07 22:19:19 +00:00
Chris Lattner
f090d28209 Add links to bugzilla
llvm-svn: 8950
2003-10-07 22:14:37 +00:00
John Criswell
fb5c9bdf58 Renamed -use-spec to -use-spec2000.
The pathname to SPEC2000 is now given with the -use-spec2000 option.
On our machines, SPEC2000 will be enabled by default.

llvm-svn: 8949
2003-10-07 21:57:39 +00:00
Chris Lattner
0b423f4290 Cleanups, include a list of passes
llvm-svn: 8948
2003-10-07 21:38:31 +00:00
Brian Gaeke
6f4e769784 Fix bugs in mmap()-of-files test program on Mac OS X:
1) MAP_FAILED is declared to be a pointer
2) can't include sys/mman.h before sys/types.h without getting an error :-(

llvm-svn: 8947
2003-10-07 21:33:27 +00:00
John Criswell
73091106a1 Fixed the location of the expectations file.
Added the registration of the LLVM Database class.

llvm-svn: 8946
2003-10-07 21:30:07 +00:00
John Criswell
80a765254b Switching over to the new test database.
Adding new qmt files should no longer be necessary.
QMTest should know just "magically" know what sort of test each file is.

llvm-svn: 8945
2003-10-07 21:13:47 +00:00
Chris Lattner
198bc99bdd Add more credits
llvm-svn: 8944
2003-10-07 20:50:29 +00:00
Chris Lattner
7c23f7869b cleanup analyze documents
llvm-svn: 8943
2003-10-07 20:36:00 +00:00
Chris Lattner
2e352ae9bd Ensure both columns take 50%
llvm-svn: 8942
2003-10-07 20:35:55 +00:00
Chris Lattner
144a8cbd67 no this really isn't extract
llvm-svn: 8941
2003-10-07 20:33:52 +00:00
Chris Lattner
b49a814ee2 initial checkin of the bugpoint doxs
llvm-svn: 8940
2003-10-07 20:33:30 +00:00