# Class: com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionBuilder

Builder of [CallingConvention](CallingConvention) objects.

## Constructor: CallingConventionBuilder
- parameter: `name`, type: `java.lang.String`


## Constructor: CallingConventionBuilder
- parameter: `name`, type: `java.lang.String`
- parameter: `proctype`, type: `com.pnfsoftware.jeb.core.units.codeobject.ProcessorType`


## Constructor: CallingConventionBuilder
- parameter: `name`, type: `com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionName`
- parameter: `proctype`, type: `com.pnfsoftware.jeb.core.units.codeobject.ProcessorType`


## Method: addAlignementRequirement
- parameter: `reqSlotcount`, type: `int`
- parameter: `wantedSlotcountAlignment`, type: `int`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionBuilder`


## Method: addAlternateName
- parameter: `name`, type: `java.lang.String`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionBuilder`


## Method: addAlternateNames
- parameter: `names`, type: `java.util.Collection<java.lang.String>`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionBuilder`


## Method: addCompilerType
- parameter: `comptype`, type: `com.pnfsoftware.jeb.core.units.codeobject.CompilerType`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionBuilder`


## Method: addFlags
- parameter: `additionalFlags`, type: `int`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionBuilder`


## Method: addInputFpSlot
- parameter: `entry`, type: `com.pnfsoftware.jeb.core.units.code.asm.type.StorageEntry`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionBuilder`


## Method: addInputFpSlots
- parameter: `entries`, type: `java.util.Collection<com.pnfsoftware.jeb.core.units.code.asm.type.StorageEntry>`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionBuilder`


## Method: addInputRegisterPair
- parameter: `registerPair`, type: `com.pnfsoftware.jeb.core.units.code.asm.type.StorageEntry`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionBuilder`

Description: 
parameter: registerPair: must be of REGISTER\_PAIR type
return: 

## Method: addInputRegisterPairs
- parameter: `registerPairs`, type: `java.util.Collection<com.pnfsoftware.jeb.core.units.code.asm.type.StorageEntry>`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionBuilder`


## Method: addInputSlot
- parameter: `entry`, type: `com.pnfsoftware.jeb.core.units.code.asm.type.StorageEntry`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionBuilder`


## Method: addInputSlots
- parameter: `entries`, type: `java.util.Collection<com.pnfsoftware.jeb.core.units.code.asm.type.StorageEntry>`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionBuilder`


## Method: addOutputRegisterPair
- parameter: `registerPair`, type: `com.pnfsoftware.jeb.core.units.code.asm.type.StorageEntry`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionBuilder`

Description: 
parameter: registerPair: must be of REGISTER\_PAIR type
return: 

## Method: addOutputRegisterPairs
- parameter: `registerPairs`, type: `java.util.Collection<com.pnfsoftware.jeb.core.units.code.asm.type.StorageEntry>`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionBuilder`


## Method: addOutputSlot
- parameter: `entry`, type: `com.pnfsoftware.jeb.core.units.code.asm.type.StorageEntry`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionBuilder`


## Method: addOutputSlots
- parameter: `entries`, type: `java.util.Collection<com.pnfsoftware.jeb.core.units.code.asm.type.StorageEntry>`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionBuilder`


## Method: addProcessorType
- parameter: `proctype`, type: `com.pnfsoftware.jeb.core.units.codeobject.ProcessorType`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionBuilder`


## Method: addSpoiledRegister
- parameter: `reg`, type: `long`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionBuilder`


## Method: addSpoiledRegisters
- parameter: `regs`, type: `long[]`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionBuilder`


## Method: addSpoiledRegisters
- parameter: `entries`, type: `java.util.Collection<com.pnfsoftware.jeb.core.units.code.asm.type.StorageEntry>`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionBuilder`


## Method: addSubsystemType
- parameter: `sstype`, type: `com.pnfsoftware.jeb.core.units.codeobject.SubsystemType`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionBuilder`


## Method: build
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.ICallingConvention`


## Method: duplicate
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionBuilder`


## Method: setAlternateNames
- parameter: `names`, type: `java.util.Collection<java.lang.String>`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionBuilder`


## Method: setFlags
- parameter: `flags`, type: `int`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionBuilder`


## Method: setIPRD
- parameter: `slotcnt`, type: `int`
- parameter: `inputPtrEntry`, type: `com.pnfsoftware.jeb.core.units.code.asm.type.StorageEntry`
- parameter: `outputPtrEntry`, type: `com.pnfsoftware.jeb.core.units.code.asm.type.StorageEntry`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionBuilder`

Description: Set information for Implicit Pointer to Return Data special conventions.
parameter: slotcnt: minimum slot count for which a composite return type must be treated via an            IPRD
parameter: inputPtrEntry: null if the implicit input entry can be discovered as a normal input            entry
parameter: outputPtrEntry: null if the output entry can be discovered as a normal output entry
return: 

## Method: setName
- parameter: `name`, type: `java.lang.String`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionBuilder`


## Method: setName
- parameter: `name`, type: `java.lang.String`
- parameter: `clearAlternateNames`, type: `boolean`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionBuilder`


## Method: setNotes
- parameter: `notes`, type: `java.lang.String`


## Method: setOutputFpSlot
- parameter: `outFpSlot`, type: `com.pnfsoftware.jeb.core.units.code.asm.type.StorageEntry`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionBuilder`

Description: 
parameter: outFpEntry: 
return: 

## Method: setProcessorTypes
- parameter: `processorTypes`, type: `java.util.Collection<com.pnfsoftware.jeb.core.units.codeobject.ProcessorType>`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionBuilder`


## Method: setReturnAddressSlot
- parameter: `entry`, type: `com.pnfsoftware.jeb.core.units.code.asm.type.StorageEntry`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.CallingConventionBuilder`


