#
# 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.apiapi 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;
};