diff options
author | Michael Forney <mforney@mforney.org> | 2019-04-25 11:30:05 -0700 |
---|---|---|
committer | Quentin Carbonneaux <quentin@c9x.me> | 2019-04-26 14:12:08 +0200 |
commit | 905575d9e6779d795e3f014e99c76c3189b38283 (patch) | |
tree | f233cdbc98d41490baf1d32015be13c0ed4ed64f | |
parent | 82f5ba58cf76bc431afe0c738cdcfe1f5998ae95 (diff) | |
download | roux-905575d9e6779d795e3f014e99c76c3189b38283.tar.gz |
Allow stack allocations larger than SHRT_MAX * 4 bytes
Slots are stored as `int` in Fn, so use the same type in Tmp. Rearrange the fields in Tmp slightly so that sizeof(Tmp) stays the same (at least on 64-bit systems).
-rw-r--r-- | all.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/all.h b/all.h index 6053a1a..e53e290 100644 --- a/all.h +++ b/all.h @@ -279,11 +279,11 @@ struct Alias { struct Tmp { char name[NString]; - uint bid; /* id of a defining block */ Use *use; uint ndef, nuse; + uint bid; /* id of a defining block */ uint cost; - short slot; /* -1 for unset */ + int slot; /* -1 for unset */ short cls; struct { int r; /* register or -1 */ |