GitLab will be upgraded on June 2nd 2020 at 2.00 pm (AEDT) to 3.00 pm (AEDT) due to Critical Security Patch Availability. During the update, GitLab and Mattermost services will not be available. If you have any concerns with this, please talk to local Gitlab admin team.

Commit 63d8bde5 authored by Kunshan Wang's avatar Kunshan Wang

HAIL parser. (not tested yet)

parent 78b3dfd0
......@@ -14,11 +14,15 @@ abstract class AbstractRefType extends AbstractGenRefType {
def ty: Type
}
abstract class AbstractStructType extends Type {
abstract class AbstractObjRefType extends AbstractRefType
abstract class AbstractCompositeType extends Type
abstract class AbstractStructType extends AbstractCompositeType {
def fieldTys: Seq[Type]
}
abstract class AbstractSeqType extends Type {
abstract class AbstractSeqType extends AbstractCompositeType {
def elemTy: Type
def len: Long
}
......@@ -28,9 +32,9 @@ abstract class AbstractPointerType extends Type
case class TypeInt(var length: Int) extends Type
case class TypeFloat() extends FPType
case class TypeDouble() extends FPType
case class TypeRef(var ty: Type) extends AbstractRefType
case class TypeRef(var ty: Type) extends AbstractObjRefType
case class TypeIRef(var ty: Type) extends AbstractRefType
case class TypeWeakRef(var ty: Type) extends AbstractRefType
case class TypeWeakRef(var ty: Type) extends AbstractObjRefType
case class TypeStruct(var fieldTys: Seq[Type]) extends AbstractStructType
case class TypeArray(var elemTy: Type, var len: Long) extends AbstractSeqType
case class TypeHybrid(var fieldTys: Seq[Type], var varTy: Type) extends AbstractStructType
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment