scala.scalanative.nir
Members list
Type members
Classlikes
Attributes
- Companion:
- object
- Graph
- Supertypes
- Known subtypes
- object Abstract.typeclass Alignmentclass Defineobject Dyn.typeclass Externobject Final.typeclass Inlineobject AlwaysInline.typeobject InlineHint.typeobject MayInline.typeobject NoInline.typeclass Linkobject LinktimeResolved.typeclass Optclass BailOptobject DidOpt.typeobject NoOpt.typeobject UnOpt.typeobject SafePublish.typeclass Specializeobject MaySpecialize.typeobject NoSpecialize.typeobject Stub.typeobject UsesIntrinsic.typeobject Volatile.type
Attributes
- Companion:
- object
- Graph
- Supertypes
Attributes
- Companion:
- object
- Graph
- Supertypes
- Known subtypes
Attributes
- Companion:
- object
- Graph
- Supertypes
- Known subtypes
Attributes
- Companion:
- object
- Graph
- Supertypes
- Known subtypes
A definition in NIR.
A definition in NIR.
Programs in NIR are represented as a sequence of definitions denoting types, methods and fields. Definitions fall into two categories:
- Top-level definitions: these represent classes, modules, traits, or global variables and constants.
- Member definitions: these represent fields or methods.
Classes and modules inherit from a single parent with the exception of
java.lang.Object
, which sits at the top of the hierarchy. They may
additionally implement traits.
Definitions may also carry attributes providing further information about their semantics (e.g., whether a method may be inlined). Attributes are also used to mark special-purpose definitions, such as stubs, proxies and FFIs.
Attributes
- Companion:
- object
- Graph
- Supertypes
- Known subtypes
Attributes
- Companion:
- object
- Graph
- Supertypes
- Known subtypes
- class Cfclass Ifclass Jumptrait LinktimeCfclass LinktimeIfclass Retclass Switchclass Throwclass Unreachableclass Labelclass Let
A class to build sequences of NIR instructions.
A class to build sequences of NIR instructions.
Attributes
- Graph
- Supertypes
- Known subtypes
- class FixupBufferclass ExprBuffer
Attributes
- Companion:
- object
- Graph
- Supertypes
- Known subtypes
- class ComplexConditionclass SimpleCondition
Attributes
- Companion:
- trait
- Graph
- Supertypes
- Self type
- LinktimeCondition.type
Attributes
- Graph
- Supertypes
An atomic memory ordering constraints.
An atomic memory ordering constraints.
Atomic instructions take ordering parameters specifying with which other instructions they synchronize.
Attributes
- See also:
- Companion:
- object
- Graph
- Supertypes
- Known subtypes
Attributes
- Companion:
- class
- Graph
- Supertypes
- Self type
- MemoryOrder.type
Attributes
- Companion:
- object
- Graph
- Supertypes
- Known subtypes
- class AlignmentOfclass Arrayallocclass Arraylengthclass Arrayloadclass Arraystoreclass Asclass Binclass Boxclass Callclass Classallocclass Compclass Convclass Copyclass Dynmethodclass Elemclass Extractclass Fenceclass Fieldclass Fieldloadclass Fieldstoreclass Insertclass Isclass Loadclass Methodclass Moduleclass SizeOfclass Stackallocclass Storeclass Unboxclass Varclass Varloadclass Varstore
- Self type
Attributes
- Companion:
- object
- Graph
- Supertypes
- Known subtypes
Attributes
- Companion:
- trait
- Graph
- Supertypes
- Self type
- Positioned.type
The identifier of a lexical scope.
Attributes
- Companion:
- trait
- Graph
- Supertypes
- Self type
- SourceFile.type
Attributes
- Companion:
- object
- Graph
- Supertypes
Attributes
- Companion:
- class
- Graph
- Supertypes
- Self type
- SourcePosition.type
Attributes
- Companion:
- object
- Graph
- Supertypes
- Known subtypes
- class RefKindclass Arrayobject Null.typeclass Refobject Unit.typeclass SpecialKindclass Functionobject Nothing.typeclass Varobject Vararg.typeobject Virtual.typeclass ValueKindclass AggregateKindclass ArrayValueclass StructValuetrait Iclass FixedSizeIobject Byte.typeobject Char.typeobject Int.typeobject Long.typeobject Short.typeobject Size.typeclass PrimitiveKindobject Bool.typeclass Fobject Double.typeobject Float.typeobject Ptr.type
A NIR value.
Types
The name of a variable in program sources.
The name of a variable in program sources.
Attributes
A map from SSA identifier to its name in program sources.
A map from SSA identifier to its name in program sources.
Local variables get lowered to an static assignment that is assigned to a unique identifier in the context of its definition. Instances of this type are used to maintain the correspondance between an SSA ID and its corresponding name in program sources.