54 Commits

Author SHA1 Message Date
Dale Johannesen
007aa378ad Next PPC long double bits. First cut at constants.
No compile-time support for constant operations yet,
just format transformations.  Make readers and
writers work.  Split constants into 2 doubles in
Legalize.

llvm-svn: 42865
2007-10-11 18:07:22 +00:00
Dale Johannesen
100410af13 Generated files for previous patch.
llvm-svn: 41876
2007-09-12 03:31:28 +00:00
Dale Johannesen
216788aacb Generated files for previous patch.
llvm-svn: 41859
2007-09-11 18:33:39 +00:00
Dale Johannesen
bed9dc423c Next round of APFloat changes.
Use APFloat in UpgradeParser and AsmParser.
Change all references to ConstantFP to use the
APFloat interface rather than double.  Remove
the ConstantFP double interfaces.
Use APFloat functions for constant folding arithmetic
and comparisons.
(There are still way too many places APFloat is
just a wrapper around host float/double, but we're
getting there.)

llvm-svn: 41747
2007-09-06 18:13:44 +00:00
Dale Johannesen
ff4c3be741 Long double, part 1 of N. Support in IR.
llvm-svn: 40774
2007-08-03 01:03:46 +00:00
David Greene
c8e6508572 Update generated files.
llvm-svn: 40663
2007-08-01 03:59:32 +00:00
Reid Spencer
66eb88bf48 Regenerate (again).
llvm-svn: 40613
2007-07-31 03:55:56 +00:00
Reid Spencer
22910a08a0 Regenerate.
llvm-svn: 40611
2007-07-31 03:50:36 +00:00
Chris Lattner
f997e37fbb update the .cvs files
llvm-svn: 37918
2007-07-05 17:26:49 +00:00
Reid Spencer
c5cec2a4e8 Regenerate.
llvm-svn: 37294
2007-05-22 19:08:16 +00:00
Reid Spencer
acfe667eab Regenerate.
llvm-svn: 37292
2007-05-22 18:52:55 +00:00
Chris Lattner
77119f43af update comment
llvm-svn: 37282
2007-05-22 06:56:32 +00:00
Chris Lattner
31ab0ed37f regenerate
llvm-svn: 37281
2007-05-22 06:47:55 +00:00
Reid Spencer
21526d6b56 Regenerate
llvm-svn: 37258
2007-05-19 07:22:10 +00:00
Anton Korobeynikov
6058a35624 Regenerate
llvm-svn: 36566
2007-04-29 18:38:24 +00:00
Reid Spencer
25d797b7ca Regenerate.
llvm-svn: 36543
2007-04-28 16:07:31 +00:00
Anton Korobeynikov
e9fcbefa9a Regenerate
llvm-svn: 36437
2007-04-25 14:29:12 +00:00
Lauro Ramos Venancio
749e4668e7 Implement the "thread_local" keyword.
llvm-svn: 35950
2007-04-12 18:32:50 +00:00
Reid Spencer
f51a7050dd Regenerate
llvm-svn: 35813
2007-04-09 06:16:21 +00:00
Reid Spencer
7ae03fc5fb Regenerate
llvm-svn: 35795
2007-04-09 01:56:05 +00:00
Reid Spencer
0833b81248 Regenerate.
llvm-svn: 35473
2007-03-29 18:50:01 +00:00
Reid Spencer
b7e45e705a Regenerate.
llvm-svn: 35411
2007-03-28 02:37:40 +00:00
Reid Spencer
32096786f1 Regenerate.
llvm-svn: 35259
2007-03-22 02:14:08 +00:00
Reid Spencer
ad3618a33d Regenerate.
llvm-svn: 35050
2007-03-09 21:19:09 +00:00
Reid Spencer
c7a686b62d Regenerate.
llvm-svn: 34716
2007-02-28 02:24:54 +00:00
Reid Spencer
3aaaa0b2bd For PR411:
This patch replaces the SymbolTable class with ValueSymbolTable which does
not support types planes. This means that all symbol names in LLVM must now
be unique. The patch addresses the necessary changes to deal with this and
removes code no longer needed as a result. This completes the bulk of the
changes for this PR. Some cleanup patches will follow.

llvm-svn: 33918
2007-02-05 20:47:22 +00:00
Reid Spencer
2341c22ec7 Changes to support making the shift instructions be true BinaryOperators.
This feature is needed in order to support shifts of more than 255 bits
on large integer types.  This changes the syntax for llvm assembly to
make shl, ashr and lshr instructions look like a binary operator:
   shl i32 %X, 1
instead of
   shl i32 %X, i8 1
Additionally, this should help a few passes perform additional optimizations.

llvm-svn: 33776
2007-02-02 02:16:23 +00:00
Anton Korobeynikov
75e8a144d4 Regenerate
llvm-svn: 33599
2007-01-28 13:37:39 +00:00
Reid Spencer
8d6d4b8e36 Regenerate for PR645 and PR761
llvm-svn: 33525
2007-01-26 08:05:27 +00:00
Reid Spencer
58a8db0a3f Regenerate.
llvm-svn: 33182
2007-01-13 05:00:46 +00:00
Anton Korobeynikov
8ea9d3a687 Regenerate
llvm-svn: 33137
2007-01-12 19:22:51 +00:00
Reid Spencer
b20ef92e42 Regenerate.
llvm-svn: 33117
2007-01-12 07:28:27 +00:00
Reid Spencer
7a9c62baa6 For PR1064:
Implement the arbitrary bit-width integer feature. The feature allows
integers of any bitwidth (up to 64) to be defined instead of just 1, 8,
16, 32, and 64 bit integers.

