Lines Matching defs:atomics
482 // Emit all the different atomics
1001 // The inlined atomics only function on iN types, where N is a power of 2. We
1028 // For atomics larger than 16 bytes, emit a libcall from the frontend. This
1304 // Emit all the different atomics
1956 AtomicInfo atomics(*this, dest);
1957 LValue LVal = atomics.getAtomicLValue();
1962 atomics.emitCopyIntoMemory(rvalue);
1967 if (atomics.shouldUseLibcall()) {
1969 Address srcAddr = atomics.materializeRValue(rvalue);
1973 args.add(RValue::get(atomics.getAtomicSizeValue()),
1975 args.add(RValue::get(atomics.getAtomicPointer()), getContext().VoidPtrTy);
1986 llvm::Value *ValToStore = atomics.convertRValueToInt(rvalue);
1989 Address Addr = atomics.getAtomicAddress();
1990 if (llvm::Value *Value = atomics.getScalarRValValueOrNull(rvalue))
1992 Addr = atomics.castToAtomicIntPointer(Addr);
2014 atomics.EmitAtomicUpdate(AO, rvalue, IsVolatile);
2045 AtomicInfo atomics(*this, dest);
2047 switch (atomics.getEvaluationKind()) {
2050 atomics.emitCopyIntoMemory(RValue::get(value));
2056 atomics.emitCopyIntoMemory(RValue::getComplex(value));
2065 Zeroed = atomics.emitMemSetZeroIfNecessary();
2066 dest = atomics.projectValue();