//===-- VEInstrFormats.td - VE Instruction Formats ---------*- tablegen -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//

// SX-Aurora uses little endian, but instructions are encoded little bit
// different manner.  Therefore, we need to tranlate the address of each
// bitfield described in ISA documentation like below.
//
// ISA   |  InstrFormats.td
// ---------------------------
// 0-7   => 63-56
// 8     => 55
// 32-63 => 31-0

//===----------------------------------------------------------------------===//
// Instruction Format
//===----------------------------------------------------------------------===//

class InstVE<dag outs, dag ins, string asmstr, list<dag> pattern>
   : Instruction {
  field bits<64> Inst;

  let Namespace = "VE";
  let Size = 8;

  bits<8> op;
  let Inst{63-56} = op;

  dag OutOperandList = outs;
  dag InOperandList = ins;
  let AsmString   = asmstr;
  let Pattern = pattern;

  bits<1> VE_Vector = 0;
  bits<1> VE_VLInUse = 0;
  bits<3> VE_VLIndex = 0;
  bits<1> VE_VLWithMask = 0;

  /// These fields correspond to the fields in VEInstrInfo.h.  Any changes to
  /// these must be reflected there!  See comments there for what these are.
  ///
  /// VLIndex is the index of VL register in MI's operands.  The HW instruction
  /// doesn't have that field, but we add is in MI for the ease of optimization.
  /// For example, the index of VL of (VST $sy, $sz, $sx, $vl) is 3 (beginning
  /// from 0), and the index of VL of (VST $sy, $sz, $sx, $vm, $vl) is 4.  We
  /// define vector instructions hierarchically, so use VE_VLIndex which is
  /// defined by the type of instruction and VE_VLWithMask which is defined
  /// whether the insturction use mask or not.
  let TSFlags{0}   = VE_Vector;
  let TSFlags{1}   = VE_VLInUse;
  let TSFlags{4-2} = !add(VE_VLIndex, VE_VLWithMask);

  let DecoderNamespace = "VE";
  field bits<64> SoftFail = 0;
}

//-----------------------------------------------------------------------------
// Section 5.1 RM Type
//
// RM type has sx, sy, sz, and imm32.
// The effective address is generated by sz + sy + imm32.
//-----------------------------------------------------------------------------

class RM<bits<8>opVal, dag outs, dag ins, string asmstr, list<dag> pattern = []>
   : InstVE<outs, ins, asmstr, pattern> {
  bits<1>  cx = 0;
  bits<7>  sx;
  bits<1>  cy = 1;
  bits<7>  sz;      // defines sz prior to sy to assign from sz
  bits<7>  sy;
  bits<1>  cz = 1;
  bits<32> imm32;
  let op = opVal;
  let Inst{55} = cx;
  let Inst{54-48} = sx;
  let Inst{47} = cy;
  let Inst{46-40} = sy;
  let Inst{39} = cz;
  let Inst{38-32} = sz;
  let Inst{31-0}  = imm32;
}

//-----------------------------------------------------------------------------
// Section 5.2 RRM Type
//
// RRM type is identical to RM, but the effective address is generated
// by sz + imm32.  The sy field is used by other purposes.
//-----------------------------------------------------------------------------

class RRM<bits<8>opVal, dag outs, dag ins, string asmstr,
          list<dag> pattern = []>
   : RM<opVal, outs, ins, asmstr, pattern>;

// RRMHM type is to load/store host memory
// It is similar to RRM and not use sy.
class RRMHM<bits<8>opVal, dag outs, dag ins, string asmstr,
            list<dag> pattern = []>
   : RRM<opVal, outs, ins, asmstr, pattern> {
  bits<2> ry = 0;
  let cy = 0;
  let sy{6-2} = 0;
  let sy{1-0} = ry;
}

//-----------------------------------------------------------------------------
// Section 5.3 CF Type
//
// CF type is used for control flow.
//-----------------------------------------------------------------------------

class CF<bits<8>opVal, dag outs, dag ins, string asmstr, list<dag> pattern = []>
   : InstVE<outs, ins, asmstr, pattern> {
  bits<1>  cx = 0;
  bits<1>  cx2 = 0;
  bits<2>  bpf = 0;
  bits<4>  cf;
  bits<1>  cy = 1;
  bits<7>  sy;
  bits<1>  cz = 1;
  bits<7>  sz;
  bits<32> imm32;
  let op = opVal;
  let Inst{55} = cx;
  let Inst{54} = cx2;
  let Inst{53-52} = bpf;
  let Inst{51-48} = cf;
  let Inst{47} = cy;
  let Inst{46-40} = sy;
  let Inst{39} = cz;
  let Inst{38-32} = sz;
  let Inst{31-0}  = imm32;
}

//-----------------------------------------------------------------------------
// Section 5.4 RR Type
//
// RR type is for generic arithmetic instructions.
//-----------------------------------------------------------------------------

