[all-commits] [llvm/llvm-project] 2edc21: Fix altivec regression caused by D115670 in Vec Co...
Erich Keane via All-commits
all-commits at lists.llvm.org
Tue Jan 4 09:53:38 PST 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 2edc21e8566be8fa9b20e0bb71a83af90ec9aa97
https://github.com/llvm/llvm-project/commit/2edc21e8566be8fa9b20e0bb71a83af90ec9aa97
Author: Erich Keane <erich.keane at intel.com>
Date: 2022-01-04 (Tue, 04 Jan 2022)
Changed paths:
M clang/lib/AST/ExprConstant.cpp
M clang/test/Sema/altivec-init.c
Log Message:
-----------
Fix altivec regression caused by D115670 in Vec Const Eval
The Vector Constant Evaluator assumes that all the types of its
sub-expressions are going to be Vector APValues, which holds for most
situations. However, in the 1 examples of Altivec C compilation of
operator ++ (not allowed for other vector types), the result is an
LValue.
Since the operator isn't supported for constant evaluation anyway, this
patch just fails-out of constant eval if we are in a situation where the
operand to the unary operator causes an LValue.
More information about the All-commits
mailing list