Commit Graph

842 Commits

Author SHA1 Message Date
Owen Anderson 32bc1e1a3b Use LLVMContext in the LLLexer.
llvm-svn: 74934
2009-07-07 18:44:11 +00:00
Chris Lattner 200e0757c7 switch the .ll parser to use SourceMgr.
llvm-svn: 74735
2009-07-02 23:08:13 +00:00
Chris Lattner a76611a535 switch the .ll parser into SMDiagnostic.
llvm-svn: 74734
2009-07-02 22:46:18 +00:00
Owen Anderson ac7334c1cf Use LLVMContext for generating MDStrings too.
llvm-svn: 74710
2009-07-02 17:28:30 +00:00
Owen Anderson 29ec3e0e50 Use LLVMContext to generate metadata constants.
llvm-svn: 74708
2009-07-02 17:20:28 +00:00
Owen Anderson 09063cec4e Use LLVMContext for generating UndefValue constants too!
llvm-svn: 74703
2009-07-02 17:04:01 +00:00
Owen Anderson 02a9da33b3 Try again at converting the LLParser to use LLVMContext, without massive breakage this time.
llvm-svn: 74671
2009-07-01 23:57:11 +00:00
Owen Anderson 2a15443aa8 Make the use of const with respect to LLVMContext sane. Hopefully this is the last time, for the
moment, that I will need to make far-reaching changes.

llvm-svn: 74655
2009-07-01 23:13:44 +00:00
Bill Wendling 4534d2562b --- Reverse-merging (from foreign repository) r74648 into '.':
U    include/llvm/LLVMContext.h
U    lib/VMCore/LLVMContext.cpp
U    lib/AsmParser/LLParser.cpp
U    lib/AsmParser/LLParser.h

Temporarily reverting r74648. It was causing massive failures in release mode.

llvm-svn: 74653
2009-07-01 22:33:26 +00:00
Owen Anderson 7373c6bbd6 Convert LLParser to use LLVMContext for creating constants.
llvm-svn: 74648
2009-07-01 21:57:44 +00:00
Owen Anderson 1cf085d558 Hold the LLVMContext by reference rather than by pointer.
llvm-svn: 74640
2009-07-01 21:22:36 +00:00
Devang Patel 39e64d452a Support stand alone metadata syntax.
!0 = constant metadata !{i32 21, i32 22}
@llvm.blah = constant metadata !{i32 1000, i16 200, metadata !0}

llvm-svn: 74630
2009-07-01 19:21:12 +00:00
Owen Anderson 6773d388aa Add a pointer to the owning LLVMContext to Module. This requires threading LLVMContext through a lot
of the bitcode reader and ASM parser APIs, as well as supporting it in all of the tools.

Patches for Clang and LLVM-GCC to follow.

llvm-svn: 74614
2009-07-01 16:58:40 +00:00
Chris Lattner 96122debc1 improve the APIs for creating struct and function types with no arguments/elements
to not have to create a temporary vector (in the API at least).  Patch by Jay Foad!

llvm-svn: 74584
2009-07-01 04:13:31 +00:00
Anton Korobeynikov a8fd40b50a Address review comments: add 3 ARM calling conventions.
Dispatch C calling conv. to one of these conventions based on
target triple and subtarget features.

llvm-svn: 73530
2009-06-16 18:50:49 +00:00
Dan Gohman 0b5d042562 Fix a typo in a diagnostic.
llvm-svn: 73429
2009-06-15 21:52:11 +00:00
Dan Gohman 4fe64deb7b Fix old-style type names in comments.
llvm-svn: 73362
2009-06-14 23:30:43 +00:00
Nick Lewycky 0aa6a74a79 Create FunctionType::isValidArgumentType to go along with isValidReturnType.
Also create isValidElementType for ArrayType, PointerType, StructType and
VectorType.

Make LLParser use them. This closes up some holes like an assertion failure on:

  %x = type {label}

but largely doesn't change any semantics. The only thing we accept now which
we didn't before is vectors of opaque type such as "<4 x opaque>". The opaque
can be resolved to an int or float when linking.

llvm-svn: 73016
2009-06-07 07:26:46 +00:00
Nick Lewycky 8b165afabe Refuse metadata* type for function arguments.
llvm-svn: 73010
2009-06-07 01:45:11 +00:00
Devang Patel d1c7d34924 Add new function attribute - noimplicitfloat
Update code generator to use this attribute and remove NoImplicitFloat target option.
Update llc to set this attribute when -no-implicit-float command line option is used.