This change does several things:
1. Introduces a new Derived Type, IntegerType, to represent the number of
   bits in an integer. The Type classes SubclassData field is used to
   store the number of bits. This allows 2^23 bits in an integer type.
2. Removes the five integer Type::TypeID values for the 1, 8, 16, 32 and
   64-bit integers. These are replaced with just IntegerType which is not
   a primitive any more.
3. Adjust the rest of LLVM to account for this change.

Note that while this incremental change lays the foundation for arbitrary
bit-width integers, LLVM has not yet been converted to actually deal with
them in any significant way. Most optimization passes, for example, will
still only deal with the byte-width integer types.  Future increments
will rectify this situation.

llvm-svn: 33113
2007-01-12 07:05:14 +00:00
Reid Spencer
542964f55b Rename BoolTy as Int1Ty. Patch by Sheng Zhou.
llvm-svn: 33076
2007-01-11 18:21:29 +00:00
Reid Spencer
42f0cbe769 For PR950:
Regenerate

llvm-svn: 32782
2006-12-31 05:40:51 +00:00
Reid Spencer
dc0a3a2fd2 Regenerate.
llvm-svn: 32772
2006-12-29 20:35:03 +00:00
Reid Spencer
266e42b312 For PR950:
This patch removes the SetCC instructions and replaces them with the ICmp
and FCmp instructions. The SetCondInst instruction has been removed and
been replaced with ICmpInst and FCmpInst.

llvm-svn: 32751
2006-12-23 06:05:41 +00:00
Reid Spencer
1960ef32ac Regenerate.
llvm-svn: 32152
2006-12-03 06:59:29 +00:00
Reid Spencer
e2c32da075 Regenerate.
llvm-svn: 32145
2006-12-03 05:46:11 +00:00
Reid Spencer
d5e19444a7 Regenerate.
llvm-svn: 32053
2006-12-01 00:33:46 +00:00
Reid Spencer
6c38f0bb07 For PR950:
The long awaited CAST patch. This introduces 12 new instructions into LLVM
to replace the cast instruction. Corresponding changes throughout LLVM are
provided. This passes llvm-test, llvm/test, and SPEC CPUINT2000 with the
exception of 175.vpr which fails only on a slight floating point output
difference.

llvm-svn: 31931
2006-11-27 01:05:10 +00:00
Chris Lattner
6aee6f2a93 regenerate
llvm-svn: 31539
2006-11-08 05:58:47 +00:00
Reid Spencer
de46e48420 For PR786:
Turn on -Wunused and -Wno-unused-parameter. Clean up most of the resulting
fall out by removing unused variables. Remaining warnings have to do with
unused functions (I didn't want to delete code without review) and unused
variables in generated code. Maintainers should clean up the remaining
issues when they see them. All changes pass DejaGnu tests and Olden.

llvm-svn: 31380
2006-11-02 20:25:50 +00:00
Chris Lattner
7d1d03445e regenerate
llvm-svn: 31109
2006-10-22 06:08:13 +00:00
Reid Spencer
e0fc4dfc22 For PR950:
This patch implements the first increment for the Signless Types feature.
All changes pertain to removing the ConstantSInt and ConstantUInt classes
in favor of just using ConstantInt.

llvm-svn: 31063
2006-10-20 07:07:24 +00:00
Owen Anderson
85690f3ba5 Add support for the new "target data" information in .ll files. This provides
a better encoding of the targets data layout, rather than trying to guess it
from the endianness and pointersize like before.

Update the generated files.

llvm-svn: 31031
2006-10-18 02:21:48 +00:00
Anton Korobeynikov
6f7072c66a Added some eye-candy for Subtarget type checking
Added X86 StdCall & FastCall calling conventions. Codegen will follow.

llvm-svn: 30446
2006-09-17 20:25:45 +00:00
Anton Korobeynikov
73441cd099 Adding generated files for the last commit
llvm-svn: 30375
2006-09-14 18:25:26 +00:00
Chris Lattner
680aab652a regenerate
llvm-svn: 29771
2006-08-18 17:34:45 +00:00
Reid Spencer
713eedc1fb For PR797:
Rid the Assembly Parser of exceptions. This is a really gross hack but it
will do until the Assembly Parser is re-written as a recursive descent.
The basic premise is that wherever the old "ThrowException" function was
called (new name: GenerateError) we set a flag (TriggerError). Every
production checks that flag and calls YYERROR if it is set. Additionally,
each call to ThrowException in the grammar is replaced with GEN_ERROR
which calls GenerateError and then YYERROR immediately. This prevents
the remaining production from continuing after an error condition.

llvm-svn: 29763
2006-08-18 08:43:06 +00:00