reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
3403 PointerType *PTy = dyn_cast<PointerType>(SI.getOperand(1)->getType()); 3404 Assert(PTy, "Store operand must be a pointer.", &SI); 3406 Assert(ElTy == SI.getOperand(0)->getType(), 3407 "Stored value type does not match pointer operand type!", &SI, ElTy); 3408 Assert(SI.getAlignment() <= Value::MaximumAlignment, 3409 "huge alignment values are unsupported", &SI); 3410 Assert(ElTy->isSized(), "storing unsized types is not allowed", &SI); 3411 if (SI.isAtomic()) { 3412 Assert(SI.getOrdering() != AtomicOrdering::Acquire && 3413 SI.getOrdering() != AtomicOrdering::AcquireRelease, 3414 "Store cannot have Acquire ordering", &SI); 3415 Assert(SI.getAlignment() != 0, 3416 "Atomic store must specify explicit alignment", &SI); 3420 ElTy, &SI); 3421 checkAtomicMemAccessSize(ElTy, &SI); 3423 Assert(SI.getSyncScopeID() == SyncScope::System, 3424 "Non-atomic store cannot have SynchronizationScope specified", &SI); 3426 visitInstruction(SI);