Chris Lattner [Sat, 5 May 2007 23:40:48 +0000 (23:40 +0000)]
fix a bug I introduced when I merged some code together
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36813
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 22:44:27 +0000 (22:44 +0000)]
this test is now in Target/README.txt
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36812
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 22:44:08 +0000 (22:44 +0000)]
add a note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36811
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 22:42:02 +0000 (22:42 +0000)]
remove an old xfailed test
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36810
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 22:41:33 +0000 (22:41 +0000)]
Implement Transforms/InstCombine/cast_ptr.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36809
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 22:41:13 +0000 (22:41 +0000)]
un-xfail this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36808
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 22:32:24 +0000 (22:32 +0000)]
wrap long lines
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36807
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 22:29:06 +0000 (22:29 +0000)]
the mason example is implemented. Move some examples out of llvm/test,
upgrade the syntax of some other examples.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36806
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 22:28:33 +0000 (22:28 +0000)]
move these xfailed tests to lib/Target/README.txt
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36805
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 22:22:03 +0000 (22:22 +0000)]
Move Mem2Reg/DifferingTypes.ll -> ScalarRepl/DifferingTypes.ll. -scalarrepl
implements this xform.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36804
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 22:19:49 +0000 (22:19 +0000)]
remvoe two tests that cee has never gotten right
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36803
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 22:17:00 +0000 (22:17 +0000)]
implement anyextend from i1 -> i64
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36802
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 22:12:57 +0000 (22:12 +0000)]
the sparc v8 backend handles this correctly
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36801
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 22:10:53 +0000 (22:10 +0000)]
remove this xfail'd test, move it to the X86 readme.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36800
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 22:10:24 +0000 (22:10 +0000)]
move CodeGen/X86/overlap-add.ll here.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36799
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 22:03:12 +0000 (22:03 +0000)]
We need support for tail calls, this is moved to PR1392
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36798
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 21:57:34 +0000 (21:57 +0000)]
remove xfailed testcase (attached to pr)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36797
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 21:51:34 +0000 (21:51 +0000)]
unxfail this, llc doesn't support this feature yet, so don't run it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36796
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 21:49:24 +0000 (21:49 +0000)]
Remove bogus testcase, PR409 is wontfix
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36795
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 21:47:29 +0000 (21:47 +0000)]
this tests for a missing feature. Move it to PR1391 instead of being an
xfailed testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36794
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 21:38:55 +0000 (21:38 +0000)]
remove this xfailed testcase, move it into a comment in PR279, an enhancement PR.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36793
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 21:35:44 +0000 (21:35 +0000)]
llvm-gcc3 is gone
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36792
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 20:50:35 +0000 (20:50 +0000)]
fix failure on ahs3's tester
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36791
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 20:49:28 +0000 (20:49 +0000)]
remove bogus xfailed testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36790
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Sat, 5 May 2007 20:27:00 +0000 (20:27 +0000)]
Use the personality function that was registered with MMI rather than
hardwiring in the C++ one.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36789
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Sat, 5 May 2007 20:22:08 +0000 (20:22 +0000)]
Check that the right eh personality function is used.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36788
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 19:39:05 +0000 (19:39 +0000)]
Propagate alignment/volatility in two places.
Implement support for expanding a bitcast from an illegal vector type to
a legal one (e.g. 4xi32 -> 4xf32 in SSE1). This fixes PR1371 and
CodeGen/X86/2007-05-05-VecCastExpand.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36787
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 19:38:43 +0000 (19:38 +0000)]
new testcase for PR1371
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36786
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 18:57:30 +0000 (18:57 +0000)]
add support for BLOCKINFO records at the module level. This fixes the reader
issues reid noticed last night.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36785
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 18:49:57 +0000 (18:49 +0000)]
Fix Transforms/LoopUnroll/2007-05-05-UnrollMiscomp.ll and PR1385.
If we have a LCSSA, only modify the input value if the inval was defined
by an instruction in the loop. If defined by something before the loop,
it is still valid.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36784
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 18:48:52 +0000 (18:48 +0000)]
new testcase for PR1385
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36783
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 18:36:36 +0000 (18:36 +0000)]
make a temporary for *SI, no functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36782
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Sat, 5 May 2007 16:32:57 +0000 (16:32 +0000)]
Spelling fix.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36781
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Sat, 5 May 2007 09:04:50 +0000 (09:04 +0000)]
Emit sections/directives in the proper order. This fixes PR1376. Also,
some small cleanup was made.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36780
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 07:44:49 +0000 (07:44 +0000)]
add an abbrev for loads. This shrinks the function block about 50K, from:
Block ID #12 (FUNCTION_BLOCK):
Num Instances: 2344
Total Size: 8.8434e+06b/1.10542e+06B/276356W
% of file: 35.6726
Average Size: 3772.78b/471.598B/117.899W
Tot/Avg SubBlocks: 4065/1.73422
Tot/Avg Abbrevs: 0/0
Tot/Avg Records: 128487/54.8153
% Abbrev Recs: 0
to:
Block ID #12 (FUNCTION_BLOCK):
Num Instances: 2344
Total Size: 8.44518e+06b/1.05565e+06B/263912W
% of file: 34.6203
Average Size: 3602.89b/450.362B/112.59W
Tot/Avg SubBlocks: 4065/1.73422
Tot/Avg Abbrevs: 0/0
Tot/Avg Records: 128487/54.8153
% Abbrev Recs: 22.2077
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36779
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 07:36:14 +0000 (07:36 +0000)]
add abbrevs for the constants tables. This shrinks it from 4.
49755e6 bits
to 3.
85972e6 bits in kc++
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36778
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 07:20:34 +0000 (07:20 +0000)]
minor bugfix
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36777
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 06:30:12 +0000 (06:30 +0000)]
Add abbreviations to the TYPE_BLOCK for pointers, functions, structs and arrays.
This shrinks the type_block of kc++ from 139901 bits to 99389 bits (0.55% to 0.39%
of the file), a 40% reduction.
This shrink the record from:
Block ID #10 (TYPE_BLOCK):
Num Instances: 1
Total Size:
139901b/17487.6B/4371.91W
% of file: 0.549306
Num Abbrevs: 0
Num Records: 3203
% Abbrev Recs: 0
to:
Block ID #10 (TYPE_BLOCK):
Num Instances: 1
Total Size: 99389b/12423.6B/3105.91W
% of file: 0.390862
Num Abbrevs: 4
Num Records: 3203
% Abbrev Recs: 99.6566
With a common histogram of:
Code Histogram:
1613 POINTER
1100 FUNCTION
255 STRUCT
224 ARRAY
5 INTEGER
2 OPAQUE
1 LABEL
1 DOUBLE
1 VOID
1 NUMENTRY
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36776
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 01:59:31 +0000 (01:59 +0000)]
Fix InstCombine/2007-05-04-Crash.ll and PR1384
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36775
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 01:59:05 +0000 (01:59 +0000)]
new testacse for PR1384
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36774
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 01:46:49 +0000 (01:46 +0000)]
emit spiffy little histograms of codes, if enabled. Don't print averages if
there is only one item.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36773
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 01:29:31 +0000 (01:29 +0000)]
do not charge subblock sizes to the parent block.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36772
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 01:26:50 +0000 (01:26 +0000)]
add a char6 abbrev for bbnames and value names. This represents each character
with 6 bits where possible. This shrinks kc++ from
3324164B to
3183584B. The
old VST was:
Block ID #14 (VALUE_SYMTAB):
Total Size: 1.26713e+07b/1.58391e+06B/395978W
Average Size: 5403.53b/675.442B/168.86W
% of file: 47.6484
The new one is:
Block ID #14 (VALUE_SYMTAB):
Total Size: 1.15467e+07b/1.44334e+06B/360834W
Average Size: 4923.96b/615.495B/153.874W
% of file: 45.3368
This is 11% smaller than the VST in the bytecode format.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36771
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 01:15:42 +0000 (01:15 +0000)]
add a 6-bit encoding type for strings.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36770
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 00:47:19 +0000 (00:47 +0000)]
add an abbreviation for the type symtab, this shrinks the TST from 175197 bits
to 103165 bits:
Old:
Block ID #13 (TYPE_SYMTAB):
Num Instances: 1
Total Size:
175197b/21899.6B/5474.91W
Average Size:
175197b/21899.6B/5474.91W
% of file: 0.657023
Tot/Avg SubBlocks: 0/0
Tot/Avg Abbrevs: 0/0
Tot/Avg Records: 255/255
% Abbrev Recs: 0
New:
Block ID #13 (TYPE_SYMTAB):
Num Instances: 1
Total Size:
103165b/12895.6B/3223.91W
Average Size:
103165b/12895.6B/3223.91W
% of file: 0.387937
Tot/Avg SubBlocks: 0/0
Tot/Avg Abbrevs: 1/1
Tot/Avg Records: 255/255
% Abbrev Recs: 100
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36769
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 00:17:42 +0000 (00:17 +0000)]
update to new APIs, make output a bit (haha) nicer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36768
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 5 May 2007 00:17:00 +0000 (00:17 +0000)]
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 :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36767
91177308-0d34-0410-b5e6-
96231b3b80d8
Lauro Ramos Venancio [Fri, 4 May 2007 22:16:30 +0000 (22:16 +0000)]
Add a processor.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36765
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 21:31:13 +0000 (21:31 +0000)]
allow the 8-bit abbrev to be used for either bb or other values
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36761
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 20:58:35 +0000 (20:58 +0000)]
shave another 150K off of kc++, by using a 7-bit encoding for BB names
where we can. This shrinks kc++'s down to 3368K, with a VST record of:
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
Isn't it nice to be able to optimizer bc size without touching the reader? :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36759
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 20:52:02 +0000 (20:52 +0000)]
where possible, encode symtab names with 7 bits per char instead of 8. This
shaves 110K off kc++ to 3514K. Before:
Block ID #14 (VALUE_SYMTAB):
Num Instances: 2345
Total Size: 1.50425e+07b/1.88031e+06B/470077W
Average Size: 6414.69b/801.837B/200.459W
% of file: 51.8057
Tot/Avg SubBlocks: 0/0
Tot/Avg Abbrevs: 2345/1
Tot/Avg Records: 120924/51.5667
% Abbrev Recs: 85.1791
after:
Block ID #14 (VALUE_SYMTAB):
Num Instances: 2345
Total Size: 1.41229e+07b/1.76536e+06B/441341W
Average Size: 6022.56b/752.82B/188.205W
% of file: 50.2295
Tot/Avg SubBlocks: 0/0
Tot/Avg Abbrevs: 4690/2
Tot/Avg Records: 120924/51.5667
% Abbrev Recs: 85.1791
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36758
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 20:40:50 +0000 (20:40 +0000)]
use a template to eliminate manual code duplication
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36757
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Fri, 4 May 2007 20:38:40 +0000 (20:38 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36756
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 20:34:50 +0000 (20:34 +0000)]
Encode all value symtab strings as arrays of 8-bit fixed width integers,
instead of the default inefficient encoding. This shrinks kc++ from 4134K
to 3629K
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36755
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 20:33:47 +0000 (20:33 +0000)]
add support for array abbreviations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36754
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 19:11:41 +0000 (19:11 +0000)]
eliminate internal length fields from record. Records already know their
total length
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36752
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 19:10:48 +0000 (19:10 +0000)]
eliminate lengths from record bodies
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36751
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 18:26:27 +0000 (18:26 +0000)]
stub out creation of BLOCKINFO_BLOCK
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36749
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 18:25:49 +0000 (18:25 +0000)]
minor cleanups. Add provisions for a new standard BLOCKINFO_BLOCK
block type.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36748
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 17:35:19 +0000 (17:35 +0000)]
refcount BitCodeAbbrev objects
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36747
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Fri, 4 May 2007 17:14:42 +0000 (17:14 +0000)]
Test that the eh lowering code can handle constant folded bitcasts.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36746
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Fri, 4 May 2007 17:12:26 +0000 (17:12 +0000)]
A bitcast of a global variable may have been constant folded to a GEP -
handle this case too.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36745
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 4 May 2007 14:59:09 +0000 (14:59 +0000)]
Use IntrinsicInst to test for prefetch instructions, which is ever so
slightly nicer than using CallInst with an extra check; thanks Chris.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36743
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 05:21:47 +0000 (05:21 +0000)]
optimize constant layout. This fixes encoding of 181.mcf (by ensuring
integer structure idx's are emitted before constant expr geps) and shrinks
files slightly. For example kc++ shrinks from
4326188 to
4240128 bytes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36742
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 05:05:48 +0000 (05:05 +0000)]
simple optimization for the type table
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36741
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 04:01:37 +0000 (04:01 +0000)]
regenerate
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36740
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 04:01:07 +0000 (04:01 +0000)]
fix a bug where llvm-as couldn't assemble the .ll file for 252.eon.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36739
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 03:57:30 +0000 (03:57 +0000)]
storeinst ctor takes isvolatile before alignment. With this, 176.gcc roundtrips
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36738
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 03:52:24 +0000 (03:52 +0000)]
fix encoding of invoke instructions. kc++ now round trips
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36737
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 03:50:29 +0000 (03:50 +0000)]
fix a misplaced error
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36736
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 03:41:34 +0000 (03:41 +0000)]
encode and read param attrs along with function type. WE can now roundtrip Olden/voronoi loslessly
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36735
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 03:39:28 +0000 (03:39 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36734
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 4 May 2007 03:37:38 +0000 (03:37 +0000)]
Bitcast all the bits of a floating point value, not just one. The zero
extension is needed because the constructor for the Destination value
causes the APInt to have a bit width of 1.
Patch by Guoling Han.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36733
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 4 May 2007 03:35:17 +0000 (03:35 +0000)]
Add a test case for testing the LLI interpreter wrt bitcast of fp to integer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36732
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 03:30:17 +0000 (03:30 +0000)]
add support for reading the param attrs block
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36731
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 03:14:09 +0000 (03:14 +0000)]
fix a bug encoding param attrs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36730
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 03:13:39 +0000 (03:13 +0000)]
add a helper
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36729
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 03:02:54 +0000 (03:02 +0000)]
remove dead code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36728
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 03:01:46 +0000 (03:01 +0000)]
remove unused code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36727
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 03:01:41 +0000 (03:01 +0000)]
add support for new codes/block
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36726
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 03:00:00 +0000 (03:00 +0000)]
add new codes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36725
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 02:59:04 +0000 (02:59 +0000)]
add writer support for param attrs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36724
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 4 May 2007 01:43:33 +0000 (01:43 +0000)]
Allow this to compile with gcc 4.0.X
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36723
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 00:51:23 +0000 (00:51 +0000)]
new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36722
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 00:45:24 +0000 (00:45 +0000)]
pass by reference, not by value
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36721
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 May 2007 00:44:52 +0000 (00:44 +0000)]
trivial scaffolding for param attrs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36720
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 4 May 2007 00:29:34 +0000 (00:29 +0000)]
Test load global in static mode.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36719
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 4 May 2007 00:26:58 +0000 (00:26 +0000)]
On Mac OS X, GV requires an extra load only when relocation-model is non-static.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36718
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 3 May 2007 23:53:36 +0000 (23:53 +0000)]
New test case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36717
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 3 May 2007 23:52:19 +0000 (23:52 +0000)]
Don't create indexed load / store with zero offset!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36716
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 3 May 2007 23:30:36 +0000 (23:30 +0000)]
Should never see an indexed load / store with zero offset.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36714
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 3 May 2007 23:20:33 +0000 (23:20 +0000)]
Allow strength reduction to make use of addressing modes for the
address operand in a prefetch intrinsic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36713
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 May 2007 22:46:43 +0000 (22:46 +0000)]
enumerate parameter attr lists.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36709
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 May 2007 22:34:03 +0000 (22:34 +0000)]
Encoding calling conv info in call/invoke instrs, tree add now round trips completely
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36707
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 May 2007 22:21:59 +0000 (22:21 +0000)]
the type field for a store is the type of the pointer, not the value.
With this fix I can round trip treeaadd, only losing calling conv info.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36706
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 May 2007 22:19:34 +0000 (22:19 +0000)]
don't bother encoding # varargs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36705
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 May 2007 22:18:21 +0000 (22:18 +0000)]
fix encoding of BB names in the symtab
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36704
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 May 2007 22:16:11 +0000 (22:16 +0000)]
add a new code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36703
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 May 2007 22:09:51 +0000 (22:09 +0000)]
bug fixes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36701
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeff Cohen [Thu, 3 May 2007 22:09:21 +0000 (22:09 +0000)]
Unbreak VC++ build.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36700
91177308-0d34-0410-b5e6-
96231b3b80d8