Mercurial > hg > CbC > old > device
changeset 695:3e69986a7b82
*** empty log message ***
author | kono |
---|---|
date | Wed, 17 Oct 2007 22:22:12 +0900 |
parents | edc024fc7472 |
children | 7f0f92380714 |
files | Changes mc-inline.c |
diffstat | 2 files changed, 12 insertions(+), 8 deletions(-) [+] |
line wrap: on
line diff
--- a/Changes Wed Oct 17 18:11:46 2007 +0900 +++ b/Changes Wed Oct 17 22:22:12 2007 +0900 @@ -9576,9 +9576,9 @@ type を返しているのがまずい。両方直すんだろうな。 - - - - - - +Wed Oct 17 18:36:23 JST 2007 + +だいぶ破壊しちゃったよ... RSTRUCT が一貫してない。mc-code-*.c +を直すのは本末転倒。-r scope-fix までだと、変更が多すぎる。 + +はぁ〜 ちょっと頭痛い。酒か、血圧か? 血圧計が欲しい...
--- a/mc-inline.c Wed Oct 17 18:11:46 2007 +0900 +++ b/mc-inline.c Wed Oct 17 22:22:12 2007 +0900 @@ -652,7 +652,10 @@ static int palloc(int e) { - return list2(car(e),pexpr(cadr(e))); + int e1 = pexpr(e); + if (car(e1)==CONST) + return list2(ADDRESS,list3(LVAR,new_lvar_align(cadr(e1),16),0)); + return list2(ALLOCA,e1); } static int @@ -679,7 +682,8 @@ static int pbassop(int e) { - int e1=pexpr(caddr(e)); + int e1 = caddr(e); + if (car(e)==BASSOP) e1=pexpr(e1); return list4(car(e),pexpr(cadr(e)),e1,cadddr(e)); }