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

15183 Commits

Author SHA1 Message Date
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
9f23af6d68 Remove dead var
llvm-svn: 17485
2004-11-05 04:52:08 +00:00
Chris Lattner
499e1b16a7 Quiet VC++ warnings
llvm-svn: 17484
2004-11-05 04:50:59 +00:00
Chris Lattner
bde92f3c03 Do not make i have bigger scope that we need
llvm-svn: 17483
2004-11-05 04:47:37 +00:00
Chris Lattner
b5ff07e46e Remove dead vars
llvm-svn: 17482
2004-11-05 04:46:22 +00:00
Chris Lattner
064071600d Fix some warnings on VC++
llvm-svn: 17481
2004-11-05 04:45:43 +00:00
Chris Lattner
b36e685cb7 Remove this file as suggested by Jeff Cohen
llvm-svn: 17480
2004-11-05 04:17:19 +00:00
Chris Lattner
346ccb9d7d Fix project file, patch contributed by Jeff Cohen
llvm-svn: 17479
2004-11-05 04:15:30 +00:00
Misha Brukman
2c024cf4a0 Clean up code layout, delete extra blank line, say fibonacci' instead of foo'
llvm-svn: 17478
2004-11-05 04:11:40 +00:00
Nate Begeman
bc8bc24d28 Thanks to sabre for pointing out that we were incorrectly codegen'ing
int test(int x) { return 32768 - x; }

Fixed by teaching the function that checks a constant's validity to be used
as an immediate argument about subtract-from instructions.

llvm-svn: 17476
2004-11-04 19:43:18 +00:00
Chris Lattner
20cee8ccee Fix typeo
llvm-svn: 17466
2004-11-04 05:00:18 +00:00
Brian Gaeke
85e7df8097 Handle "call" operands of type long/ulong passed in registers.
llvm-svn: 17464
2004-11-04 00:27:04 +00:00
Chris Lattner
0a677495c3 Cleanup this example, simplifying it and making it conform to LLVM coding
standards

llvm-svn: 17459
2004-11-03 21:43:03 +00:00
Chris Lattner
3b6d1045d3 Don't call Constant::getNullValue when the argument could be VoidTy
llvm-svn: 17457
2004-11-03 18:51:26 +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
Brian Gaeke
ead580646f CONFIGURATION isn't spelled Configuration, it's spelled BuildMode.
Due to qmtest's or llvm.py's lousy error checking, this single error
causes qmtest to fork-bomb the machine, filling the process table with
python processes that do nothing.  Clearly, better error checking is
needed.

llvm-svn: 17449
2004-11-03 17:11:23 +00:00
Reid Spencer
82c46f0f2e Top level files for building natively on win32
llvm-svn: 17447
2004-11-03 16:14:40 +00:00
Reid Spencer
33d030e093 MS Visual Studio files for building LLVM on Win32 platforms.
llvm-svn: 17446
2004-11-03 16:13:14 +00:00
Chris Lattner
f2976f16ce Fix this function to not say that longs have 8-byte alignment on X86/PPC.
This method is really a gross hack, but at least we can make it work on
the targets we support right now.

This bug fix stops a crash in a testcase reduced from 176.gcc

llvm-svn: 17443
2004-11-02 22:18:18 +00:00
Tanya Lattner
bd82bbff7c Added gross hacks such as creating my own def-use map, and picking on Instruction that I can add all my TmpInstructions to its MCFI.
llvm-svn: 17441
2004-11-02 21:04:56 +00:00
Chris Lattner
53a16841da Fix typo, contributed by Henrik Bach!
llvm-svn: 17434
2004-11-02 17:31:02 +00:00
Reid Spencer
ab68b552b9 * New Recursive Target: clean-all. This target will recursively descend the
$(ObjDir) and clean out all build modes (Debug, Release, Profile) in
  addition to the normal "clean" rules.
* Fix "clean" problems with Lex/Yacc so all files are remove properly.
* Ensure errors from "rm" don't thwart the uninstall and clean targets.

llvm-svn: 17433
2004-11-02 16:56:15 +00:00
Reid Spencer
0fef75d300 * New Recursive Target: clean-all
llvm-svn: 17432
2004-11-02 16:36:03 +00:00
Chris Lattner
d9696aa7b8 Fix a warning
llvm-svn: 17431
2004-11-02 15:27:57 +00:00
Chris Lattner
33ed2c8984 * Rearrange code slightly
* Disable broken transforms for simplifying (setcc (cast X to larger), CI)
  where CC is not != or ==

llvm-svn: 17422
2004-11-02 03:50:32 +00:00
Reid Spencer
34bc328438 List the individual tools for easier reference.
Make the bugpoint link reference the man page in the CommandGuide until
the Bugpoint.html file can describe bugpoint in a little more of a tutorial
style instead of just being a man page.

llvm-svn: 17416
2004-11-01 21:57:35 +00:00
Reid Spencer
28feb03d39 Add compliant header.
NOTE: This doc needs to describe the bugpoint "subsystem" not the tool.

llvm-svn: 17415
2004-11-01 21:55:46 +00:00
Reid Spencer
f4cc206a6e Add missing tag.
llvm-svn: 17414
2004-11-01 21:31:39 +00:00
Reid Spencer
73114d33b3 Update table to llvm.css standards.
llvm-svn: 17409
2004-11-01 20:47:22 +00:00
Reid Spencer
36f04ab58a Get rid of bogus entity references.
llvm-svn: 17408
2004-11-01 20:41:01 +00:00
Chris Lattner
10de12fd46 Add placeholder variable to make Win32 work, applied for Morten Ofstad
llvm-svn: 17406
2004-11-01 20:10:20 +00:00
Reid Spencer
7685000497 Attempt CSS 2 compliance.
llvm-svn: 17404
2004-11-01 09:26:57 +00:00
Reid Spencer
1c55d1f610 Attempt CSS 2 validation.
llvm-svn: 17403
2004-11-01 09:25:03 +00:00
Reid Spencer
34a5b25579 HTML 4.01 Strict compliance.
llvm-svn: 17402
2004-11-01 09:22:49 +00:00
Reid Spencer
8fb076a94c Correct the document type declaration.
llvm-svn: 17401
2004-11-01 09:21:32 +00:00
Reid Spencer
e5965e39f2 Add the HTML 4.01 and CSS icons with links to validators.
llvm-svn: 17400
2004-11-01 09:19:53 +00:00
Reid Spencer
0ad8f7d7ac Attempt HTML 4.01 Strict compliance.
llvm-svn: 17399
2004-11-01 09:16:30 +00:00
Reid Spencer
757226cd13 Cleanup the constants section.
llvm-svn: 17398
2004-11-01 09:02:53 +00:00
Reid Spencer
d3b588c95f Remove spurious end tag, fix indentation.
llvm-svn: 17397
2004-11-01 08:30:14 +00:00
Reid Spencer
58d1e87033 Make HTML 4.01 Strict compliant.
llvm-svn: 17396
2004-11-01 08:26:25 +00:00
Reid Spencer
2cc38af3df Fix tag placement to make HTML 4.01 Strict compliant.
llvm-svn: 17395
2004-11-01 08:24:13 +00:00
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