Packages

class ExprBuffer extends NirGenPhase.FixupBuffer

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ExprBuffer
  2. FixupBuffer
  3. InstructionBuilder
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new ExprBuffer()(implicit fresh: Fresh)

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. def ++=(other: InstructionBuilder): Unit
    Definition Classes
    FixupBufferInstructionBuilder
  4. def ++=(insts: Seq[Inst]): Unit
    Definition Classes
    FixupBufferInstructionBuilder
  5. def +=(inst: Inst): Unit
    Definition Classes
    FixupBufferInstructionBuilder
  6. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  7. def alignmentOf(ty: Type, unwind: Next)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  8. def arrayalloc(ty: Type, init: Val, unwind: Next, zone: Option[Val] = None)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  9. def arraylength(arr: Val, unwind: Next)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  10. def arrayload(ty: Type, arr: Val, idx: Val, unwind: Next)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  11. def arraystore(ty: Type, arr: Val, idx: Val, value: Val, unwind: Next)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  12. def as(ty: Type, obj: Val, unwind: Next)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  13. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  14. def bin(bin: Bin, ty: Type, l: Val, r: Val, unwind: Next)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  15. def binaryOperationType(lty: Type, rty: Type): Type
  16. def box(ty: Type, obj: Val, unwind: Next)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  17. def boxValue(st: NirGenPhase.SimpleType, value: Val)(implicit pos: SourcePosition): Val
  18. def branch(value: Val, thenp: Next, elsep: Next)(implicit pos: SourcePosition): Unit
    Definition Classes
    InstructionBuilder
  19. def branchLinktime(condition: LinktimeCondition, thenp: Next, elsep: Next)(implicit pos: SourcePosition): Unit
    Definition Classes
    InstructionBuilder
  20. def call(ty: nir.Type.Function, ptr: Val, args: Seq[Val], unwind: Next)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  21. def castConv(fromty: Type, toty: Type): Option[Conv]
  22. def classalloc(name: Top, unwind: Next, zone: Option[Val] = None)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  23. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  24. def coercionTypes(code: Int): (Type, Type)
  25. def comp(comp: Comp, ty: Type, l: Val, r: Val, unwind: Next)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  26. def conv(conv: Conv, ty: Type, value: Val, unwind: Next)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  27. def copy(value: Val, unwind: Next)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  28. def dynmethod(obj: Val, sig: Sig, unwind: Next)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  29. def elem(ty: Type, ptr: Val, indexes: Seq[Val], unwind: Next)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  30. def ensureBoxed(value: Val, tpeEnteringPosterasure: G.Type, targetTpe: G.Type)(implicit buf: NirGenPhase.ExprBuffer, pos: SourcePosition): Val
  31. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  32. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  33. def exists(pred: (Inst) => Boolean): Boolean
    Definition Classes
    InstructionBuilder
  34. def extract(aggr: Val, indexes: Seq[Int], unwind: Next)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  35. def fence(memoryOrder: MemoryOrder)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  36. def field(obj: Val, name: Member, unwind: Next)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  37. def fieldload(ty: Type, obj: Val, name: Member, unwind: Next)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  38. def fieldstore(ty: Type, obj: Val, name: Member, value: Val, unwind: Next)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  39. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  40. def foreach(fn: (Inst) => Unit): Unit
    Definition Classes
    InstructionBuilder
  41. def fromExtern(expectedTy: Type, value: Val)(implicit pos: SourcePosition): Val
  42. def functionMethodSymbols(tree: G.Function): Seq[G.Symbol]
  43. def genAlignmentOf(app: G.Apply)(implicit pos: SourcePosition): Val
  44. def genApply(app: G.Apply): Val
  45. def genApplyBox(st: NirGenPhase.SimpleType, argp: G.Tree)(implicit enclosingPos: SourcePosition): Val
  46. def genApplyDynamic(sym: G.Symbol, obj: G.Tree, argsp: Seq[G.Tree])(implicit pos: SourcePosition): Val
  47. def genApplyDynamic(app: G.ApplyDynamic): Val
  48. def genApplyExternAccessor(sym: G.Symbol, argsp: Seq[G.Tree])(implicit pos: SourcePosition): Val
  49. def genApplyLabel(tree: G.Tree): Val
  50. def genApplyMethod(sym: G.Symbol, statically: Boolean, self: Val, argsp: Seq[G.Tree])(implicit pos: SourcePosition): Val
  51. def genApplyMethod(sym: G.Symbol, statically: Boolean, selfp: G.Tree, argsp: Seq[G.Tree])(implicit pos: SourcePosition): Val
  52. def genApplyModuleMethod(module: G.Symbol, method: G.Symbol, args: Seq[G.Tree])(implicit pos: SourcePosition): Val
  53. def genApplyNew(clssym: G.Symbol, ctorsym: G.Symbol, args: List[G.Tree])(implicit pos: SourcePosition): Val
  54. def genApplyNew(app: G.Apply): Val
  55. def genApplyNewArray(targ: NirGenPhase.SimpleType, argsp: Seq[G.Tree])(implicit pos: SourcePosition): Val
  56. def genApplyNewStruct(st: NirGenPhase.SimpleType, argsp: Seq[G.Tree]): Val
  57. def genApplyPrimitive(app: G.Apply): Val
  58. def genApplyTypeApply(app: G.Apply): Val
  59. def genApplyUnbox(st: NirGenPhase.SimpleType, argp: G.Tree)(implicit pos: SourcePosition): Val
  60. def genArrayOp(app: G.Apply, code: Int): Val
  61. def genArrayValue(tpt: G.Tree, elems: Seq[G.Tree])(implicit pos: SourcePosition): Val
  62. def genArrayValue(av: G.ArrayValue): Val
  63. def genAssign(tree: G.Assign): Val
  64. def genBinaryOp(op: (Type, Val, Val) => Op, leftp: G.Tree, rightp: G.Tree, opty: Type)(implicit enclosingPos: SourcePosition): Val
  65. def genBinaryOp(code: Int, left: G.Tree, right: G.Tree, retty: Type)(implicit exprPos: SourcePosition): Val
  66. def genBlock(block: G.Block): Val
  67. def genCFuncFromScalaFunction(app: G.Apply): Val
  68. def genCFuncPtrApply(app: G.Apply, code: Int): Val

    Generates direct call to function ptr with optional unboxing arguments and boxing result Apply.args can contain different number of arguments depending on usage, however they are passed in constant order:

    Generates direct call to function ptr with optional unboxing arguments and boxing result Apply.args can contain different number of arguments depending on usage, however they are passed in constant order:

    • 0..N args
    • return type evidence
  69. def genCQuoteOp(app: G.Apply): Val
  70. def genCastOp(fromty: Type, toty: Type, value: Val)(implicit pos: SourcePosition): Val
  71. def genClassFieldRawPtr(app: G.Apply)(implicit pos: SourcePosition): Val
  72. def genCoercion(value: Val, fromty: Type, toty: Type)(implicit pos: SourcePosition): Val
  73. def genCoercion(app: G.Apply, receiver: G.Tree, code: Int): Val
  74. def genExpr(tree: G.Tree): Val
  75. def genFuncExternForwarder(funcName: Global, treeSym: G.Symbol)(implicit pos: SourcePosition): Defn
  76. def genFunction(tree: G.Function): Val
  77. def genHashCode(argp: G.Tree)(implicit pos: SourcePosition): Val
  78. def genIdent(tree: G.Ident): Val
  79. def genIf(retty: Type, condp: G.Tree, thenp: G.Tree, elsep: G.Tree, ensureLinktime: Boolean = false)(implicit ifPos: SourcePosition): Val
  80. def genIf(tree: G.If): Val
  81. def genLabel(label: G.LabelDef): Val
  82. def genLabelDef(label: G.LabelDef): Val
  83. def genLiteral(lit: G.Literal): Val
  84. def genLiteralValue(lit: G.Literal): Val
  85. def genLoadExtern(ty: Type, externTy: Type, sym: G.Symbol)(implicit pos: SourcePosition): Val
  86. def genMatch(prologue: List[G.Tree], lds: List[G.LabelDef]): Val
  87. def genMatch(m: G.Match): Val
  88. def genMethodArgs(sym: G.Symbol, argsp: Seq[G.Tree]): Seq[Val]
  89. def genModule(sym: G.Symbol)(implicit pos: SourcePosition): Val
  90. def genRawPtrCastOp(app: G.Apply, code: Int): Val
  91. def genRawPtrElemOp(app: G.Apply, code: Int): Val
  92. def genRawPtrLoadOp(app: G.Apply, code: Int): Val
  93. def genRawPtrOp(app: G.Apply, code: Int): Val
  94. def genRawPtrStoreOp(app: G.Apply, code: Int): Val
  95. def genRawSizeCastOp(app: G.Apply, receiver: G.Tree, code: Int): Val
  96. def genReturn(value: Val)(implicit pos: SourcePosition): Val
  97. def genReturn(tree: G.Return): Val
  98. def genSelect(tree: G.Select): Val
  99. def genSimpleOp(app: G.Apply, args: List[G.Tree], code: Int): Val
  100. def genSizeOf(app: G.Apply)(implicit pos: SourcePosition): Val
  101. def genStaticMember(receiver: G.Tree, sym: G.Symbol)(implicit pos: SourcePosition): Val
  102. def genStoreExtern(externTy: Type, sym: G.Symbol, value: Val)(implicit pos: SourcePosition): Val
  103. def genSynchronized(receiverp: G.Tree)(bodyGen: (NirGenPhase.ExprBuffer) => Val)(implicit pos: SourcePosition): Val
  104. def genSynchronized(receiverp: G.Tree, bodyp: G.Tree)(implicit pos: SourcePosition): Val
  105. def genTailRecLabel(dd: G.DefDef, isStatic: Boolean, label: G.LabelDef): Val
  106. def genThis(tree: G.This): Val
  107. def genThrow(tree: G.Throw): Val
  108. def genTry(retty: Type, expr: G.Tree, catches: List[G.Tree], finallyp: G.Tree)(enclosingPos: SourcePosition): Val
  109. def genTry(tree: G.Try): Val
  110. def genTryCatch(retty: Type, exc: Val, mergen: Local, catches: List[G.Tree])(implicit exprPos: SourcePosition): Val
  111. def genTryFinally(finallyp: G.Tree, insts: Seq[Inst]): Seq[Inst]
  112. def genTyped(tree: G.Typed): Val
  113. def genUnaryOp(code: Int, rightp: G.Tree, opty: Type)(implicit pos: SourcePosition): Val
  114. def genUnsignedOp(app: G.Tree, code: Int): Val
  115. def genValDef(vd: G.ValDef): Val
  116. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  117. def getLinktimeCondition(condp: G.Tree): Option[LinktimeCondition]
  118. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  119. def insert(aggr: Val, value: Val, indexes: Seq[Int], unwind: Next)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  120. def is(ty: Type, obj: Val, unwind: Next)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  121. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  122. def jump(to: Local, args: Seq[Val])(implicit pos: SourcePosition): Unit
    Definition Classes
    InstructionBuilder
  123. def jump(next: Next)(implicit pos: SourcePosition): Unit
    Definition Classes
    InstructionBuilder
  124. def label(id: Local, params: Seq[Local])(implicit pos: SourcePosition): Unit
    Definition Classes
    InstructionBuilder
  125. def label(id: Local)(implicit pos: SourcePosition): Unit
    Definition Classes
    InstructionBuilder
  126. def let(op: Op, unwind: Next)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  127. def let(id: Local, op: Op, unwind: Next)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  128. def liftStringConcat(tree: G.Tree): List[G.Tree]
  129. def load(ty: Type, ptr: Val, unwind: Next, memoryOrder: Option[MemoryOrder] = None)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  130. def method(obj: Val, sig: Sig, unwind: Next)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  131. def module(name: Top, unwind: Next)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  132. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  133. def negateBits(value: Val)(implicit pos: SourcePosition): Val
  134. def negateBool(value: Val)(implicit pos: SourcePosition): Val
  135. def negateFloat(value: Val)(implicit pos: SourcePosition): Val
  136. def negateInt(value: Val)(implicit pos: SourcePosition): Val
  137. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  138. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  139. def numOfType(num: Int, ty: Type): Val
  140. def raise(value: Val, unwind: Next)(implicit pos: SourcePosition): Unit
    Definition Classes
    InstructionBuilder
  141. def ret(value: Val)(implicit pos: SourcePosition): Unit
    Definition Classes
    InstructionBuilder
  142. def size: Int
    Definition Classes
    InstructionBuilder
  143. def sizeOf(ty: Type, unwind: Next)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  144. def stackalloc(ty: Type, n: Val, unwind: Next)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  145. def store(ty: Type, ptr: Val, value: Val, unwind: Next, memoryOrder: Option[MemoryOrder] = None)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  146. def switch(value: Val, default: Next, cases: Seq[Next])(implicit pos: SourcePosition): Unit
    Definition Classes
    InstructionBuilder
  147. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  148. def toExtern(expectedTy: Type, value: Val)(implicit pos: SourcePosition): Val
  149. def toSeq: Seq[Inst]
    Definition Classes
    InstructionBuilder
  150. def toString(): String
    Definition Classes
    AnyRef → Any
  151. def unbox(ty: Type, obj: Val, unwind: Next)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  152. def unboxValue(st: NirGenPhase.SimpleType, partial: Boolean, value: Val)(implicit pos: SourcePosition): Val
  153. def unreachable(unwind: Next)(implicit pos: SourcePosition): Unit
    Definition Classes
    InstructionBuilder
  154. def var_(ty: Type, unwind: Next)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  155. def varload(slot: Val, unwind: Next)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  156. def varstore(slot: Val, value: Val, unwind: Next)(implicit pos: SourcePosition, scope: ScopeId): Local
    Definition Classes
    InstructionBuilder
  157. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  158. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  159. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()

Inherited from InstructionBuilder

Inherited from AnyRef

Inherited from Any

Ungrouped