comparison Changes @ 397:33a09aa401ba

arm const pass
author kono
date Fri, 15 Oct 2004 02:08:06 +0900
parents bfeefa7f09f5
children bf583e04936f
comparison
equal deleted inserted replaced
396:bfeefa7f09f5 397:33a09aa401ba
5999 5999
6000 6000
6001 そうか、C++ のmaglegationをいれれば、C++ とは接続可能。 6001 そうか、C++ のmaglegationをいれれば、C++ とは接続可能。
6002 だけど。 6002 だけど。
6003 6003
6004
6005 Wed Oct 13 21:06:31 JST 2004
6006
6007 mvn は1's complement で、sub は2's complement なみたいね。
6008 なので、8bit const の時におかしくなる。
6009
6010 32bit word のalignmentは4でなくてはならないらしい。
6011
6012 0x20005cc <code_lvar_address+216>: str r0, [r11, -#22]
6013 (gdb) p $r0
6014 $13 = -1073742791
6015 0x20005d0 <code_lvar_address+220>: ldr r0, [r11, -#22]
6016 (gdb) si
6017 (gdb) p $r0
6018 $15 = -63324161
6019 (gdb) p (char*) -1073742791
6020 $16 = 0xbffffc39 " \004@L
6021 (gdb) p (char*)-63324161
6022 $17 = 0xfc39bfff <Address 0xfc39bfff out of bounds>
6023 (gdb) quit
6024
6025 うーむ。