/
原文地址:http://www.cnblogs.com/faraway/archive/2009/03/06/1404449.html
阐明:ErrorA1450WDeprecatedformofPSRfieldspecifierused(use_cxsfforfuturecompatibility)。
/
ADS2.2呈现以上我过错,我google出了成果,特记下。
我是在ARM指令操练的一个汇编程序中添加了“MSR”的操练,是仿照“MRS”的:代码如下:
;MSR指令(将通用寄存器的内容传送到CPSR或许SPSR?MSR CPSR,R0 ;传送CPSR的内容到R0MSR SPSR,R0 ;传送SPSR的内容到R1MSR CPSR_c,R0;
我搞不理解哪里呈现了过错,我在网上查找这个过错的时分找到了这样(原文这儿):
;MSR指令(将通用寄存器的内容传送到CPSR或许SPSR?MSR CPSR_cxsf,R0 ;传送CPSR的内容到R0MSR SPSR_cxsf,R0 ;传送SPSR的内容到R1MSR CPSR_c,R0;
就可以处理了,不过我在想我是依照教师课件上讲的,怎么会犯错,看了”ARM指令集”后我理解了,用MSR指令对PSR进行操作的时分,为了设定操作的规模,防止对某些位的操作而影响其他部分而界说了这几个FLAG。这个是不行商议的,一定要这样做的,否则就会报错。“ARM指令集”上讲的是用cpsr_all。为了形象更深一点我决议再找找精确的答案。
在网上找到也这种说法(原文这儿),说是cpsr_all也是老的写法,现在去写这样的,仍是会有正告的。最新的写法是这样的cpsr_cxsf。