oota-llvm.git
17 years agoMove Mem2Reg/DifferingTypes.ll -> ScalarRepl/DifferingTypes.ll. -scalarrepl
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

17 years agoremvoe two tests that cee has never gotten right
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

17 years agoimplement anyextend from i1 -> i64
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

17 years agothe sparc v8 backend handles this correctly
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

17 years agoremove this xfail'd test, move it to the X86 readme.
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

17 years agomove CodeGen/X86/overlap-add.ll here.
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

17 years agoWe need support for tail calls, this is moved to PR1392
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

17 years agoremove xfailed testcase (attached to pr)
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

17 years agounxfail this, llc doesn't support this feature yet, so don't run it.
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

17 years agoRemove bogus testcase, PR409 is wontfix
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

17 years agothis tests for a missing feature. Move it to PR1391 instead of being an
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

17 years agoremove this xfailed testcase, move it into a comment in PR279, an enhancement PR.
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

17 years agollvm-gcc3 is gone
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

17 years agofix failure on ahs3's tester
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

17 years agoremove bogus xfailed testcase
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

17 years agoUse the personality function that was registered with MMI rather than
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

17 years agoCheck that the right eh personality function is used.
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

17 years agoPropagate alignment/volatility in two places.
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

17 years agonew testcase for PR1371
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

17 years agoadd support for BLOCKINFO records at the module level. This fixes the reader
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

17 years agoFix Transforms/LoopUnroll/2007-05-05-UnrollMiscomp.ll and PR1385.
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

17 years agonew testcase for PR1385
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

17 years agomake a temporary for *SI, no functionality change.
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

17 years agoSpelling fix.
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

17 years agoEmit sections/directives in the proper order. This fixes PR1376. Also,
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

17 years agoadd an abbrev for loads. This shrinks the function block about 50K, from:
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

17 years agoadd abbrevs for the constants tables. This shrinks it from 4.49755e6 bits
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

17 years agominor bugfix
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

17 years agoAdd abbreviations to the TYPE_BLOCK for pointers, functions, structs and arrays.
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

17 years agoFix InstCombine/2007-05-04-Crash.ll and PR1384
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

17 years agonew testacse for PR1384
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

17 years agoemit spiffy little histograms of codes, if enabled. Don't print averages if
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

17 years agodo not charge subblock sizes to the parent block.
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

17 years agoadd a char6 abbrev for bbnames and value names. This represents each character
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

17 years agoadd a 6-bit encoding type for strings.
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

17 years agoadd an abbreviation for the type symtab, this shrinks the TST from 175197 bits
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

17 years agoupdate to new APIs, make output a bit (haha) nicer
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

17 years agoImplement support for globally associating abbrevs with block IDs, which
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

17 years agoAdd a processor.
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

17 years agoallow the 8-bit abbrev to be used for either bb or other values
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

17 years agoshave another 150K off of kc++, by using a 7-bit encoding for BB names
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

17 years agowhere possible, encode symtab names with 7 bits per char instead of 8. This
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

17 years agouse a template to eliminate manual code duplication
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

17 years agoAdd an "implies" field to features. This indicates that, if the current
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

17 years agoEncode all value symtab strings as arrays of 8-bit fixed width integers,
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

17 years agoadd support for array abbreviations.
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

17 years agoeliminate internal length fields from record. Records already know their
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

17 years agoeliminate lengths from record bodies
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

17 years agostub out creation of BLOCKINFO_BLOCK
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

17 years agominor cleanups. Add provisions for a new standard BLOCKINFO_BLOCK
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

17 years agorefcount BitCodeAbbrev objects
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

17 years agoTest that the eh lowering code can handle constant folded bitcasts.
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

17 years agoA bitcast of a global variable may have been constant folded to a GEP -
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

17 years agoUse IntrinsicInst to test for prefetch instructions, which is ever so
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

