1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-25 04:02:41 +01:00
Commit Graph

5289 Commits

Author SHA1 Message Date
Chris Lattner
ae80a1de2f add support for identifying bitcode files
llvm-svn: 36845
2007-05-06 05:30:10 +00:00
Chris Lattner
cee444cf93 Add a helper that either opens a file or stdin.
llvm-svn: 36835
2007-05-06 04:41:59 +00:00
Jeff Cohen
0b108b4f29 Make code more 64-bit aware.
llvm-svn: 36833
2007-05-06 03:24:19 +00:00
Jeff Cohen
ce844b2aaa Unbreak VC++.
llvm-svn: 36831
2007-05-06 03:12:47 +00:00
Chris Lattner
bf23240f44 add a new CreateBitcodeWriterPass method, which creates a bitcode writer as
a pass

llvm-svn: 36828
2007-05-06 02:30:12 +00:00
Chris Lattner
c9ca38fedf add inline asm code
llvm-svn: 36826
2007-05-06 01:50:11 +00:00
Chris Lattner
2753e54f7b Fix a subtle bug that prevented round-tripping 470.lbm
llvm-svn: 36825
2007-05-06 01:43:38 +00:00
Chris Lattner
6d0c5eb739 add a denser encoding for null terminated strings, add a 6-bit abbrev as
well.  This shrinks kc++ from 2724088 to 2717360 bytes.

llvm-svn: 36821
2007-05-06 00:53:07 +00:00
Chris Lattner
34b256e1a6 implement the 'string constant' optimization. This shrinks kc.bit from
2878544 to 2815788

llvm-svn: 36818
2007-05-06 00:35:24 +00:00
Chris Lattner
9818d0a7e6 fix a bug I introduced when I merged some code together
llvm-svn: 36813
2007-05-05 23:40:48 +00:00
Anton Korobeynikov
ce48606d7a Emit sections/directives in the proper order. This fixes PR1376. Also,
some small cleanup was made.

llvm-svn: 36780
2007-05-05 09:04:50 +00:00
Chris Lattner
7d16cb364d minor bugfix
llvm-svn: 36777
2007-05-05 07:20:34 +00:00
Chris Lattner
cedc5577f2 add a 6-bit encoding type for strings.
llvm-svn: 36770
2007-05-05 01:15:42 +00:00
Chris Lattner
eca2bb1334 Implement support for globally associating abbrevs with block IDs, which
relieves us from having to emit the abbrevs into each instance of the block.
This shrinks kc.bit from 3368K to 3333K, but will be a more significant win
once instructions are abbreviated.

The VST went from:

  Block ID #14 (VALUE_SYMTAB):
      Num Instances: 2345
         Total Size: 1.29508e+07b/1.61885e+06B/404713W
       Average Size: 5522.73b/690.342B/172.585W
          % of file: 48.0645
  Tot/Avg SubBlocks: 0/0
    Tot/Avg Abbrevs: 7035/3
    Tot/Avg Records: 120924/51.5667
      % Abbrev Recs: 100

to:

  Block ID #14 (VALUE_SYMTAB):
      Num Instances: 2345
         Total Size: 1.26713e+07b/1.58391e+06B/395978W
       Average Size: 5403.53b/675.442B/168.86W
          % of file: 47.5198
  Tot/Avg SubBlocks: 0/0
    Tot/Avg Abbrevs: 0/0
    Tot/Avg Records: 120924/51.5667
      % Abbrev Recs: 100

because we didn't emit the same 3 abbrevs 2345 times :)

llvm-svn: 36767
2007-05-05 00:17:00 +00:00
Chris Lattner
e2b2272c53 use a template to eliminate manual code duplication
llvm-svn: 36757
2007-05-04 20:40:50 +00:00
Bill Wendling
dc82c5a195 Add an "implies" field to features. This indicates that, if the current
feature is set, then the features in the implied list should be set also.
The opposite is also enforced: if a feature in the implied list isn't set,
then the feature that owns that implies list shouldn't be set either.

llvm-svn: 36756
2007-05-04 20:38:40 +00:00
Chris Lattner
75b84adf6b add support for array abbreviations.
llvm-svn: 36754
2007-05-04 20:33:47 +00:00
Chris Lattner
a4aa2e9b7a eliminate lengths from record bodies
llvm-svn: 36751
2007-05-04 19:10:48 +00:00
Chris Lattner
4e0c6003b7 minor cleanups. Add provisions for a new standard BLOCKINFO_BLOCK
block type.

llvm-svn: 36748
2007-05-04 18:25:49 +00:00
Chris Lattner
f0086ffafa refcount BitCodeAbbrev objects
llvm-svn: 36747
2007-05-04 17:35:19 +00:00
Chris Lattner
da3b0264f7 if functiontype is going to have a pointer to a paramattr object, it better
be const.  The only way to get a pointer to these returns a const pointer.

