Matt Pharr
67e00b97c6
Fix incorrect assertions in ConstExpr constructors
2011-08-30 11:08:53 -07:00
Matt Pharr
d0db46aac5
Use logical shift right op for shifts of unsigned ints. Fixes issue #88 .
2011-08-29 10:32:26 -07:00
Matt Pharr
c74116aa24
Fix crasher with malformed program
2011-08-12 07:47:17 +01:00
Matt Pharr
d0674b1706
When doing << or >> operators, don't convert the return type to the type of the shift amount.
...
Fixes issue #73 . Previously, if we had e.g. an int16 type that was being shifted
left by 1, then the constant integer 1 would come in as an int32, we'd convert
the int16 to an int32, and then we'd do the shift. Now, for shifts, the type
of the expression is always the same as the type of the value being shifted.
2011-07-25 23:36:05 +01:00
Pete Couperus
59036cdf5b
Add support for multi-element vector swizzles. Issue #17 .
...
This commit adds support for swizzles like "foo.zy" (if "foo" is,
for example, a float<3> type) as rvalues. (Still need support for
swizzles as lvalues.)
2011-07-22 13:10:14 +01:00
Matt Pharr
165f90357f
Tiny cleanups, doc update re int8/16 performance
2011-07-21 16:04:16 +01:00
Matt Pharr
bba7211654
Add support for int8/int16 types. Addresses issues #9 and #42 .
2011-07-21 06:57:40 +01:00
Matt Pharr
654cfb4b4b
Many fixes for recent LLVM dev tree API changes
2011-07-18 15:54:39 +01:00
Matt Pharr
f0f876c3ec
Add support for enums.
2011-07-17 16:43:05 +02:00
Matt Pharr
a535aa586b
Fix issue #2 : use zero extend to convert bool->int, not sign extend.
...
This way, we match C/C++ in that casting a bool to an int gives either the value
zero or the value one. There is a new stdlib function int sign_extend(bool)
that does sign extension for cases where that's desired.
2011-07-12 13:30:05 +01:00
Matt Pharr
6b5ee6ccc0
Add missing "$$=NULL;" in error production in parser.
...
This fixes a crash from a malformed program bug.
2011-07-07 11:10:27 +01:00
Matt Pharr
af70718eca
Always include the passed arg types when printing errors about function overload resolution failing.
2011-07-06 15:33:50 +01:00
Matt Pharr
c6bc8fd64f
Type conversion and function call overload resolution bug fixes.
2011-07-04 15:11:28 +01:00
Matt Pharr
28a68e3c1f
More code simplifications from using CollectionType. Finishes Issue #37
2011-06-29 09:32:31 +01:00
Matt Pharr
6b153566f3
Simplify a bunch of code by using CollectionType to collect struct
...
codepaths in with array/vector codepaths. (Issue #37 ).
2011-06-29 07:59:43 +01:00
Matt Pharr
214fb3197a
Initial plumbing to add CollectionType base-class as common ancestor
...
to StructTypes, ArrayTypes, and VectorTypes. Issue #37 .
2011-06-29 07:42:09 +01:00
Andreas Wendleder
f39d31174e
Follow LLVM API change.
2011-06-23 16:10:03 -07:00
Matt Pharr
2ced56736e
small comment changes, remove dead code
2011-06-22 14:38:49 -07:00
Matt Pharr
18af5226ba
Initial commit.
2011-06-21 12:48:50 -07:00