regprefix-err-1.s
来自「GNU binutils是GNU交叉工具链中的一个源码包」· S 代码 · 共 35 行
S
35 行
; Test that we get errors when we require a register prefix.; { dg-do assemble } .syntax register_prefixstart:; Some simple tests that we indeed require a register prefix, and some; that should not be flagged as syntax errors. push srp ; { dg-error "(Illegal|Invalid) operands" } push r3 ; { dg-error "(Illegal|Invalid) operands" } move.d $r7,r8 ; { dg-error "(Illegal|Invalid) operands" } move.d r8,[$r11] ; { dg-error "(Illegal|Invalid) operands" } move.d $r8,[$r11+] move.d $r8,[$r10+$r9.b] move.d $r7,[$r10+[$r1].d] move.d $r7,[$r10+[$r3+].w] move $r8,srp ; { dg-error "(Illegal|Invalid) operands" } move ccr,$r13 ; { dg-error "(Illegal|Invalid) operands" } movem r4,[$r12+] ; { dg-error "(Illegal|Invalid) operands" }; Here we have no ambiguity; r10 can only be a symbol when we reuire a; prefix. It does not just miss a size specifier, e.g. as in [r12+r10.d]. move.d $r13,[$r12+r10] .syntax no_register_prefix; Perhaps in this one we should backtrack and retry r10 as a symbol, but; the ambiguity is closer to a programming error, so we should catch it as; such. move.d $r13,[$r12+r10] ; { dg-error "(Illegal|Invalid) operands" } move.d r13,[r12+r16] ; No register named r16 so must be a symbol. nop
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?