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

15342 Commits

Author SHA1 Message Date
Reid Spencer
bd18813e36 Minor format tweask for tables.
llvm-svn: 17394
2004-11-01 08:19:36 +00:00
Reid Spencer
c40d5f3949 Add layout classes for table elements so tables can be used for layouts.
This is easier than attempting to figure out dual purpose columnar layouts
for multiple browser types. All browsers understand tables.

llvm-svn: 17393
2004-11-01 08:18:06 +00:00
Reid Spencer
69b07e3126 Configuration -> BuildMode
llvm-svn: 17392
2004-11-01 07:53:17 +00:00
Reid Spencer
172d3d0936 Eliminate redundant variable definition. Rename Configuration -> BuildMode
Make lex/yacc output cleaned only if in a directory that has those sources.

llvm-svn: 17391
2004-11-01 07:50:27 +00:00
Chris Lattner
b81520727e Speed up the tail duplication pass on the testcase below from 68.2s to 1.23s:
#define CL0(a) case a: f(); goto c;
 #define CL1(a) CL0(a##0) CL0(a##1) CL0(a##2) CL0(a##3) CL0(a##4) CL0(a##5) \
 CL0(a##6) CL0(a##7) CL0(a##8) CL0(a##9)
 #define CL2(a) CL1(a##0) CL1(a##1) CL1(a##2) CL1(a##3) CL1(a##4) CL1(a##5) \
 CL1(a##6) CL1(a##7) CL1(a##8) CL1(a##9)
 #define CL3(a) CL2(a##0) CL2(a##1) CL2(a##2) CL2(a##3) CL2(a##4) CL2(a##5) \
 CL2(a##6) CL2(a##7) CL2(a##8) CL2(a##9)
 #define CL4(a) CL3(a##0) CL3(a##1) CL3(a##2) CL3(a##3) CL3(a##4) CL3(a##5) \
 CL3(a##6) CL3(a##7) CL3(a##8) CL3(a##9)

 void f();

 void a() {
     int b;
  c: switch (b) {
         CL4(1)
     }
 }

This comes from GCC PR 15524

llvm-svn: 17390
2004-11-01 07:05:07 +00:00
Chris Lattner
3083f2a424 Do not compute the predecessor list for a block unless we need it.
This speeds up simplifycfg on this program, from 44.87s to 0.29s (with
a profiled build):

 #define CL0(a) case a: goto c;
 #define CL1(a) CL0(a##0) CL0(a##1) CL0(a##2) CL0(a##3) CL0(a##4) CL0(a##5) \
 CL0(a##6) CL0(a##7) CL0(a##8) CL0(a##9)
 #define CL2(a) CL1(a##0) CL1(a##1) CL1(a##2) CL1(a##3) CL1(a##4) CL1(a##5) \
 CL1(a##6) CL1(a##7) CL1(a##8) CL1(a##9)
 #define CL3(a) CL2(a##0) CL2(a##1) CL2(a##2) CL2(a##3) CL2(a##4) CL2(a##5) \
 CL2(a##6) CL2(a##7) CL2(a##8) CL2(a##9)
 #define CL4(a) CL3(a##0) CL3(a##1) CL3(a##2) CL3(a##3) CL3(a##4) CL3(a##5) \
 CL3(a##6) CL3(a##7) CL3(a##8) CL3(a##9)

 void f();

 void a() {
     int b;
  c: switch (b) {
         CL4(1)
     }
 }

This testcase is contrived to expose N^2 behavior, but this patch should speedup
simplifycfg on any programs that use large switch statements.  This testcase
comes from GCC PR17895.

llvm-svn: 17389
2004-11-01 06:53:58 +00:00
Chris Lattner
5a49e20096 When compiling a file, indicate what build it is for
llvm-svn: 17388
2004-11-01 06:14:59 +00:00
Reid Spencer
0ffdf26840 Wrap to 80 cols
llvm-svn: 17385
2004-10-31 23:24:31 +00:00
Reid Spencer
8986c9c371 Add UsingLibraries.html link.
llvm-svn: 17384
2004-10-31 23:02:38 +00:00
Reid Spencer
dc9b121365 Give table headers the striped background.
llvm-svn: 17382
2004-10-31 23:01:02 +00:00
Reid Spencer
eddad74d50 * Moved from ObjectFiles.html
* Changed names of libraries to reflect new naming scheme
* Added some more introductory material
* Added a rule of thumb.

llvm-svn: 17381
2004-10-31 23:00:25 +00:00
Reid Spencer
f4cbd2d2ad Renamed UsingLibraries.html
llvm-svn: 17380
2004-10-31 22:59:06 +00:00
Reid Spencer
e4c584928d Get the shared library extension right on all platforms, regardless of what
Chris wants on his platform.

llvm-svn: 17379
2004-10-31 22:53:06 +00:00
Chris Lattner
8572d582cf Fix comment
llvm-svn: 17377
2004-10-31 21:54:51 +00:00
Reid Spencer
365ac26844 Fix output for building shared libraries per Chris' requirements
llvm-svn: 17376
2004-10-31 21:07:34 +00:00
Chris Lattner
d72b6b1e77 Improve comment
llvm-svn: 17375
2004-10-31 19:57:43 +00:00
Reid Spencer
24494ee631 Actually use the correct variable name for building bytecode files.
llvm-svn: 17374
2004-10-31 18:52:15 +00:00
Reid Spencer
ed387ce163 Add the preconditions target per suggestion by Henrik Bach.
llvm-svn: 17373
2004-10-31 18:50:34 +00:00
Reid Spencer
d404203b50 One more missing end tag.
llvm-svn: 17371
2004-10-31 17:58:58 +00:00
Reid Spencer
631f71f093 Correct tag usage for HTML 4.01 Strict compliance
llvm-svn: 17370
2004-10-31 17:56:50 +00:00
Reid Spencer
796028a5e8 Add a tutorial and some more general concepts.
llvm-svn: 17369
2004-10-31 17:51:38 +00:00
Chris Lattner
14d85c9b09 Add more paranoid assertions :)
llvm-svn: 17367
2004-10-31 17:45:40 +00:00
Misha Brukman
e7c9d80670 No, really, the library name is `LLVMexecve'
llvm-svn: 17366
2004-10-31 17:30:52 +00:00
Vikram S. Adve
1f9970e468 Fix patterns to match only one-char words.
llvm-svn: 17365
2004-10-30 23:11:26 +00:00
Reid Spencer
d929c57e06 Add a few more terms.
llvm-svn: 17364
2004-10-30 21:40:28 +00:00
Reid Spencer
8d83b2848f Complete the description of public variables. Internal variables are listed
but not described. It might just stay that way.

llvm-svn: 17363
2004-10-30 21:39:42 +00:00
Reid Spencer
d474420138 Change macro names per naming standard in Makefile.rules.
llvm-svn: 17361
2004-10-30 09:26:22 +00:00
Reid Spencer
d59269ff93 Correct macro names per naming standard in Makefile.rules
llvm-svn: 17360
2004-10-30 09:25:27 +00:00
Reid Spencer
acb1305e99 Internalize variable names to prevent recursive assignment. Cleanup docs.
llvm-svn: 17359
2004-10-30 09:19:36 +00:00
Chris Lattner
29b6259de3 Fix some more problems where we called getOffset before getNode()
llvm-svn: 17358
2004-10-30 07:21:19 +00:00
Chris Lattner
4b741eab69 Fix three bugs:
1. Calls to external global VARIABLES should not be treated as a call to an
    external function
 2. Efficiently deleting an element from a vector by using std::swap with
    the back, then pop_back is NOT a good way to keep the vector sorted.
 3. Our hope of having stuff get deleted by making them redundant just won't
    work.  In particular, if we have three calls in sequence that should be
    merged: A, B, C   first we unify B into A.  To be sure that they appeared
    identical (so B would be erased) we set B = A.  On the next step, we
    unified C into A and set C = A.  Unfortunately, this is no guarantee that
    C = B, so we would fail to delete the dead call.  Switch to a more
    explicit scheme.

llvm-svn: 17357
2004-10-30 05:41:23 +00:00
Chris Lattner
14dfc01ad5 Fix more undefined behavior
llvm-svn: 17356
2004-10-30 04:22:45 +00:00
Chris Lattner
c17cd85776 * Add a method
* change some uses of NH.getNode() in a bool context to use !NH.isNull()
* Fix a bunch of places where we depended on the (undefined) order of
  evaluation of arguments to function calls to ensure that getNode() was
  called before getOffset().  In practice, this was NOT happening.

llvm-svn: 17354
2004-10-30 04:05:01 +00:00
Chris Lattner
5242fcc785 Add an assertion and a method
llvm-svn: 17353
2004-10-30 04:03:47 +00:00
Chris Lattner
f7f0cc323e No really, this is LLVM!
llvm-svn: 17352
2004-10-30 00:57:52 +00:00
Tanya Lattner
8b938744dc Fixed bug with infinite epilogues.
Fixed issue with generating the partial order. It now adds the nodes not in recurrences in sets for each connected component.

llvm-svn: 17351
2004-10-30 00:39:07 +00:00
Misha Brukman
a120d25c45 Fix file header comment
llvm-svn: 17350
2004-10-29 23:26:09 +00:00
Misha Brukman
4e78536fa3 * Fix compilation on AIX: GCC's fixincludes eliminates isinf() declaration
* Move file comment to the top of the header where it belongs

llvm-svn: 17349
2004-10-29 23:17:45 +00:00
Reid Spencer
fad03efc87 Don't modify user vars because they will get passed down (modified) to
sub-makes and recursively append causing huge command lines and incorrect
compilation results.

Also, fix the printvars target to align its output and ensure that the
contents of variables can't get interpreted by the shell.

llvm-svn: 17348
2004-10-29 22:14:56 +00:00
Brian Gaeke
c66a1d540b Change name of target lib to conform to new naming scheme.
llvm-svn: 17347
2004-10-29 21:57:16 +00:00
Brian Gaeke
db07ac46f0 Remove dependency on MRegisterInfo::getRegClass
llvm-svn: 17346
2004-10-29 21:42:27 +00:00
Misha Brukman
c6897a03b6 Fix grammar (i.e.)
llvm-svn: 17343
2004-10-29 19:20:42 +00:00
Reid Spencer
50ef38f62d Disable the build in the samples directory so that llvmc dependencies don't
mess up the build.

llvm-svn: 17342
2004-10-29 18:43:49 +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
Misha Brukman
dba13ac3cb The Alpha (tm) intrinsics have never been used anywhere
llvm-svn: 17340
2004-10-29 18:43:17 +00:00
Misha Brukman
6260f0e534 LLEE execve() wrapper library has changed its name and location
llvm-svn: 17339
2004-10-29 18:36:51 +00:00
Brian Gaeke
a757bae04f When emitting debug msgs for function stubs, don't truncate the
printed pointer value if sizeof(unsigned) != pointer size.  Instead,
use uintptr_t.

llvm-svn: 17338
2004-10-29 18:22:45 +00:00
Vikram S. Adve
5ce9c3cdb0 Print P and [AR] files on update.
llvm-svn: 17337
2004-10-29 17:43:19 +00:00
Reid Spencer
06e1297da7 Make sure the LLVM_CONFIG_DIR environment variable is set so we don't get
error messages from the compiler.

llvm-svn: 17335
2004-10-29 06:42:38 +00:00
Reid Spencer
8ec20b4531 Make the list of automatic Makefile* files updated explicit instead of
generally wildcarded.

llvm-svn: 17334
2004-10-29 04:47:33 +00:00