P4C
The P4 Compiler
Loading...
Searching...
No Matches
ActionData Namespace Reference

Classes

class  ALUOperation
 
struct  ALUParameter
 
struct  ALUPosition
 
class  Argument
 
class  Constant
 
class  Format
 
class  FormatType_t
 
class  Hash
 
struct  LocalPacking
 
class  MeterALU
 
class  MeterColor
 
class  PackingConstraint
 
class  Parameter
 
class  RamSection
 
struct  RamSectionPosition
 
class  RandomNumber
 
class  RandomPadding
 
struct  RotationInfo
 
struct  SharedParameter
 
struct  SingleActionAllocation
 
struct  SingleActionPositions
 
struct  UniqueLocationKey
 

Typedefs

using AllActionPositions = safe_vector<SingleActionPositions>
 
using bits_iter_t = safe_vector<const Parameter *>::iterator
 
using BusInputs = std::array<bitvec, SLOT_TYPES>
 
using ModCondMap = std::map<cstring, safe_vector<bitvec>>
 
using ParameterPositions = std::map<int, const Parameter *>
 
using PossibleCondenses = safe_vector<RamSec_vec_t>
 
using RamSec_vec_t = safe_vector<const RamSection *>
 

Enumerations

enum  ALUOPConstraint_t { ISOLATED , BITMASKED_SET , DEPOSIT_FIELD , BYTE_ROTATE_MERGE }
 
enum  Location_t {
  ACTION_DATA_TABLE , IMMEDIATE , AD_LOCATIONS , METER_ALU = 2 ,
  ALL_LOCATIONS = 3
}
 
enum  ModConditionally_t { NONE , VALUE }
 
enum  SlotType_t {
  BYTE , HALF , FULL , SLOT_TYPES ,
  DOUBLE_FULL = SLOT_TYPES , SECT_TYPES = 4
}
 

Functions

SlotType_t bits_to_slot_type (size_t bits)
 
std::ostream & operator<< (std::ostream &out, ActionData::FormatType_t ft)
 
std::ostream & operator<< (std::ostream &out, ALUOPConstraint_t c)
 
std::ostream & operator<< (std::ostream &out, const Format::Use &use)
 
std::ostream & operator<< (std::ostream &out, Location_t loc)
 
std::ostream & operator<< (std::ostream &out, SlotType_t st)
 
size_t slot_type_to_bits (SlotType_t slot_type)
 

Detailed Description

Copyright (C) 2024 Intel Corporation

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

SPDX-License-Identifier: Apache-2.0