https://llvm.org/bugs/show_bug.cgi?id=31593
Bug ID: 31593 Summary: Error in backend: Cannot select: t57: v2i64 = zero_extend_vector_inreg t61 Product: new-bugs Version: trunk Hardware: PC OS: Windows NT Status: NEW Severity: normal Priority: P Component: new bugs Assignee: unassignedb...@nondot.org Reporter: douglas_y...@playstation.sony.com CC: llvm-bugs@lists.llvm.org Classification: Unclassified Starting with r291120, we started to see this error in one of our tests when the compiler is targeting the PS4 platform with -O2 or higher. To reproduce the failure, compile the following code with -O2 or higher and targeting the PS4 (--target=x86_64-scei-ps4): typedef int __v4si __attribute__((__vector_size__(16))); typedef long long __m128i __attribute__((__vector_size__(16))); struct S { typedef S &SR; int a() const; void b(SR a, SR b); void c(SR a, int t); void d(SR a, SR b); __m128i m_quad; }; int S::a() const { return ({ __v4si __a = (m_quad); __a[0]; }); } void S::c(SR a, int t) { m_quad = __builtin_ia32_pslldi128(m_quad, t); } void foo() { S zero; int t; S e; e.d(e, zero); t = e.a(); S s; s.c(e, t); S u; S f; f.b(u, s); } When compiled with a compiler built from r291120 and targeting the PS4 using -O2, I get the following error: fatal error: error in backend: Cannot select: t57: v2i64 = zero_extend_vector_inreg t61 t61: v4i32 = bitcast t60 t60: v2i64,ch = load<LD16[%3](tbaa=<0x2504c38>)(dereferenceable)> t24, FrameIndex:i64<2>, undef:i64 t9: i64 = FrameIndex<2> t2: i64 = undef In function: _Z3foov clang.exe: error: clang frontend command failed with exit code 70 (use -v to see invocation) clang version 4.0.0 (trunk 291120) Target: x86_64-scei-ps4 Thread model: posix InstalledDir: c:\src\upstream\291120\Release\bin -- You are receiving this mail because: You are on the CC list for the bug.
_______________________________________________ llvm-bugs mailing list llvm-bugs@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs