Anastasia added inline comments.

================
Comment at: clang/docs/LanguageExtensions.rst:481
 =                                yes     yes       yes         yes
-:? [#]_                          yes     --        yes         --
+?:                               yes     --        yes         --
 sizeof                           yes     yes       yes         yes
----------------
I think it was more clear as a footnote though.


================
Comment at: clang/docs/LanguageExtensions.rst:489
 
+Note that ternary operator(?:) has different behaviors depends on the vector 
type of
+the condition operands. If the condition is a GNU vector (i.e. 
__vector_size__),
----------------
has different behaviors depends on -> has different behaviors depending on


================
Comment at: clang/docs/LanguageExtensions.rst:493
+If it's an extension (OpenCL) vector, it's only available in C and OpenCL C. 
And it 
+selects base on signedness of the condition operands.
+
----------------
Maybe we can add a reference to OpenCL C section 6.3.9


================
Comment at: clang/lib/Sema/SemaExpr.cpp:7484
+  // Only ext vector is allowed
+  if (const auto *VecCondTy = Cond->getType()->getAs<ExtVectorType>()) {
+    QualType EleTy = VecCondTy->getElementType();
----------------
Why do you need this change? I believe OpenCL makes the same restriction.


================
Comment at: clang/lib/Sema/SemaExpr.cpp:7975
+    // condition and result type.
+    QualType CondTy = Cond.get()->getType();
+    if (CondTy->isExtVectorType()) {
----------------
Do you know where it is done for OpenCL? I think we should try to share the 
same code...


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D80574/new/

https://reviews.llvm.org/D80574



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to