https://bugs.llvm.org/show_bug.cgi?id=45298
Bug ID: 45298
Summary: r361050 causes assertions with vector floats
Product: clang
Version: trunk
Hardware: PC
OS: All
Status: NEW
Severity: enhancement
Priority: P
Component: LLVM Codegen
Assignee: unassignedclangb...@nondot.org
Reporter: smee...@fb.com
CC: a.bat...@hotmail.com, griboz...@gmail.com,
llvm-bugs@lists.llvm.org, neeil...@live.com,
richard-l...@metafoo.co.uk
$ cat reduced.cpp
typedef float float4 __attribute__((vector_size(16)));
template <typename T>
struct S {
T k1 = T(0);
};
template <typename T>
class C {
float4 f(float4 x) {
return (float)s.k1 * x;
}
S<T> s;
};
$ clang -cc1 -emit-llvm -o /dev/null reduced.cpp
clang: /home/smeenai/llvm-project/clang/lib/AST/ExprConstant.cpp:13547: bool
clang::Expr::EvaluateAsFloat(llvm::APFloat &, const clang::ASTContext &,
clang::Expr::SideEffectsKind, bool) const: Assertion `!isValueDependent() &&
"Expression evaluator can't be called on a dependent expression."' failed.
This was broken by r361050 and is still broken on trunk.
--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs