This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
GCC porting problem help
- From: "Nithya Babu" <nithyababu at isofttech dot com>
- To: gcc at gcc dot gnu dot org
- Date: Thu, 8 Jan 2004 14:57:54 +0530
- Subject: GCC porting problem help
- Organization: iSoftTech
- Reply-to: "Nithya Babu" <nithyababu at isofttech dot com>
We have a problem while using a gcc cross-compiler to compile one of our uClinux applications.
This is Compiler's error report:-
make[3]: Entering directory `/home/new/driver_testing/uClinux-dist/user/mp3play/mpegdec_lib'
nisa-elf-gcc -DCONFIG_FRIO -O0 -g -Dlinux -D__linux__ -Dunix -D__uClinux__ -DEMBED -I/home/new/driver_testing/uClinux-dist/lib/uClibc/include -I/home/new/driver_testing/uClinux-dist/lib/libm -I/home/new/driver_testing/uClinux-dist -fno-builtin -nostartfiles -I/home/new/driver_testing/uClinux-dist/linux-2.4.x/include -Impegdec_lib -DMPEGAUD_INT -Irc4 -DMPEGAUD_INT -DSPLIT_TABLE -DUSE_IMDCT_TABLE -g -O1 -c -o mpeg3dec.o mpeg3dec.c
mpeg3dec.c: In function `MPEG3_dequantize_samples':
mpeg3dec.c:864: internal error--insn does not satisfy its constraints:
(insn 719 1800 1806 (set (reg:SI 9 P1)
(plus:SI (mult:SI (reg:SI 1 R1)
(const_int 4 [0x4]))
(reg:SI 9 P1))) 53 {umulhisi3-4} (insn_list 716 (insn_list 708 (nil)))
(nil))
make[3]: *** [mpeg3dec.o] Error 1
Our analysis on the problem is as follows:
An instruction of the type "p1 = R1*4 + p1" is being used here. So, was it that the error is being raised because we permit the operation to happen between a data register and a pointer ?
Thanks
Ashwani