@@ -4255,9 +4255,9 @@ void Verifier::visitLoadInst(LoadInst &LI) {
4255
4255
Check (LI.getOrdering () != AtomicOrdering::Release &&
4256
4256
LI.getOrdering () != AtomicOrdering::AcquireRelease,
4257
4257
" 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!" ,
4261
4261
ElTy, &LI);
4262
4262
checkAtomicMemAccessSize (ElTy, &LI);
4263
4263
} else {
@@ -4281,9 +4281,9 @@ void Verifier::visitStoreInst(StoreInst &SI) {
4281
4281
Check (SI.getOrdering () != AtomicOrdering::Acquire &&
4282
4282
SI.getOrdering () != AtomicOrdering::AcquireRelease,
4283
4283
" 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!" ,
4287
4287
ElTy, &SI);
4288
4288
checkAtomicMemAccessSize (ElTy, &SI);
4289
4289
} else {
0 commit comments