Commit Graph

697 Commits

Author SHA1 Message Date
Nuno Lopes
8a5f34776e regenerate
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57577 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-15 12:05:02 +00:00
Nuno Lopes
f2bd650fdf fix memleak in GetForwardRefForGlobal()
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57576 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-15 12:04:36 +00:00
Nuno Lopes
f05ff66a22 regenerate
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57575 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-15 11:20:21 +00:00
Nuno Lopes
ee87b3b6d9 fix memleak in getTypeVal()
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57574 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-15 11:19:34 +00:00
Nuno Lopes
6ec8a25b27 regenerate
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57573 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-15 11:11:12 +00:00
Nuno Lopes
0ecaf52796 fix memleak in ResolveTypeTo()
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57572 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-15 11:10:21 +00:00
Chris Lattner
740e709d0d regenerate
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57561 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-15 06:16:57 +00:00
Chris Lattner
c7e3069bfa Fix the .ll grammar rules to allow any type before an 'i32', not just an
integer type.  Invalid things like 'float 42' are now rejected by the
semantic analysis in the productions not the parser.  This fixes PR2733.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57560 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-15 06:16:45 +00:00
Chris Lattner
f9078f99d9 regenerate
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57559 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-15 06:03:48 +00:00
Chris Lattner
22b92e3b86 Eliminate the "IntType ::= INTTYPE" production, just use
INTTYPE everywhere.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57558 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-15 06:03:37 +00:00
Dale Johannesen
236bbd4146 Generated files for previous checkin.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57331 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-09 23:01:34 +00:00
Dale Johannesen
23a98551ab Add a "loses information" return value to APFloat::convert
and APFloat::convertToInteger.  Restore return value to
IEEE754.  Adjust all users accordingly.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57329 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-09 23:00:39 +00:00
Chris Lattner
9fc4da40ef regenerate
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57290 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-08 06:44:45 +00:00
Chris Lattner
cd16843499 Add missing semicolumns in parser rules, those missing semicolumns
are required to compile with the latest Bison.

Patch by Samuel Tardieu!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57289 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-08 06:44:36 +00:00
Nuno Lopes
8a88a37b16 regenerate
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57114 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-05 16:49:34 +00:00
Nuno Lopes
d0ad67788d clean ArgTypeListI production: free the PATypeHolder
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57113 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-05 16:49:03 +00:00
Nuno Lopes
191dfb96de regenerate
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57009 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-03 15:52:39 +00:00
Nuno Lopes
aa1aee3e95 fix more memleaks in ResolveTypeTo() and ParseGlobalVariable()
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57008 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-03 15:51:46 +00:00
Nuno Lopes
9e9631dae9 regenerate with bison 2.3
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57007 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-03 15:45:58 +00:00
Nuno Lopes
06a62886fb fix memleak in FunctionHeaderH
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57005 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-03 15:44:21 +00:00
Devang Patel
652203f3f3 Support inreg, zext and sext as return value attributes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56801 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-29 20:49:50 +00:00
Devang Patel
2c9c3e7368 Implement function notes as function attributes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56716 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-26 23:51:19 +00:00
Dale Johannesen
e7261863c5 Generated files for warning fix.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56715 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-26 23:46:20 +00:00
Dale Johannesen
4598a4ece8 Fix a compiler warning.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56714 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-26 23:45:53 +00:00
Devang Patel
19c874638d Now Attributes are divided in three groups
- return attributes - inreg, zext and sext
- parameter attributes
- function attributes - nounwind, readonly, readnone, noreturn

Return attributes use 0 as the index.
Function attributes use ~0U as the index.

This patch requires corresponding changes in llvm-gcc and clang.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56704 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-26 22:53:05 +00:00
Dale Johannesen
dfe8c84e1e Generated files for previous patch.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56679 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-26 19:32:34 +00:00
Dale Johannesen
86098bd6a6 Add "inreg" field to CallSDNode (doesn't increase
its size).  Adjust various lowering functions to
pass this info through from CallInst.  Use it to
implement sseregparm returns on X86.  Remove
X86_ssecall calling convention.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56677 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-26 19:31:26 +00:00
Devang Patel
0598866c05 Large mechanical patch.
s/ParamAttr/Attribute/g
s/PAList/AttrList/g
s/FnAttributeWithIndex/AttributeWithIndex/g
s/FnAttr/Attribute/g

This sets the stage 
- to implement function notes as function attributes and 
- to distinguish between function attributes and return value attributes.