17 years agooptimize constant layout. This fixes encoding of 181.mcf (by ensuring
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

17 years agosimple optimization for the type table
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

17 years agoregenerate
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

17 years agofix a bug where llvm-as couldn't assemble the .ll file for 252.eon.
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

17 years agostoreinst ctor takes isvolatile before alignment. With this, 176.gcc roundtrips
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

17 years agofix encoding of invoke instructions. kc++ now round trips
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

17 years agofix a misplaced error
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

17 years agoencode and read param attrs along with function type. WE can now roundtrip Olden...
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

17 years agoif functiontype is going to have a pointer to a paramattr object, it better
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

17 years agoBitcast all the bits of a floating point value, not just one. The zero
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

17 years agoAdd a test case for testing the LLI interpreter wrt bitcast of fp to integer.
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

17 years agoadd support for reading the param attrs block
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

17 years agofix a bug encoding param attrs
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

17 years agoadd a helper
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

17 years agoremove dead code
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

17 years agoremove unused code
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

17 years agoadd support for new codes/block
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

17 years agoadd new codes
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

17 years agoadd writer support for param attrs
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

17 years agoAllow this to compile with gcc 4.0.X
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

17 years agonew testcase
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

17 years agopass by reference, not by value
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

17 years agotrivial scaffolding for param attrs
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

17 years agoTest load global in static mode.
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

17 years agoOn Mac OS X, GV requires an extra load only when relocation-model is non-static.
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

17 years agoNew test case.
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

17 years agoDon't create indexed load / store with zero offset!
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

17 years agoShould never see an indexed load / store with zero offset.
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

17 years agoAllow strength reduction to make use of addressing modes for the
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

17 years agoenumerate parameter attr lists.
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

17 years agoEncoding calling conv info in call/invoke instrs, tree add now round trips completely
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

17 years agothe type field for a store is the type of the pointer, not the value.
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

17 years agodon't bother encoding # varargs
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

17 years agofix encoding of BB names in the symtab
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

17 years agoadd a new code
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

17 years agobug fixes
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

17 years agoUnbreak VC++ build.
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

17 years agoimplement the rest of the instructions
Chris Lattner [Thu, 3 May 2007 22:04:19 +0000 (22:04 +0000)]
implement the rest of the instructions

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36699 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoUse iterative while loop instead of recursive function call.
Devang Patel [Thu, 3 May 2007 20:55:18 +0000 (20:55 +0000)]
Use iterative while loop instead of recursive function call.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36694 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoEvan's patch to avoid FPreg->intreg copy for cvt; store to mem
Dale Johannesen [Thu, 3 May 2007 20:54:42 +0000 (20:54 +0000)]
Evan's patch to avoid FPreg->intreg copy for cvt; store to mem

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36693 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoDebug support for arm-linux.
Lauro Ramos Venancio [Thu, 3 May 2007 20:28:35 +0000 (20:28 +0000)]
Debug support for arm-linux.
Patch by Raul Herbster.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36690 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoadd a few more instructions, getting close
Chris Lattner [Thu, 3 May 2007 18:58:09 +0000 (18:58 +0000)]
add a few more instructions, getting close

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36688 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoIndent the .text, .data, and .bss directives in assembly output, so that
Dan Gohman [Thu, 3 May 2007 18:46:30 +0000 (18:46 +0000)]
Indent the .text, .data, and .bss directives in assembly output, so that
they are consistent with the other directives.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36687 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoUse the explicit keyword for the SCEV class' constructor.
Dan Gohman [Thu, 3 May 2007 18:45:06 +0000 (18:45 +0000)]
Use the explicit keyword for the SCEV class' constructor.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36686 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdded -rsh-host and -rsh-user to support remote execution.
Evan Cheng [Thu, 3 May 2007 18:36:15 +0000 (18:36 +0000)]
Added -rsh-host and -rsh-user to support remote execution.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36685 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoThis is a patch to fix a compile error in STLExtras.h, and
Chris Lattner [Thu, 3 May 2007 18:32:10 +0000 (18:32 +0000)]
This is a patch to fix a compile error in STLExtras.h, and
a bug in GraphWriter.cpp.

Patch by Florian Brandner

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36684 91177308-0d34-0410-b5e6-96231b3b80d8