* Return true if read_vars or write_vars has global variables. */
| 610 | * Return true if read_vars or write_vars has global variables. |
| 611 | */ |
| 612 | bool |
| 613 | Effect::has_global_effect(void) const |
| 614 | { |
| 615 | vector<Variable *>::size_type len; |
| 616 | vector<Variable *>::size_type i; |
| 617 | |
| 618 | len = read_vars.size(); |
| 619 | for (i = 0; i < len; ++i) { |
| 620 | if (read_vars[i]->is_global()) { |
| 621 | return true; |
| 622 | } |
| 623 | } |
| 624 | |
| 625 | len = write_vars.size(); |
| 626 | for (i = 0; i < len; ++i) { |
| 627 | if (write_vars[i]->is_global()) { |
| 628 | return true; |
| 629 | } |
| 630 | } |
| 631 | return false; |
| 632 | } |
| 633 | |
| 634 | /* |
| 635 | * whether any field of an union is been read |