Mercurial > hg > CbC > old > device
diff Changes @ 397:33a09aa401ba
arm const pass
author | kono |
---|---|
date | Fri, 15 Oct 2004 02:08:06 +0900 |
parents | bfeefa7f09f5 |
children | bf583e04936f |
line wrap: on
line diff
--- a/Changes Wed Oct 13 16:10:44 2004 +0900 +++ b/Changes Fri Oct 15 02:08:06 2004 +0900 @@ -6001,3 +6001,25 @@ そうか、C++ のmaglegationをいれれば、C++ とは接続可能。 だけど。 + +Wed Oct 13 21:06:31 JST 2004 + +mvn は1's complement で、sub は2's complement なみたいね。 +なので、8bit const の時におかしくなる。 + +32bit word のalignmentは4でなくてはならないらしい。 + +0x20005cc <code_lvar_address+216>: str r0, [r11, -#22] +(gdb) p $r0 +$13 = -1073742791 +0x20005d0 <code_lvar_address+220>: ldr r0, [r11, -#22] +(gdb) si +(gdb) p $r0 +$15 = -63324161 +(gdb) p (char*) -1073742791 +$16 = 0xbffffc39 " \004@L +(gdb) p (char*)-63324161 +$17 = 0xfc39bfff <Address 0xfc39bfff out of bounds> +(gdb) quit + +うーむ。