Re: Is this a bug?
Hi Zane, Hi. I am trying to compile binutils 2.37. But when the Makefile run > gcc.exe: fatal error: no input files What do I do? There is some suspicious quoting in the command line, starting with: "-DBINDIR=\\C:/test/normalGcc/bin\" (Note how the closing quote is escaped) And ending with: ../../binutils-2.37/bfd/archive.c" It looks to me like the command line defining one very long symbol called BINDIR which contains a lot more than just a path to a bin directory. I have no idea why this is happening though. Perhaps it is related to how you ran the configure script ? Cheers Nick
Is this a bug?
Hi. I am trying to compile binutils 2.37. But when the Makefile runs gcc -DHAVE_CONFIG_H -I. -I../../binutils-2.37/bfd "-DBINDIR=\\C:/test/normalGcc/bin\" -DLIBDIR=\"C:/test/normalGcc/lib\" -I. -I../../binutils-2.37/bfd -I../../binutils-2.37/bfd/../include -DHAVE_i386_elf32_vec -DHAVE_iamcu_elf32_vec -DHAVE_i386_coff_vec -DHAVE_elf32_le_vec -DHAVE_elf32_be_vec -W -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wstack-usage=262144 -I../../binutils-2.37/bfd/../zlib -g -O2 -MT archive.lo -MD -MP -MF .deps/archive.Tpo -c -o archive.lo ../../binutils-2.37/bfd/archive.c" -o archive.o I get an error gcc.exe: fatal error: no input files What do I do?
Re: Is this a bug? Can do mov r0, #676
Daniel Jacobowitz wrote: > On Sat, Oct 01, 2005 at 11:27:38AM -0500, Jay Monkman wrote: > >>I'm using a cross assembler for ARM, running on x86, and seeing something >>weird. >> >>Here's the test program: >> >>foo: >> mov r0, #675 >> ... > > You should take another look at the ARM instruction set documentation; > immediate moves are limited to eight bits _plus a rotate_. > I understand that. I just didn't realize the assembler was outsmarting me. I assumed the shift had to be explicitly listed in the assembly code. Now that I look, I don't see any way to explicitly specify the shift. I had thought the immediate argument could be 12 bits, so I was surprised when one 12 bit value worked, but another didn't. When I reread the ARM documentation, and I saw that the operand was limited to 8 bits, I was more confused. Thanks for helping un-confuse me. ___ bug-binutils mailing list bug-binutils@gnu.org http://lists.gnu.org/mailman/listinfo/bug-binutils
Re: Is this a bug? Can do mov r0, #676
On Sat, Oct 01, 2005 at 11:27:38AM -0500, Jay Monkman wrote: > I'm using a cross assembler for ARM, running on x86, and seeing something > weird. > > Here's the test program: > > foo: > mov r0, #675 > > Assemble with this: > arm-linux-as -o foo.o foo.S > > Here's what happens: > arm-linux-as -o foo.o foo.s > foo.s: Assembler messages: > foo.s:0: Warning: end of file not at end of a line; newline inserted > foo.s:2: Error: invalid constant -- `mov r7,#675' > > If the number is 676 it works fine. > > I've tried with the following binutils versions with identical results. > 2.13.2.1 > 2.15. > 2.16.1 > > Immediate operands are limited to 8 bits. Then why does 676 work? You should take another look at the ARM instruction set documentation; immediate moves are limited to eight bits _plus a rotate_. -- Daniel Jacobowitz CodeSourcery, LLC ___ bug-binutils mailing list bug-binutils@gnu.org http://lists.gnu.org/mailman/listinfo/bug-binutils
Is this a bug? Can do mov r0, #676
I'm using a cross assembler for ARM, running on x86, and seeing something weird. Here's the test program: foo: mov r0, #675 Assemble with this: arm-linux-as -o foo.o foo.S Here's what happens: arm-linux-as -o foo.o foo.s foo.s: Assembler messages: foo.s:0: Warning: end of file not at end of a line; newline inserted foo.s:2: Error: invalid constant -- `mov r7,#675' If the number is 676 it works fine. I've tried with the following binutils versions with identical results. 2.13.2.1 2.15. 2.16.1 Immediate operands are limited to 8 bits. Then why does 676 work? ___ bug-binutils mailing list bug-binutils@gnu.org http://lists.gnu.org/mailman/listinfo/bug-binutils
Re: Is this a bug?
On Mon, Aug 29, 2005 at 01:03:01PM +0200, Gonzalo Jimenez Sanchez wrote: > regs.s:445: Error: operand out of range (0xaa39 is not between > 0x8000 and 0x7fff) > > line 445 in that file is: li r3,0xAA39 Error in your source. Write "li r3,0xaa39". (Which is the value you will find in r3 after executing this insn.) > init8260.s:1067: Error: operand out of range (0x is not between > 0x8000 and 0x7fff) > > line 1067 in that file is: addir3,0,0x Another error. "addi r3,0,0x" (or more clearly "li r3,0x"). > In 8260_int.s you can find in line 385:addi r2,0,0xFFFD # Load > the mask - 0xFFFD Similarly. > My change: > { "li",OP(14),DRA_MASK, PPCCOM, { RT, SISIGNOPT > } }, > > { "addi",OP(14), OP_MASK,PPCCOM, { RT, RA0, SISIGNOPT > } }, No, this is wrong. -- Alan Modra IBM OzLabs - Linux Technology Centre ___ bug-binutils mailing list bug-binutils@gnu.org http://lists.gnu.org/mailman/listinfo/bug-binutils