llvm-svn: 36734
2007-05-04 03:39:28 +00:00
Chris Lattner
b973c9b64e add a helper
llvm-svn: 36729
2007-05-04 03:13:39 +00:00
Chris Lattner
bb8d1755f6 remove unused code
llvm-svn: 36727
2007-05-04 03:01:46 +00:00
Chris Lattner
2d0c97d9a1 add new codes
llvm-svn: 36725
2007-05-04 03:00:00 +00:00
Chris Lattner
43c70c8404 add a new code
llvm-svn: 36703
2007-05-03 22:16:11 +00:00
Jeff Cohen
d59084b6f6 Unbreak VC++ build.
llvm-svn: 36700
2007-05-03 22:09:21 +00:00
Devang Patel
e0b9bd0e49 Use iterative while loop instead of recursive function call.
llvm-svn: 36694
2007-05-03 20:55:18 +00:00
Dan Gohman
793c6e2d5e Use the explicit keyword for the SCEV class' constructor.
llvm-svn: 36686
2007-05-03 18:45:06 +00:00
Chris Lattner
49b1ec44eb This is a patch to fix a compile error in STLExtras.h, and
a bug in GraphWriter.cpp.

Patch by Florian Brandner

llvm-svn: 36684
2007-05-03 18:32:10 +00:00
Chris Lattner
8b4f0920ab remove extraneous type qualifiers
llvm-svn: 36679
2007-05-03 18:14:56 +00:00
Chris Lattner
fb7a009708 remove extraneous top-level semi's
llvm-svn: 36678
2007-05-03 18:13:15 +00:00
Chris Lattner
060e3be47e remove two useless functions. Just inherit Type's implementation instead.
llvm-svn: 36677
2007-05-03 17:10:20 +00:00
Chris Lattner
d710ec51bf remove useless type qualifiers
llvm-svn: 36676
2007-05-03 17:09:36 +00:00
Chris Lattner
5f70561cc5 avoid invalid C++ token in #error
llvm-svn: 36674
2007-05-03 16:57:26 +00:00
Devang Patel
cd45427a87 Drop 'const'
llvm-svn: 36662
2007-05-03 01:11:54 +00:00
Chris Lattner
a3d01187b7 Add a new option.
llvm-svn: 36657
2007-05-03 00:16:07 +00:00
Devang Patel
8ee9065162 Use 'static const char' instead of 'static const int'.
Due to darwin gcc bug, one version of darwin linker coalesces
static const int, which defauts PassID based pass identification.

llvm-svn: 36652
2007-05-02 21:39:20 +00:00
Devang Patel
32786f1037 Re-install patch to enable use of PassID.
I am preparing another patch to address the failure that prompted
Chris to revert this patch earlier.

llvm-svn: 36649
2007-05-02 20:38:25 +00:00
Chris Lattner
79333821da update to reflect reality
llvm-svn: 36643
2007-05-02 05:47:22 +00:00
Chris Lattner
055c13234b revert enough of devang's recent patches to get the tree basically working again
llvm-svn: 36638
2007-05-02 04:25:31 +00:00
Anton Korobeynikov
6e6bfcaf4d Fix couple of bugs connected with eh info:
1. Correct output offsets on Linux
2. Fix "style" of personality function. It shouldn't be indirect.

llvm-svn: 36633
2007-05-01 22:23:12 +00:00
Devang Patel
38a66bc82e Do not use typeinfo to identify pass in pass manager.
llvm-svn: 36632
2007-05-01 21:15:47 +00:00
Evan Cheng
e7bd8c76db Pass call frame setup SP adjustment along to eliminateFrameIndex().
llvm-svn: 36624
2007-05-01 08:59:18 +00:00
Evan Cheng
65f0ba62d5 Add SPAdj parameter to account for call frame setup SP adjustment.
llvm-svn: 36623
2007-05-01 08:58:27 +00:00
Nate Begeman
767ee95d29 llvm bug #1350, parts 1, 2, and 3.
llvm-svn: 36618
2007-05-01 05:57:02 +00:00
Chris Lattner
21e0d64a6e several bitfixes to JumpToBit
llvm-svn: 36616
2007-05-01 05:51:32 +00:00
Chris Lattner
eb2a5f5f99 add JumpToBit, an explicit init method, and a default ctor.
llvm-svn: 36613
2007-05-01 04:59:06 +00:00
Chris Lattner
92eca49c3f add missing opcode.
llvm-svn: 36608
2007-05-01 02:12:05 +00:00
Evan Cheng
34e61fc3cd Added hook hasReservedCallFrame(). It returns true if the call frame is
included as part of the stack frame.

llvm-svn: 36606
2007-05-01 00:47:46 +00:00
Christopher Lamb
799da3f145 Implement review feedback.
llvm-svn: 36603
2007-04-30 23:54:10 +00:00