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.)
This commit is contained in:
committed by
Matt Pharr
parent
98a2d69e72
commit
59036cdf5b
18
tests/swizzle-6.ispc
Normal file
18
tests/swizzle-6.ispc
Normal file
@@ -0,0 +1,18 @@
|
||||
|
||||
export uniform int width() { return programCount; }
|
||||
|
||||
|
||||
export void f_v(uniform float RET[]) {
|
||||
float<3> a = {1,2,3};
|
||||
float<3> b1 = a.yzx;
|
||||
float<3> b2 = b1.yzx;
|
||||
float<3> b3 = b2.yzx;
|
||||
float<3> b = b3 - a;
|
||||
|
||||
RET[programIndex] = b.x + 2*b.y + 3*b.z;
|
||||
}
|
||||
|
||||
|
||||
export void result(uniform float RET[]) {
|
||||
RET[programIndex] = 0;
|
||||
}
|
||||
Reference in New Issue
Block a user