xref: /freebsd/contrib/llvm-project/llvm/lib/Target/RISCV/RISCVInstrGISel.td (revision a0ca4af9455b844c5e094fc1b09b1390ffa979fc)
1//===-- RISCVInstrGISel.td - RISC-V GISel target pseudos ----*- tablegen -*-===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8//
9/// \file
10// RISC-V GlobalISel target pseudo instruction definitions. This is kept
11// separately from the other tablegen files for organizational purposes, but
12// share the same infrastructure.
13//
14//===----------------------------------------------------------------------===//
15
16class RISCVGenericInstruction : GenericInstruction {
17  let Namespace = "RISCV";
18}
19
20// Pseudo equivalent to a RISCVISD::FCLASS.
21def G_FCLASS : RISCVGenericInstruction {
22  let OutOperandList = (outs type0:$dst);
23  let InOperandList = (ins type1:$src);
24  let hasSideEffects = false;
25}
26def : GINodeEquiv<G_FCLASS, riscv_fclass>;
27