Changes between Version 100 and Version 101 of IR
- Timestamp:
- 11/30/15 09:48:40 (10 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
IR
v100 v101 241 241 * `bit_and(e1, e2)`, `bit_or(e1, e2)`, `bit_xor(e1, e2)`, `bit_comp(e1)` : bit-wise operations 242 242 * arguments are arrays of booleans of the same length 243 * **need conversions between bit vectors and integers** 243 244 244 245 Tuples … … 300 301 * `ite(e1,e2,e3)`: if-then-else (conditional) expression, like `e1?e2:e3` in C. 301 302 * `e1` must have `Bool` type. `e2` and `e3` must have the same static types, which is the static type of the result. 302 * `call(e0,<e1,...,en>)` : a function invocation where `e0` must evaluate to either an abstract or pure system function 303 * `call(e0,<e1,...,en>)` : function call 304 * a function invocation where `e0` must evaluate to either an abstract or pure system function 303 305 * `choose_int(e)` : nondeterministic choice of integer 304 306 … … 330 332 * `ATOMIC_ENTER;` 331 333 * `ATOMIC_EXIT;` 332 * `PARSPAWN p, d, f;` where `p` is pointer to process reference, `d` has `Domain` type and `f` has `Function` type. 334 * `PARSPAWN p, d, f;` : spawn a sequence of procs 335 * `p` has type `Pointer[Proc]`, `d` has `Domain` type and `f` has `Function` type. 333 336 * `NEXT dom, <i,j,…>;` : move to next element in domain 334 337 * updates `i`,`j`,... to be the value of the next tuple in `dom` after `<i,j,...>`