class RR<bits<8>opVal, dag outs, dag ins, string asmstr, list<dag> pattern = []>
   : InstVE<outs, ins, asmstr, pattern> {
  bits<1>  cx = 0;
  bits<7>  sx;
  bits<1>  cy = 1;
  bits<7>  sy;
  bits<1>  cz = 1;
  bits<7>  sz;          // m field places at the top sz field
  bits<8>  vx = 0;
  bits<8>  vz = 0;
  bits<1> cw = 0;
  bits<1> cw2 = 0;
  bits<4> cfw = 0;
  let op = opVal;
  let Inst{55} = cx;
  let Inst{54-48} = sx;
  let Inst{47} = cy;
  let Inst{46-40} = sy;
  let Inst{39} = cz;
  let Inst{38-32} = sz;
  let Inst{31-24} = vx;
  let Inst{23-16} = 0;
  let Inst{15-8} = vz;
  let Inst{7} = cw;
  let Inst{6} = cw2;
  let Inst{5-4} = 0;
  let Inst{3-0} = cfw;
}

// RRFENCE type is special RR type for a FENCE instruction.
class RRFENCE<bits<8>opVal, dag outs, dag ins, string asmstr,
              list<dag> pattern = []>
   : InstVE<outs, ins, asmstr, pattern> {
  bits<1> avo = 0;
  bits<1> lf = 0;
  bits<1> sf = 0;
  bits<1> c2 = 0;
  bits<1> c1 = 0;
  bits<1> c0 = 0;
  let op = opVal;
  let Inst{55} = avo;
  let Inst{54-50} = 0;
  let Inst{49} = lf;
  let Inst{48} = sf;
  let Inst{47-43} = 0;
  let Inst{42} = c2;
  let Inst{41} = c1;
  let Inst{40} = c0;
  let Inst{39-0} = 0;
}

//-----------------------------------------------------------------------------
// Section 5.5 RW Type
//-----------------------------------------------------------------------------

//-----------------------------------------------------------------------------
// Section 5.6 RVM Type
//
// RVM type is for vector transfer instructions.
//-----------------------------------------------------------------------------

class RVM<bits<8>opVal, dag outs, dag ins, string asmstr,
          list<dag> pattern = []>
   : InstVE<outs, ins, asmstr, pattern> {
  bits<1>  cx = 0;
  bits<1>  vc = 0;
  bits<1>  cs = 0;
  bits<4>  m = 0;
  bits<1>  cy = 1;
  bits<7>  sy;
  bits<1>  cz = 1;
  bits<7>  sz;
  bits<8>  vx;
  bits<8>  vy = 0;
  bits<7>  sw = 0;
  let op = opVal;
  let Inst{55} = cx;
  let Inst{54} = vc;
  let Inst{53} = cs;
  let Inst{52} = 0;
  let Inst{51-48} = m;
  let Inst{47} = cy;
  let Inst{46-40} = sy;
  let Inst{39} = cz;
  let Inst{38-32} = sz;
  let Inst{31-24} = vx;
  let Inst{23-16} = vy;
  let Inst{15-8} = 0;
  let Inst{7} = 0;
  let Inst{6-0} = sw;

  let VE_Vector = 1;
}

//-----------------------------------------------------------------------------
// Section 5.7 RV Type
//
// RV type is for vector instructions.
//-----------------------------------------------------------------------------

class RV<bits<8>opVal, dag outs, dag ins, string asmstr, list<dag> pattern = []>
   : InstVE<outs, ins, asmstr, pattern> {
  bits<1>  cx = 0;
  bits<1>  cx2 = 0;
  bits<1>  cs = 0;
  bits<1>  cs2 = 0;
  bits<4>  m = 0;
  bits<1>  cy = 1;
  bits<7>  sy;
  bits<1>  cz = 0;
  bits<7>  sz = 0;
  bits<8>  vx = 0;
  bits<8>  vy = 0;
  bits<8>  vz = 0;
  bits<8>  vw = 0;
  let op = opVal;
  let Inst{55} = cx;
  let Inst{54} = cx2;
  let Inst{53} = cs;
  let Inst{52} = cs2;
  let Inst{51-48} = m;
  let Inst{47} = cy;
  let Inst{46-40} = sy;
  let Inst{39} = cz;
  let Inst{38-32} = sz;
  let Inst{31-24} = vx;
  let Inst{23-16} = vy;
  let Inst{15-8} = vz;
  let Inst{7-0} = vw;

  let VE_Vector = 1;
}

// Pseudo instructions.
class Pseudo<dag outs, dag ins, string asmstr, list<dag> pattern = []>
   : InstVE<outs, ins, asmstr, pattern> {
  let isCodeGenOnly = 1;
  let isPseudo = 1;
}
