[Bug gas/15649] ARM - Invalid constant after fixup with shifted immediate values
http://sourceware.org/bugzilla/show_bug.cgi?id=15649 --- Comment #3 from Nick Clifton nickc at redhat dot com --- Created attachment 7094 -- http://sourceware.org/bugzilla/attachment.cgi?id=7094action=edit Use A1 encoding when A2 encoding of negative PC+offset fails Here is a possible patch. I am not sure that it is 100% correct however - I need an opinion from an ARM assembler expert... -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gas/15649] ARM - Invalid constant after fixup with shifted immediate values
http://sourceware.org/bugzilla/show_bug.cgi?id=15649 --- Comment #2 from Michał Leśniewski m.lesniewski at samsung do t com --- Hi Nick, I run a few tests to see which values actually cause the problem. Here are is a small source file which demonstrates the problem: .text .global foo .syntax unified .arm foo: add r0, pc, #0x7d, 4 add r0, pc, #0xd007 add r0, pc, #0xe8, 4 add r0, pc, #0x800e add r0, pc, #0x53, 2 add r0, pc, #0xc014 Output: test.S: Assembler messages: test.S:8: Error: invalid constant (d007) after fixup test.S:11: Error: invalid constant (800e) after fixup test.S:14: Error: invalid constant (c014) after fixup I also checked with other operand registers (rn != pc) -- the assembler d id not report any errors. -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gas/15649] ARM - Invalid constant after fixup with shifted immediate values
http://sourceware.org/bugzilla/show_bug.cgi?id=15649 Nick Clifton nickc at redhat dot com changed: What|Removed |Added Status|NEW |WAITING CC||nickc at redhat dot com --- Comment #1 from Nick Clifton nickc at redhat dot com --- Hi Michal, Please could you provide a test case to reproduce this problem ? I tried the following: % cat pr15649.s .text .global foo foo: add r0, r1, #0xf00f add r0, r1, #0xff, 4 But was able to assemble it without any problems: % as pr15649.s % objdump -d a.out a.out: file format elf32-littlearm Disassembly of section .text: foo: 0: e28102ffadd r0, r1, #-268435441 ; 0xf00f 4: e28102ffadd r0, r1, #-268435441 ; 0xf00f This was using GAS built from the 2.23 branch, but the same thing happens with the current mainline sources as well. Cheers Nick -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gas/15649] ARM - Invalid constant after fixup with shifted immediate values
http://sourceware.org/bugzilla/show_bug.cgi?id=15649 Michał Leśniewski m.lesniewski at samsung dot com changed: What|Removed |Added CC||m.lesniewski at samsung do t com -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils