LRDE Tiger Compiler  1.34a $Id: 7fef12e1f5fa43449d667a0eec1d837c40fc1202 $
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
canon::commute_p Struct Reference

Return false if a and b cannot be swapped, try to say true as much as possible. More...

Detailed Description

Return false if a and b cannot be swapped, try to say true as much as possible.

Note that we are not trying to understand whether it is valid to swap a and b rather, we are checking if a can influence the meaning of b (or vice versa), in which case we must not permute them. It is up to the caller to make proper use of this information.

For instance in `BINOP(-, A, B)' if A and B are constants, the caller should not swap them, nevertheless this function shall return true.


The documentation for this struct was generated from the following file: