Class ParamListStandardOut

java.lang.Object
ghidra.program.model.lang.ParamListStandard
ghidra.program.model.lang.ParamListStandardOut
All Implemented Interfaces:
ParamList
Direct Known Subclasses:
ParamListRegisterOut

public class ParamListStandardOut extends ParamListStandard
A list of resources describing possible storage locations for a function's return value, and a strategy for selecting a storage location based on data-types in a function signature. Similar to the parent class, when assigning storage, the first entry that matches the data-type is chosen. But if this instance fails to find a match (because the return value data-type is too big) the data-type is converted to a pointer and storage is assigned based on that pointer. Additionally, if configured, this instance will signal that a hidden input parameter is required to fully model where the large return value is stored. The resource list is checked to ensure entries are distinguishable.
  • Constructor Details

    • ParamListStandardOut

      public ParamListStandardOut()
  • Method Details

    • assignMap

      public void assignMap(PrototypePieces proto, DataTypeManager dtManager, ArrayList<ParameterPieces> res, boolean addAutoParams)
      Description copied from interface: ParamList
      Given a list of datatypes, calculate the storage locations used for passing those data-types
      Specified by:
      assignMap in interface ParamList
      Overrides:
      assignMap in class ParamListStandard
      Parameters:
      proto - is the list of datatypes
      dtManager - is the data-type manager
      res - is the vector for holding the storage locations and other parameter properties
      addAutoParams - if true add/process auto-parameters