craig.topper added inline comments.

================
Comment at: clang/lib/Sema/SemaType.cpp:8338
   // The attribute vector size must match -mrvv-vector-bits.
-  if (VecSize != VScale->first * MinElts * EltSize) {
+  unsigned ExpectedSize = VScale->first * MinElts * EltSize;
+  if (VecSize != ExpectedSize) {
----------------
aaron.ballman wrote:
> Random thought I didn't think to ask earlier: is it possible for this 
> multiplication to overflow (if so, we should add test coverage to make sure 
> we don't do bad things)?
The largest value for -mrvv-vector-bits is 65536 which makes VScale->first 
65536/64 == 1024. MinElts and EltSize should be small enough that it won't 
overflow.

I'm not sure if there's any protection if someone bypasses the driver with 
`-Xclang -mvscale-min=` and uses a larger value.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D150926

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

Reply via email to