llvm::MachineIRBuilder::buildAtomicRMWFMin

Build and insert OldValRes<def> = G_ATOMICRMW_FMIN Addr, Val, MMO.

Synopsis

Declared in <llvm/CodeGen/GlobalISel/MachineIRBuilder.h>

MachineInstrBuilder
buildAtomicRMWFMin(
    DstOp const& OldValRes,
    SrcOp const& Addr,
    SrcOp const& Val,
    MachineMemOperand& MMO);

Description

Atomically replace the value at Addr with the floating point minimum of Val and the original value. Puts the original value from Addr in OldValRes.

Return Value

a MachineInstrBuilder for the newly created instruction.

Parameters

NameDescription
OldValResDestination receiving the previous memory value.
AddrAddress operand.
ValValue operand.
MMOMemory operand describing the access.

Preconditions

  • setBasicBlock or setMI must have been called.
  • OldValRes must be a generic virtual register.
  • Addr must be a generic virtual register with pointer type.
  • OldValRes, and Val must be generic virtual registers of the same type.