@@ -4255,9 +4255,9 @@ void Verifier::visitLoadInst(LoadInst &LI) {
42554255 Check (LI.getOrdering () != AtomicOrdering::Release &&
42564256 LI.getOrdering () != AtomicOrdering::AcquireRelease,
42574257 " Load cannot have Release ordering" , &LI);
4258- Check (ElTy->isIntOrPtrTy () || ElTy->isFloatingPointTy (),
4259- " atomic load operand must have integer, pointer, or floating point "
4260- " type!" ,
4258+ Check (ElTy->isIntOrPtrTy () || ElTy->isFloatingPointTy () || ElTy-> isVectorTy () ,
4259+ " atomic load operand must have integer, pointer, floating point, "
4260+ " or vector type!" ,
42614261 ElTy, &LI);
42624262 checkAtomicMemAccessSize (ElTy, &LI);
42634263 } else {
@@ -4281,9 +4281,9 @@ void Verifier::visitStoreInst(StoreInst &SI) {
42814281 Check (SI.getOrdering () != AtomicOrdering::Acquire &&
42824282 SI.getOrdering () != AtomicOrdering::AcquireRelease,
42834283 " Store cannot have Acquire ordering" , &SI);
4284- Check (ElTy->isIntOrPtrTy () || ElTy->isFloatingPointTy (),
4285- " atomic store operand must have integer, pointer, or floating point "
4286- " type!" ,
4284+ Check (ElTy->isIntOrPtrTy () || ElTy->isFloatingPointTy () || ElTy-> isVectorTy () ,
4285+ " atomic store operand must have integer, pointer, floating point, "
4286+ " or vector type!" ,
42874287 ElTy, &SI);
42884288 checkAtomicMemAccessSize (ElTy, &SI);
42894289 } else {
0 commit comments