This requires corresponding changes in llvm-gcc and clang.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56622 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-25 21:00:45 +00:00
Eric Christopher
2a5196fe67 Fix fallout from revision r56535.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56545 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-24 04:55:49 +00:00
Devang Patel
20bcaff6a7 Put FN_NOTE_AlwaysInline and others in FnAttr namespace.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56527 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-24 00:06:15 +00:00
Devang Patel
dd4924c564 Move FN_NOTE_AlwaysInline and other out of ParamAttrs namespace.
Do not check isDeclaration() in hasNote(). It is clients' responsibility.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56524 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-23 23:52:03 +00:00
Devang Patel
2d2255d2d9 s/ParameterAttributes/Attributes/g
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56520 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-23 23:25:44 +00:00
Devang Patel
eaf42abab6 s/ParameterAttributes/Attributes/g
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56513 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-23 23:03:40 +00:00
Devang Patel
d9b4a5f859 Use parameter attribute store (soon to be renamed) for
Function Notes also. Function notes are stored at index ~0.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56511 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-23 22:35:17 +00:00
Chris Lattner
ccef6b5d76 regenerate
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56502 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-23 21:18:31 +00:00
Chris Lattner
013766707b allow inreg on the result of a function
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56501 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-23 21:18:08 +00:00
Oscar Fuentes
3d01fc7de8 Initial support for the CMake build system.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56419 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-22 01:08:49 +00:00
Dan Gohman
d8ee59b0ca Update generated files.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55972 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-09 01:13:24 +00:00
Dan Gohman
f72fb679ef Extend the vcmp/fcmp LLVM IR instructions to take vectors as arguments
and, if so, to return a vector of boolean as a result;

Extend the select LLVM IR instruction to allow you to specify a result
type which is a vector of boolean, in which case the result will be an
element-wise selection instead of choosing one vector or the other; and

Update LangRef.html to describe these changes.

This patch was contributed by Preston Gurd!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55969 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-09 01:02:47 +00:00
Devang Patel
52e89dd4e2 Parse and print opt_size note.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55740 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-03 22:10:21 +00:00
Devang Patel
cb7f483d8c s/FP_AlwaysInline/FN_NOTE_AlwaysInline/g
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55676 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-02 22:43:57 +00:00
Devang Patel
d49808184f Parse function notes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55646 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-02 20:52:40 +00:00
Chris Lattner
15bd095aa5 regenerate
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55542 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-29 17:20:18 +00:00
Chris Lattner
6ac28095c2 Add support for parsing .ll files that have numbers in front of
nameless values, such as:

%3 = add i32 4, 2

This fixes the first half of PR2480



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55539 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-29 17:12:13 +00:00
Gordon Henriksen
5d82cd32b0 Regenerate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54900 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-17 18:48:50 +00:00
Gordon Henriksen
5eca075b74 Rename some GC classes so that their roll will hopefully be clearer.
In particular, Collector was confusing to implementors. Several
thought that this compile-time class was the place to implement
their runtime GC heap. Of course, it doesn't even exist at runtime.
Specifically, the renames are:

  Collector               -> GCStrategy
  CollectorMetadata       -> GCFunctionInfo
  CollectorModuleMetadata -> GCModuleInfo
  CollectorRegistry       -> GCRegistry
  Function::getCollector  -> getGC (setGC, hasGC, clearGC)

Several accessors and nested types have also been renamed to be
consistent. These changes should be obvious.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54899 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-17 18:44:35 +00:00
Chris Lattner
fad86b003a Rework the routines that convert AP[S]Int into a string. Now, instead of
returning an std::string by value, it fills in a SmallString/SmallVector
passed in.  This significantly reduces string thrashing in some cases.

More specifically, this:
 - Adds an operator<< and a print method for APInt that allows you to 
   directly send them to an ostream.
 - Reimplements APInt::toString to be much simpler and more efficient
   algorithmically in addition to not thrashing strings quite as much.

This speeds up llvm-dis on kc++ by 7%, and may also slightly speed up the
asmprinter.  This also fixes a bug I introduced into the asmwriter in a
previous patch w.r.t. alias printing.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54873 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-17 07:19:36 +00:00
Dale Johannesen
20ab78b8b0 Generated files for 54744.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54745 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-13 18:41:46 +00:00
Dale Johannesen
7dc00abd86 Add read/write support for X86's sseregparm.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54744 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-13 18:40:23 +00:00
Nate Begeman
5bc1ea0736 Add vector shifts to the IR, patch by Eli Friedman.
CodeGen & Clang work coming next.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54161 91177308-0d34-0410-b5e6-96231b3b80d8
2008-07-29 15:49:41 +00:00