Alternative for .string pseudo op?

心不动则不痛 提交于 2019-12-02 18:39:49

问题


I am trying to run an assembly file on Mac OS X that uses .string pseudo-ops, which apparently aren't recognized. How should the following lines be replaced so it will work on a mac?

ArrayIndexOutOfBoundsException:
.long 35
.string "Array index out of bounds exception"

The line I am using to execute the assembly file is:

gcc -m32 -g3 runtime.c foo.s -o foo

Where runtime.c is a file with functions that can be invoked by foo.s program.


回答1:


.asciz, or if you don't have that then whatever you have for ascii text and add a terminating 0 byte manually.

Update: if you have .asciz then just use that in place of .string:

ArrayIndexOutOfBoundsException:
.long 35
.asciz "Array index out of bounds exception"

Otherwise if you have .ascii use something like:

ArrayIndexOutOfBoundsException:
.long 35
.ascii "Array index out of bounds exception"
.byte 0


来源:https://stackoverflow.com/questions/23172178/alternative-for-string-pseudo-op

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!