LLVM 23.0.0git
RISCVMoveMerger.cpp File Reference
#include "RISCVInstrInfo.h"
#include "RISCVSubtarget.h"

Go to the source code of this file.

Macros

#define RISCV_MOVE_MERGE_NAME   "RISC-V Zcmp move merging pass"

Functions

 INITIALIZE_PASS (RISCVMoveMerge, "riscv-move-merge", RISCV_MOVE_MERGE_NAME, false, false) static unsigned getCM_MVOpcode(const RISCVSubtarget &ST
if(ST.hasVendorXqccmp()) return MoveFromSToA ? RISCV llvm_unreachable ("Unhandled subtarget with paired move.")
static unsigned getPairedPLIOpcode (unsigned Opc)

Variables

bool MoveFromSToA

Macro Definition Documentation

◆ RISCV_MOVE_MERGE_NAME

#define RISCV_MOVE_MERGE_NAME   "RISC-V Zcmp move merging pass"

Definition at line 21 of file RISCVMoveMerger.cpp.

Referenced by INITIALIZE_PASS().

Function Documentation

◆ getPairedPLIOpcode()

unsigned getPairedPLIOpcode ( unsigned Opc)
static

Definition at line 89 of file RISCVMoveMerger.cpp.

References Opc.

◆ INITIALIZE_PASS()

INITIALIZE_PASS ( RISCVMoveMerge ,
"riscv-move-merge" ,
RISCV_MOVE_MERGE_NAME ,
false ,
false  ) const &

References RISCV_MOVE_MERGE_NAME.

◆ llvm_unreachable()

if(ST.hasVendorXqccmp()) return MoveFromSToA ? RISCV llvm_unreachable ( "Unhandled subtarget with paired move." )

References llvm_unreachable.

Variable Documentation

◆ MoveFromSToA

bool MoveFromSToA
Initial value:
{
if (ST.hasStdExtZcmp())
return MoveFromSToA ? RISCV::CM_MVA01S : RISCV::CM_MVSA01
bool MoveFromSToA

Definition at line 78 of file RISCVMoveMerger.cpp.