Changes between Version 38 and Version 39 of IR2


Ignore:
Timestamp:
04/28/21 17:00:47 (5 years ago)
Author:
siegel
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • IR2

    v38 v39  
    25251. function calls for atomic enter/exit
    26261. a type for $state ?
     271. How do you model `malloc` when the element type is not known?  (Create a type `$byte`?)
    2728
    2829
     
    146147
    147148Notes
    148 * For function calls and spawns, the first expression shall have type pointer-to-function-....  The function pointed to will be the one called or spawned.
     149* For function calls and spawns, the first expression shall have type pointer-to-function-....  The function pointed to will be the one called or spawned.  That function must be a system or defined function (not an abstract function).
    149150* The 3 expressions in a `$parspawn` are (1) pointer to the first element of the process array, an expression of type `$proc*`, (2) an expression of type `$domain`, and (3) an expression of type pointer-to-function-....  The function must have the type that consumes n `$int`s, where n is the dimension of the domain, and returns `void`.   The function is spawned once for each element of the domain.  References to the new processes are stored in the process array. 
    150151* The first expression following `$alloc` has type `$heap*`.  It is a pointer to the heap that will be modified by allocating the new memory.  The second expression has type `$int` and is the number of elements being allocated.    This is followed by the element type.    The function returns a pointer to the first element of an array, similar to C's malloc.    It is deallocated using function`$free`.