PreviousUpNext

15.3.79  src/lib/compiler/back/low/aliasing/lowhalf-ramregion.api

#
# This api specifies the lowhalf annotations for describing
# memory aliasing and control dependence.
#
# -- Allen Leung

# Compiled by:
#     src/lib/compiler/back/low/lib/lowhalf.lib

# See also:
#     src/lib/compiler/back/low/code/ramregion.api

api Lowhalf_Ramregion {
    #
    Ramregion;

    Mutability
      = READONLY    #  Read-only regions are never written to 
      | IMMUTABLE   #  Immutable region are never updated once it is initialized 
      | MUTABLE    #  Mutable regions can be updated 
      ;

    memory:  Ramregion;  #  root of the memory hierarchy 

    heap:      Ramregion;  #  heap region 
    stack:     Ramregion;  #  stack region 
    data:      Ramregion;  #  global data region 
    readonly:  Ramregion;  #  read only data region 

    new:       (String, Mutability, Ramregion) -> Ramregion;
    union:     List( Ramregion ) -> Ramregion; 

    to_string:  Ramregion -> String;
};


Comments and suggestions to: bugs@mythryl.org

PreviousUpNext