# HG changeset patch # User kono # Date 1089104140 -32400 # Node ID c29eebf3eaf44f3718172f19d58368d62d1323ca # Parent f3f2b7906d50d61415b32d7f55af9405a9c1a06f local label and indirect goto. diff -r f3f2b7906d50 -r c29eebf3eaf4 Changes --- a/Changes Tue Jul 06 17:04:31 2004 +0900 +++ b/Changes Tue Jul 06 17:55:40 2004 +0900 @@ -5516,3 +5516,10 @@ eval_if l; eval_if みたいな感じ? + +Tue Jul 6 17:46:50 JST 2004 + +type と tag を大域にするんじゃなくて、tag だったら大域、 +type は、LTDECL のみで局所っていうようにするべきだよね。 + +static が global になっちゃってるな。 diff -r f3f2b7906d50 -r c29eebf3eaf4 mc-code-ia32.c --- a/mc-code-ia32.c Tue Jul 06 17:04:31 2004 +0900 +++ b/mc-code-ia32.c Tue Jul 06 17:55:40 2004 +0900 @@ -1339,6 +1339,7 @@ void code_indirect_jmp(int e2) { + use_int(e2); printf("\tjmp *%s\n",register_name(e2,0)); } diff -r f3f2b7906d50 -r c29eebf3eaf4 mc-code-mips.c --- a/mc-code-mips.c Tue Jul 06 17:04:31 2004 +0900 +++ b/mc-code-mips.c Tue Jul 06 17:55:40 2004 +0900 @@ -1264,7 +1264,7 @@ void code_label_value(int label,int reg) { use_int(reg); - printf("\tla %s,L_%d\n",register_name(reg),label); + printf("\tla %s,$L_%d\n",register_name(reg),label); return; } diff -r f3f2b7906d50 -r c29eebf3eaf4 mc-macro.c --- a/mc-macro.c Tue Jul 06 17:04:31 2004 +0900 +++ b/mc-macro.c Tue Jul 06 17:55:40 2004 +0900 @@ -165,7 +165,7 @@ static int macro_if_skip ; /* there may extra non-terminate comment after #if/#else directive */ -/* #endif /* hoge */ +/* #endif / * hoge */ /* */ /* */