Last change
on this file since ecaedf35 was
b6923b17,
checked in by Andrew Beach <ajbeach@…>, 4 months ago
|
Fixed goto labelled loop. I had to reorder some passes. Updated control declaration hoisting (including comments and correcting update count). Added test, moved more tests into ctrl-flow.
|
-
Property mode set to
100644
|
File size:
355 bytes
|
Rev | Line | |
---|
[b6923b17] | 1 | // Some runtime tests for goto. |
---|
| 2 | |
---|
| 3 | #include <fstream.hfa> |
---|
| 4 | |
---|
| 5 | // Make sure loop hoisting |
---|
| 6 | void gotoLabelledLoop() { |
---|
| 7 | sout | "goto-loop"; |
---|
| 8 | goto label; |
---|
| 9 | sout | "!"; |
---|
| 10 | |
---|
| 11 | // Verbose loop will lead to lifting. |
---|
| 12 | label: for (int i = 0 ; i < 2 ; ++i) { |
---|
| 13 | sout | "loop"; |
---|
| 14 | } |
---|
| 15 | sout | "end" | nl; |
---|
| 16 | } |
---|
| 17 | |
---|
| 18 | int main(int argc, char * argv[]) { |
---|
| 19 | sout | nlOff; |
---|
| 20 | |
---|
| 21 | gotoLabelledLoop(); |
---|
| 22 | } |
---|
Note: See
TracBrowser
for help on using the repository browser.