llvm-svn: 72959
2009-06-05 21:57:13 +00:00
Dan Gohman a5b9645c4b Split the Add, Sub, and Mul instruction opcodes into separate
integer and floating-point opcodes, introducing
FAdd, FSub, and FMul.

For now, the AsmParser, BitcodeReader, and IRBuilder all preserve
backwards compatability, and the Core LLVM APIs preserve backwards
compatibility for IR producers. Most front-ends won't need to change
immediately.

This implements the first step of the plan outlined here:
http://nondot.org/sabre/LLVMNotes/IntegerOverflow.txt

llvm-svn: 72897
2009-06-04 22:49:04 +00:00
Devang Patel 72a4d2fec1 Add new function attribute - noredzone.
Update code generator to use this attribute and remove DisableRedZone target option.
Update llc to set this attribute when -disable-red-zone command line option is used.

llvm-svn: 72894
2009-06-04 22:05:33 +00:00
Nick Lewycky adbc284666 Give embedded metadata its own type instead of relying on EmptyStructTy.
llvm-svn: 72610
2009-05-30 05:06:04 +00:00
Jay Foad 7d0479f2c2 Use v.data() instead of &v[0] when SmallVector v might be empty.
llvm-svn: 72210
2009-05-21 09:52:38 +00:00
Nick Lewycky b8f9b7a965 Make MDNode use CallbackVH. Also change MDNode to store Value* instead of
Constant* in preperation of a future change to support holding non-Constants
in an MDNode.

llvm-svn: 71407
2009-05-10 20:57:05 +00:00
Chris Lattner 4c73d7a9b8 testcase and asmparser fix for PR4066
llvm-svn: 70080
2009-04-25 21:26:00 +00:00
Nick Lewycky 8019af6b2c Fix warning in .ll parser, detect and reject available_externally on function
declarations.

llvm-svn: 68944
2009-04-13 07:02:02 +00:00
Chris Lattner 184f1be4a8 Add a new "available_externally" linkage type. This is intended
to support C99 inline, GNU extern inline, etc.  Related bugzilla's
include PR3517, PR3100, & PR2933.  Nothing uses this yet, but it
appears to work.

llvm-svn: 68940
2009-04-13 05:44:34 +00:00
Nick Lewycky 49f891958f Add support for embedded metadata to LLVM. This introduces two new types of
Constant, MDString and MDNode which can only be used by globals with a name
that starts with "llvm." or as arguments to a function with the same naming
restriction.

llvm-svn: 68420
2009-04-04 07:22:01 +00:00
Chris Lattner 56a95f6c16 Fix a bug in our autoupgrade support: in an argument list to a function
call, we should treat "i64 zext" as the start of a constant expr, but
"i64 0 zext" as an argument with an obsolete attribute on it (this form
is already tested by test/Assembler/2007-07-30-AutoUpgradeZextSext.ll).

Make the autoupgrade logic more discerning to avoid treating "i64 zext"
as an old-style attribute, causing us to reject a valid constant expr.
This fixes PR3876.

llvm-svn: 67682
2009-03-25 06:36:36 +00:00
Dale Johannesen 93eefa0043 Fix internal representation of fp80 to be the
same as a normal i80 {low64, high16} rather
than its own {high64, low16}.  A depressing number
of places know about this; I think I got them all.
Bitcode readers and writers convert back to the old
form to avoid breaking compatibility.

llvm-svn: 67562
2009-03-23 21:16:53 +00:00
Duncan Sands 4581bebf2a It makes no sense to have a ODR version of common
linkage, so remove it.

llvm-svn: 66690
2009-03-11 20:14:15 +00:00
Duncan Sands e2881053c9 Remove the one-definition-rule version of extern_weak
linkage: this linkage type only applies to declarations,
but ODR is only relevant to globals with definitions.

llvm-svn: 66650
2009-03-11 08:08:06 +00:00
Chris Lattner f880ca2a31 Fix two classes of bugs. First:
validate an invariant so that the asmparser rejects a bad construct
instead of the verifier.  Before:

llvm-as: assembly parsed, but does not verify as correct!
Invalid struct return type!
i64 (%struct.Type*, %struct.Type*)* @foo

