On Thu, Jun 20, 2013 at 06:43:47PM -0500, Aaron Watry wrote: > No test/expansion for SI has been added yet. Attempts to expand this > operation for SI resulted in a stacktrace in (IIRC) LegalizeIntegerTypes > which was complaining about vector comparisons being required to return > a vector type. >
Could you file a bug for this? Thanks, Tom > Signed-off-by: Aaron Watry <awa...@gmail.com> > --- > test/CodeGen/R600/setcc.ll | 25 ++++++++++++++++++++++--- > 1 file changed, 22 insertions(+), 3 deletions(-) > > diff --git a/test/CodeGen/R600/setcc.ll b/test/CodeGen/R600/setcc.ll > index 0752f2e..e3f77b1 100644 > --- a/test/CodeGen/R600/setcc.ll > +++ b/test/CodeGen/R600/setcc.ll > @@ -1,7 +1,26 @@ > -;RUN: llc < %s -march=r600 -mcpu=redwood | FileCheck %s > -;CHECK: SETE_INT T{{[0-9]+\.[XYZW], T[0-9]+\.[XYZW], T[0-9]+\.[XYZW]}} > +;RUN: llc < %s -march=r600 -mcpu=redwood | FileCheck --check-prefix=EG-CHECK > %s > > -define void @test(<4 x i32> addrspace(1)* %out, <4 x i32> addrspace(1)* %in) > { > +;EG-CHECK: @test2 > +;EG-CHECK: SETE_INT {{\*? *}}T{{[0-9]+\.[XYZW], T[0-9]+\.[XYZW], > T[0-9]+\.[XYZW]}} > +;EG-CHECK: SETE_INT {{\*? *}}T{{[0-9]+\.[XYZW], T[0-9]+\.[XYZW], > T[0-9]+\.[XYZW]}} > + > +define void @test2(<2 x i32> addrspace(1)* %out, <2 x i32> addrspace(1)* > %in) { > + %b_ptr = getelementptr <2 x i32> addrspace(1)* %in, i32 1 > + %a = load <2 x i32> addrspace(1) * %in > + %b = load <2 x i32> addrspace(1) * %b_ptr > + %result = icmp eq <2 x i32> %a, %b > + %sext = sext <2 x i1> %result to <2 x i32> > + store <2 x i32> %sext, <2 x i32> addrspace(1)* %out > + ret void > +} > + > +;EG-CHECK: @test4 > +;EG-CHECK: SETE_INT {{\*? *}}T{{[0-9]+\.[XYZW], T[0-9]+\.[XYZW], > T[0-9]+\.[XYZW]}} > +;EG-CHECK: SETE_INT {{\*? *}}T{{[0-9]+\.[XYZW], T[0-9]+\.[XYZW], > T[0-9]+\.[XYZW]}} > +;EG-CHECK: SETE_INT {{\*? *}}T{{[0-9]+\.[XYZW], T[0-9]+\.[XYZW], > T[0-9]+\.[XYZW]}} > +;EG-CHECK: SETE_INT {{\*? *}}T{{[0-9]+\.[XYZW], T[0-9]+\.[XYZW], > T[0-9]+\.[XYZW]}} > + > +define void @test4(<4 x i32> addrspace(1)* %out, <4 x i32> addrspace(1)* > %in) { > %b_ptr = getelementptr <4 x i32> addrspace(1)* %in, i32 1 > %a = load <4 x i32> addrspace(1) * %in > %b = load <4 x i32> addrspace(1) * %b_ptr > -- > 1.8.1.2 > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev