Chris Lattner
7e70829632
MEGAPATCH checkin.
...
For details, See: docs/2002-06-25-MegaPatchInfo.txt
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2779 91177308-0d34-0410-b5e6-96231b3b80d8
2002-06-25 16:13:24 +00:00
Chris Lattner
51727bee39
* Be more typesafe: cast<x> now no longer discards constness
...
* The newly installed version of Bison now really likes there to be ;'s
after productions. Add them to avoid tons of warnings.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2757 91177308-0d34-0410-b5e6-96231b3b80d8
2002-06-04 21:58:56 +00:00
Chris Lattner
8ebccb7f0e
Support function declarations with either %XXX or "XXX" style for now
...
"XXX" style should be considered deprecated, and will hopefully be removed
in the future.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2727 91177308-0d34-0410-b5e6-96231b3b80d8
2002-05-22 22:33:00 +00:00
Chris Lattner
9b625030c8
Replace all usages of Type::isPointerType with isa<PointerType>
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2486 91177308-0d34-0410-b5e6-96231b3b80d8
2002-05-06 16:15:30 +00:00
Chris Lattner
05dcf353fc
Remove dead code
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2473 91177308-0d34-0410-b5e6-96231b3b80d8
2002-05-06 03:03:09 +00:00
Chris Lattner
9b02cc365c
Allow open/closing curly braces instead of begin/end to define the body of a function
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2451 91177308-0d34-0410-b5e6-96231b3b80d8
2002-05-03 18:23:48 +00:00
Chris Lattner
9705a15b1a
* Fix a bug (test/Regression/Assembler/2002-05-02-InvalidForwardRef.ll)
...
introduced in the 1.66 revision of this file.
* Convert a hard coded constant to a symbolic value.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2436 91177308-0d34-0410-b5e6-96231b3b80d8
2002-05-02 19:27:42 +00:00
Chris Lattner
0e73ce6d94
The "implementation" is now allowed but not required by the parser. All type
...
definitions must still occur before function bodies, but the wierd keyword is
no longer neccesary.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2433 91177308-0d34-0410-b5e6-96231b3b80d8
2002-05-02 19:11:13 +00:00
Chris Lattner
924025e9ad
Fix bug: test/Regression/Other/2002-04-29-NameBinding.ll
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2402 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-29 18:25:33 +00:00
Chris Lattner
c6f3ae5c66
Eliminate duplicate or unneccesary #include's
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2397 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-29 17:42:12 +00:00
Chris Lattner
18b24ea4b6
Remove dead code
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2390 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-28 21:57:50 +00:00
Chris Lattner
31bcdb822f
Split ConstantVals.h into Constant.h and Constants.h
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2378 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-28 19:55:58 +00:00
Chris Lattner
4674804d29
Move FunctionArgument out of iOther.h into Argument.h and rename class to
...
be 'Argument' instead of FunctionArgument.
Rename some yacc type names to be more concise. Change jump table to use
a vector instead of a list.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2214 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-09 19:41:42 +00:00
Chris Lattner
c8a79af27d
isLabelType is obsolete
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2175 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-08 21:59:08 +00:00
Chris Lattner
afca8bbf06
Library bumped up out of Assembly directory
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2164 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-08 20:17:06 +00:00
Chris Lattner
b55679d427
Add a better comment to explain what is going on.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2139 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-07 08:31:26 +00:00
Chris Lattner
74dbc99777
Remove debugging code accidentally checked in!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2137 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-07 08:13:29 +00:00
Chris Lattner
275da86ab0
Add support for hexadecimal FP constants!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2135 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-07 08:10:41 +00:00
Chris Lattner
2aac6bf66a
s/MethodType/FunctionType
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2115 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-04 22:19:18 +00:00
Chris Lattner
8b88b3b5bf
* Make PATypeHolder not take a type argument
...
* Eliminate by inlining the old newTH, newTH, and TypeDone functions
* OPAQUE is now just a token that gets returned by the lexer, not a type
Parser now creates type, not lexer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2104 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-04 19:23:55 +00:00
Chris Lattner
4e4cae87f9
Lexer doesn't create typehandle gross stuff now, parser does.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2103 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-04 19:22:17 +00:00
Chris Lattner
09c07538a8
* Fix nondeleted type handle which could cause type pool corruption (and
...
a memory leak)
* Fix memory leak of Argument nodes on function prototypes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2065 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-31 07:16:49 +00:00
Chris Lattner
79df7c0aaa
Change references from Method to Function
...
change references from MethodARgument to FunctionArgument
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1991 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-26 18:01:55 +00:00
Chris Lattner
749ce032ba
Implement TODO for better diagnostic output
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1859 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-11 22:12:39 +00:00
Chris Lattner
34538145f4
Fix bug: test/Regression/2002-03-08-NameCollision2.ll
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1839 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-08 19:11:42 +00:00
Chris Lattner
9176fe4171
Fix minor memory leak
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1837 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-08 18:57:56 +00:00
Chris Lattner
f28d6c9313
Fix for: test/Regression/Assembler/2002-03-08-NameCollision.ll
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1836 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-08 18:41:32 +00:00
Chris Lattner
fbdb1da666
Close input file if exception is thrown
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1784 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-20 18:06:43 +00:00
Chris Lattner
0b91acf5db
Change to verifier interface
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1782 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-20 17:56:02 +00:00
Chris Lattner
697954c15d
Changes to build successfully with GCC 3.02
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1503 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-20 22:54:45 +00:00
Chris Lattner
72e002564e
* Fix cases where we were calling Type->getName() instead of Type->getDescription()
...
* Remove unsized array support
* Malloc/alloca do not require that the first element be an unsized array to be an
array allocation
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1458 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-14 16:28:42 +00:00
Chris Lattner
9a88d278dd
Allow hyphens in identifier names
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1409 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-04 04:31:30 +00:00
Chris Lattner
7a17675206
Renamed inst_const_iterator -> const_inst_iterator
...
Renamed op_const_iterator -> const_op_iterator
Renamed PointerType::getValueType() -> PointerType::getElementType()
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1408 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-04 00:03:30 +00:00
Chris Lattner
e9bb2df410
Rename ConstPoolVal -> Constant
...
Rename ConstPool* -> Constant*
Rename ConstPoolVals.h -> ConstantVals.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1407 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-03 22:26:30 +00:00
Chris Lattner
7061dc50b2
Split the PHINode class out from the iOther.h file into the iPHINode.h file
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1405 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-03 18:02:31 +00:00
Chris Lattner
cee8f9ae67
Create a new #include "Support/..." directory structure to move things
...
from "llvm/Support/..." that are not llvm dependant.
Move files and fix #includes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1400 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-27 00:03:19 +00:00
Chris Lattner
dda719665b
Implement support for internal methods
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1373 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 18:54:16 +00:00
Chris Lattner
6cdb0118e8
Implement array indexing with uints
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1336 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 16:54:11 +00:00
Chris Lattner
5084d032e5
Improve some debugging code
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1088 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-02 07:46:26 +00:00
Chris Lattner
1e2c614864
Support floating point numbers in expodential form so that small numbers don't get truncated, which broke the health benchmark
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1087 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-01 22:06:08 +00:00
Chris Lattner
90ebc114c6
Negative FP constants... whodathunkit.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@963 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-23 04:13:01 +00:00
Chris Lattner
822695901f
Remove ugly subclass of Opaque type
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@936 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-22 06:01:08 +00:00
Chris Lattner
4a42e909cd
Fix bug with
...
%list = type {%list *}
%list = type {%list *}
not being accepted (broken testmisc.ll)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@935 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-22 05:56:09 +00:00
Chris Lattner
c9a21b51a1
Two changes:
...
1. Delete type handle regardless of whether a collision occured
2. Remove a MAJOR pessimization of runtime performance (thought be be an optimization at the time).
This second one was causing a 105k llvm file (from gcc) to parse in 58 seconds... without the
'optimization' it now parses in 3.64 seconds. I suck.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@933 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-21 23:02:41 +00:00
Chris Lattner
23192ebe95
Fix bug caused by:
...
%list = type opaque
%list = type %list
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@931 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-21 21:43:25 +00:00
Chris Lattner
42c9e77ffb
Add support for And, XOR, and Or
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@924 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-20 09:32:59 +00:00
Chris Lattner
2b3c925d02
It is valid to have unsigned arrays as constants... the linker may initialize them later
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@923 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-20 06:43:05 +00:00
Chris Lattner
386a3b7b95
Simplify some code
...
Remove Method special case
Fix bug exposed by this testcase:
implementation
void "PtrFunc2"()
begin
bb1:
%reg = add int(int)* null, null
add int (int)* %reg, null
ret void
end
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@852 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-16 19:54:17 +00:00
Chris Lattner
c18545dc9e
Rename ConstPoolPointerReference to ConstPoolPointerRef - My fingers get tired typing that much
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@822 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-15 13:21:42 +00:00
Chris Lattner
2079fde081
* Add support for forward references of global variable addresses
...
* Add support for numeric global variable addresses
* Clean up getVal function by refactoring it into several smaller functions
* MethodTypes are now specified with an explicit isVarArg parameter
* Break ValueRef into ConstValueRef & SymbolicValueRef components
* Add support for the new Invoke instruction
* Fix a few broken calls to Type::getName instead of Type::getDescription
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@758 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:41:08 +00:00