after:

llvm-as: t.ll:5:8: functions with 'sret' argument must return void
define i64 @foo(%struct.Type* noalias nocapture sret %agg.result, %struct.Type* nocapture byval %t) nounwind {
       ^


Second, check that void is only used where allowed (in function return types) not in
arbitrary places, fixing PR3747 - Crash in llvm-as with void field in struct.  We
now reject that example with:

$ llvm-as t.ll
llvm-as: t.ll:1:12: struct element can not have void type
%x = type {void}
           ^

llvm-svn: 66394
2009-03-09 04:49:14 +00:00
Duncan Sands 12da8ce3d2 Introduce new linkage types linkonce_odr, weak_odr, common_odr
and extern_weak_odr.  These are the same as the non-odr versions,
except that they indicate that the global will only be overridden
by an *equivalent* global.  In C, a function with weak linkage can
be overridden by a function which behaves completely differently.
This means that IP passes have to skip weak functions, since any
deductions made from the function definition might be wrong, since
the definition could be replaced by something completely different
at link time.   This is not allowed in C++, thanks to the ODR
(One-Definition-Rule): if a function is replaced by another at
link-time, then the new function must be the same as the original
function.  If a language knows that a function or other global can
only be overridden by an equivalent global, it can give it the
weak_odr linkage type, and the optimizers will understand that it
is alright to make deductions based on the function body.  The
code generators on the other hand map weak and weak_odr linkage
to the same thing.

llvm-svn: 66339
2009-03-07 15:45:40 +00:00
Chris Lattner 89d856e9e0 Fix a pretty awesome bug that only happened in a strange case with anonymous
types.  This was reading the uint for the keyword after the token was advanced.

llvm-svn: 65743
2009-03-01 00:53:13 +00:00
Chris Lattner bb1fe8abdd reject 0 element vectors with:
@a = internal constant void bitcast(<0 x i8> <> to void)
                                     ^

Fixes PR3685

llvm-svn: 65698
2009-02-28 18:12:41 +00:00
Chris Lattner 778c62ccb5 add proper asmwriter and asmparser support for anonymous functions.
llvm-svn: 64953
2009-02-18 21:48:13 +00:00
Duncan Sands d1de45a146 Pacify gcc-4.3 (thinks IsConstant may be used
uninitialized).

llvm-svn: 64220
2009-02-10 16:24:55 +00:00
Dan Gohman 9280a685db Use slightly more correct grammar in error messages.
llvm-svn: 64148
2009-02-09 17:41:21 +00:00
Chris Lattner c9e1b48449 fix typo
llvm-svn: 64091
2009-02-08 20:00:15 +00:00
Chris Lattner 412f626b96 reject void pointers with a nice error:
llvm-as: t.ll:2:15: pointers to void are invalid, use i8* instead
%X = type void*
              ^

instead of asserting and dying.

llvm-svn: 64089
2009-02-08 19:56:22 +00:00
Dale Johannesen b842d529a3 Reapply 63765. Patches for clang and llvm-gcc to follow.
llvm-svn: 63812
2009-02-05 01:49:45 +00:00
Dale Johannesen ae616c2c61 Reverting 63765. This broke the build of both clang
and llvm-gcc.

llvm-svn: 63786
2009-02-04 22:47:25 +00:00
Nate Begeman 6ae3aa83d0 New feature: add support for target intrinsics being defined in the
target directories themselves.  This also means that VMCore no longer
needs to know about every target's list of intrinsics.  Future work
will include converting the PowerPC target to this interface as an
example implementation.

llvm-svn: 63765
2009-02-04 19:47:21 +00:00
Chris Lattner 1f386b8ec8 Fix PR3372
llvm-svn: 63501
2009-02-02 07:24:28 +00:00
Rafael Espindola 6de96a1b5d Add the private linkage.
llvm-svn: 62279
2009-01-15 20:18:42 +00:00
Misha Brukman 5cbf223916 Removed trailing whitespace from Makefiles.
llvm-svn: 61991
2009-01-09 16:44:42 +00:00
Dan Gohman 68b135cc9c 61949 accidentally introduced an escaped newline. Fix this by making
the comment a little more verbose.

llvm-svn: 61959
2009-01-08 23:51:48 +00:00
Dan Gohman 138436f158 Fix the comment for lltok::backslash.
llvm-svn: 61949
2009-01-08 22:18:13 +00:00
Dan Gohman 6031a4353b Fix the path to llvm/Assembly/Parser.h in a comment.
llvm-svn: 61948
2009-01-08 22:17:05 +00:00
Chris Lattner 8c1cc34d6a one more crash from PR3281, we now diagnose:
llvm-as: t.ll:2:39: function may not return opaque type
  %"bwmoyl" = tail call coldcc opaque @g()
                                      ^
llvm-svn: 61933
2009-01-08 19:05:36 +00:00
Chris Lattner 1c8dd9be79 fix wordo
llvm-svn: 61728
2009-01-05 18:56:52 +00:00
Steve Naroff f6bbfa3424 Remove redundant ValID::ValID:: scoping (doesn't compile on Windows).
llvm-svn: 61727
2009-01-05 18:48:47 +00:00
Chris Lattner 2ed06b4276 Reject PR3281:accepted03.ll with:
llvm-as: accepted03.ll:1:35: invalid unresolved type up reference
declare void @r({ \7, opaque, \10 } %su)
                                  ^

llvm-svn: 61725
2009-01-05 18:34:07 +00:00
Chris Lattner dc83a54567 reject PR3281:crash11.ll with:
llvm-as: crash11.ll:2:27: function may not return return opaque type
  "xw" = tail call opaque @608(label %31)
                          ^

llvm-svn: 61722
2009-01-05 18:27:50 +00:00
Chris Lattner 8f57d29e0c reject PR3281:crash10.ll with:
llvm-as: crash10.ll:3:35: floating point constant does not have type 'ppc_fp128'
  "dumy" = fcmp ult ppc_fp128 "j",9209.4
                                  ^
llvm-svn: 61721
2009-01-05 18:24:23 +00:00
Chris Lattner 651252b019 reject PR3281:crash09.ll with this diagnostic:
llvm-as: crash09.ll:3:1: self referential type is invalid
type %0
^

llvm-svn: 61720
2009-01-05 18:19:46 +00:00
Chris Lattner 5261c8923f allow opaque undefs. This resolves PR3282 and fixes
test/Assembler/2005-05-05-OpaqueUndefValues.ll

llvm-svn: 61719
2009-01-05 18:12:21 +00:00
Dan Gohman 906152a20f Tidy up #includes, deleting a bunch of unnecessary #includes.
llvm-svn: 61715
2009-01-05 17:59:02 +00:00
Chris Lattner 229b0304f0 produce the same diagnostics for vicmp constant exprs as vicmp instructions.
llvm-svn: 61685
2009-01-05 08:26:05 +00:00
Chris Lattner eeefa9a098 Fix PR3281:crash08.ll with this diagnostic:
llvm-as: crash08.ll:3:15: invalid operand type for instruction
  "qp" = sdiv fp128 0x1, %30
              ^

llvm-svn: 61684
2009-01-05 08:24:46 +00:00
Chris Lattner b55ab54b77 reject PR3281:crash07.ll with:
llvm-as: crash07.ll:2:32: va_arg requires operand with first class type
  %y = va_arg [52 x <{}>] %43, double (...) sspreq
                               ^
llvm-svn: 61683
2009-01-05 08:18:44 +00:00
Chris Lattner ffa0778c36 reject undef/zero labels. This fixes PR3281:crash0[56].ll with these
diagnostics:
llvm-as: crash05.ll:1:14: invalid type for null constant
global label zeroinitializer addrspace (75), section "c"
             ^
llvm-as: crash06.ll:2:14: invalid type for null constant
  udiv label zeroinitializer, @0
             ^

llvm-svn: 61681
2009-01-05 08:13:38 +00:00
Chris Lattner c38e99547e add checking intentionally elided for vfcmp/vicmp since they should really
just be removed.  However, this fixes PR3281:crash04.ll, diagnosing it with:

lvm-as: crash04.ll:2:13: vfcmp requires vector floating point operands
  vfcmp uno double* undef, undef
            ^
llvm-svn: 61680
2009-01-05 08:09:48 +00:00
Chris Lattner ce473c7be0 diagnose PR3281:crash02.ll with:
llvm-as: crash02.ll:1:62: invalid function return type
declare { <{ <{}>, void ([1898 x { void ()* }], opaque, ...) (), fp128 * }>, opaque } @t ()
                                                             ^

llvm-svn: 61679
2009-01-05 08:04:33 +00:00
Chris Lattner fae73dd27f reject PR3281:crash01.ll with:
llvm-as: crash01.ll:1:9: invalid function return type
declare opaque @t()
        ^

llvm-svn: 61678
2009-01-05 08:00:30 +00:00
Chris Lattner 998fa0a2a2 fix PR3281:accepted0[02].ll: represent empty arrays distinctly, and
diagnose attempts to initialize non-empty arrays with them.  This 
produces:
llvm-as: accepted02.ll:1:28: invalid empty array initializer
@"o" = global [5 x double] []
                           ^
llvm-as: accepted00.ll:1:32: invalid empty array initializer
@"za" = thread_local global {} []
                               ^
[

llvm-svn: 61676
2009-01-05 07:52:51 +00:00
Chris Lattner d11f514739 PR3281:crash00.ll: produce this diagnostic instead of crashing:
@t = global i8 0, align 3
                        ^

llvm-svn: 61675
2009-01-05 07:46:05 +00:00
Chris Lattner ad6f3355a7 Refactor some parser interfaces to fix PR3278 and a FIXME:
ParseAssemblyString with a specified module would not parse
into the module, it would create and return a new one.

llvm-svn: 61635
2009-01-04 20:44:11 +00:00
Misha Brukman fcef90909a Alphabetized #includes.
llvm-svn: 61595
2009-01-02 22:49:28 +00:00
Misha Brukman 1d9a93d291 Down with trailing whitespace!
llvm-svn: 61594
2009-01-02 22:46:48 +00:00
Daniel Dunbar 7ae5be923c Remove comma at end of enumerator list.
llvm-svn: 61585
2009-01-02 16:32:55 +00:00
Daniel Dunbar 31006f3e41 Remove bison specific Makefile bits for AsmParser.
llvm-svn: 61584
2009-01-02 16:29:09 +00:00
Chris Lattner 59d0e3bc2e Fix a really horrible typo, which caused undefined behavior.
llvm-svn: 61566
2009-01-02 08:49:06 +00:00
Chris Lattner 3822f63b88 minor cleanups and comment improvements.
llvm-svn: 61564
2009-01-02 08:05:26 +00:00
Chris Lattner 2346a9eb99 add a #include to hopefully get the x86-64-linux buildbot building.
llvm-svn: 61563
2009-01-02 07:18:46 +00:00
Chris Lattner 7c2dcf0aab update the cmakefile. This is a "best guess", I haven't tested this.
llvm-svn: 61561
2009-01-02 07:14:23 +00:00
Chris Lattner ac161bff07 Reimplement the old and horrible bison parser for .ll files with a nice
and clean recursive descent parser.

This change has a couple of ramifications:
1. The parser code is about 400 lines shorter (in what we maintain, not
   including what is autogenerated).
2. The code should be significantly faster than the old code because we 
   don't have to work around bison's poor handling of datatypes with 
   ctors/dtors.  This also makes the code much more resistant to memory 
   leaks.
3. We now get caret diagnostics from the .ll parser, woo.
4. The actual diagnostics emited from the parser are completely different
   so a bunch of testcases had to be updated.
5. I now disallow "%ty = type opaque %ty = type i32".  There was no good
   reason to support this, it was just an accident of the old 
   implementation.  I have no reason to think that anyone is actually using
   this.
6. The syntax for sticking a global variable has changed to make it 
   unambiguous.  I don't think anyone is depending on this since only clang
   supports this and it is not solid yet, so I'm not worried about anything
   breaking.
7. This gets rid of the last use of bison, and along with it the .cvs files.
   I'll prune this from the makefiles as a subsequent commit.

There are a few minor cleanups that can be done after this commit (suggestions
welcome!) but this passes dejagnu testing and is ready for its time in the
limelight.

llvm-svn: 61558
2009-01-02 07:01:27 +00:00
Nick Lewycky 3cde35175c Update the .cvs files for nocapture.
llvm-svn: 61241
2008-12-19 09:41:54 +00:00
Nick Lewycky 8d69f48833 Commit missed files from nocapture change.
llvm-svn: 61240
2008-12-19 09:38:31 +00:00
Bill Wendling 6d974bb4d2 Forgot to revert r61031 when I reverted r61019, r61030, and r61040.
llvm-svn: 61150
2008-12-17 20:59:57 +00:00
Bill Wendling a397baea88 Temporarily revert r61019, r61030, and r61040. These were breaking LLVM Release
builds.

llvm-svn: 61094
2008-12-16 19:06:48 +00:00
Nick Lewycky bc07dbd1c5 Update generated files after nocapture syntax change.
llvm-svn: 61031
2008-12-15 07:31:07 +00:00
Nick Lewycky 8d2ea18346 It turns out that "align 1" and unaligned are different. Add a bias to the
alignment attribute such that 0 means unaligned.

This will probably require a rebuild of llvm-gcc because of the change to
Attributes.h. If you see many test failures on "make check", please rebuild
your llvm-gcc.

llvm-svn: 61030
2008-12-15 07:29:55 +00:00
Nick Lewycky ddffe620e4 Introducing nocapture, a parameter attribute for pointers to indicate that the
callee will not introduce any new aliases of that pointer.

The attributes had all bits allocated already, so I decided to collapse
alignment. Alignment was previously stored as a 16-bit integer from bits 16 to
32 of the attribute, but it was required to be a power of 2. Now it's stored in
log2 encoded form in five bits from 16 to 21. That gives us 11 more bits of
space.

You may have already noticed that you only need four bits to encode a 16-bit
power of two, so why five bits? Because the AsmParser accepted 32-bit
alignments, even though we couldn't store them (they were silently discarded).
Now we can store them in memory, but not in the bitcode.

The bitcode format was already storing these as 64-bit VBR integers. So, the
bitcode format stays the same, keeping the alignment values stored as 16 bit
raw values. There's some hideous code in the reader and writer that deals with
this, waiting to be ripped out the moment we run out of bits again and have to
replace the parameter attributes table encoding.

llvm-svn: 61019
2008-12-15 01:34:58 +00:00
Nick Lewycky f5ffcbcd0b Extend the 'noalias' attribute to function return values. This is intended to
indicate functions that allocate, such as operator new, or list::insert. The
actual definition is slightly less strict (for now).

No changes to the bitcode reader/writer, asm printer or verifier were needed.

llvm-svn: 59934
2008-11-24 03:41:24 +00:00
Bill Wendling 1a0f1d88ff Regenerated
llvm-svn: 59204
2008-11-13 01:03:00 +00:00
Bill Wendling ccb67a3d85 Implement stack protectors as function attributes: "ssp" and "sspreq".
llvm-svn: 59202
2008-11-13 01:02:14 +00:00
Nuno Lopes c6a5b0979f regenerate
llvm-svn: 58697
2008-11-04 14:43:20 +00:00
Nuno Lopes 0e92081b04 fix leakage of APFloats in getExistingVal()
llvm-svn: 58696
2008-11-04 14:42:19 +00:00
Nuno Lopes e4f5c9495f regenerate
llvm-svn: 58694
2008-11-04 14:28:33 +00:00
Nuno Lopes 724e67ec75 fix leakage of APSInt in getVal()
llvm-svn: 58693
2008-11-04 14:26:58 +00:00
Oscar Fuentes c4b5c8c1ed CMake: Cross-platform support for using pre-generated llvmAsmParser.cpp and llvmAsmParser.h.
llvm-svn: 58130
2008-10-25 03:19:08 +00:00
Cedric Venet a00d112486 Modify the cmake build system so that if it doesn't find bison, it will use the pregenerated file in from the svn (.cvs). Work only for windows for the moment. Tested on Vista64 with MSVC2008express.
llvm-svn: 58090
2008-10-24 11:24:33 +00:00
Nuno Lopes 6cbd4430cc regenerate
llvm-svn: 57577
2008-10-15 12:05:02 +00:00
Nuno Lopes 99f3dc6798 fix memleak in GetForwardRefForGlobal()
llvm-svn: 57576
2008-10-15 12:04:36 +00:00
Nuno Lopes 6f6e4e94be regenerate
llvm-svn: 57575
2008-10-15 11:20:21 +00:00
Nuno Lopes a4a546cb40 fix memleak in getTypeVal()
llvm-svn: 57574
2008-10-15 11:19:34 +00:00
Nuno Lopes bb683f953e regenerate
llvm-svn: 57573
2008-10-15 11:11:12 +00:00