define_peephol2 insn

2009-03-03 Thread M R Swami Reddy

Hello,

I have ported gcc to a 16-bit target. Now problem is, gcc generates wrong code 
with -O1 and above optimization for move and load/store instructions, b using

the 32-bit registers with 16-bit instructions. For ex:
===
move r13, r1 // move 0-15 bit to r1 register
move r13, r0 // move 16-31 bits to r0 register, but this move performs
 // only 0-15 bits to r0 registers, which NOT INTENDED.

To solve the above issue, can I use the "define_peephole2" insn pattern?

[like: movd r13, (r1,r0) // move r13 0-31 bits r1,r0 registers. Note:
r1 and r0 are 16-bits registers]

Please advise.

Any comments or suggestions most welcome.

Thanks in advance.

Thanks
Swami



Re: define_peephol2 insn

2009-03-03 Thread M R Swami Reddy

To solve the above issue, can I use the "define_peephole2" insn pattern?


No.  At most you could abuse it to hide the issue some of the time.
You probably have one or more of your target macros / hooks wrong,
e.g. HARD_REGNO_NREGS.


Thank you very much for your reply. In my case, code generation is correct
for all test cases without optimization option. Wrong code generated (as 
mentioned in previous mail) for rare case with optimization + PIC options (ie 
-O1 -fPIC) enabled only.


Thanks
Swami




[Fwd: Re: GCC 4.3 target deprecation proposals]

2008-02-29 Thread M R Swami Reddy
 --- Begin Message ---

Hi Joseph,

> The following target architectures have seen no test results posted in
> the past year: arc, c4x (as listed above), crx, iq2000, mt, pdp11,
> score, stormy16, vax.

Please do not deprecate the "crx" target. We are actively working on to update 
this target and post test results soon.



Thanks,
Swami

--- End Message ---


build error from trunk sources

2008-09-01 Thread M R Swami Reddy

Hello,

I am trying the build the crx-elf target gcc compiler tools from gcc trunk 
sources, but the below error message displayed.


Could any one suggest the reason for build fail?

===Error log
In file included from /trunk/gcc/sel-sched-dump.c:37:
/trunk/gcc/sel-sched-ir.h:93: error: expected specifier-qualifier-list before 
âds_tâ
/trunk/gcc/sel-sched-ir.h:137: error: expected specifier-qualifier-list before 
âds_tâ
/trunk/gcc/sel-sched-ir.h:239: error: expected specifier-qualifier-list before 
âdeps_tâ
/trunk/gcc/sel-sched-ir.h:280: error: expected specifier-qualifier-list before 
âdeps_tâ
/trunk/gcc/sel-sched-ir.h:369: error: expected â=â, â,â, â;â, âasmâ or 
â__attribute__â before âsched_lists_poolâ

/trunk/gcc/sel-sched-ir.h: In function â_list_allocâ:
/trunk/gcc/sel-sched-ir.h:374: warning: implicit declaration of function 
âpool_allocâ
/trunk/gcc/sel-sched-ir.h:374: error: âsched_lists_poolâ undeclared (first use 
in this function)

===

Thanks
Swami




gcc trunk - build issue

2008-09-02 Thread M R Swami Reddy

Hello,

I am building the gcc tools using the gcc trunk sources and my configuration is:
=
/gcc/trunk/configure --build=i686-pc-linux-gnu --host=i686-pc-mingw32 
--prefix=/release  --target=crx-elf --disable-nls --enable-languages=c,c++ 
--disable-libssp --with-mpfr=/scratch/mpfr-2.3.1/rel --with-gmp=/gmp/gmp-4.2.3/rel

===

But the above configuration itself failed with below error:
===
#ifdef __cplusplus
extern "C" void std::exit (int) throw (); using std::exit;
configure: exit 1


I have the i686-pc-mingw32 tools in PATH as:
===
> i686-pc-mingw32-gcc -v
  Thread model: win32
  gcc version 3.4.5 (mingw special)

Can any one suggest the reason for failure?

Thanks
Sawmi



build failed with gcc trunk on cygwin host

2008-09-04 Thread M R Swami Reddy

Hello,

I am trying to build the gcc tools on cygwin host. But the build failed with 
below errors:


$ gcc  -I../../../trunk/libdecnumber -I.  -g -O2 -W -Wall -Wwrite-strings -Wstr
ict-prototypes -Wmissing-prototypes -Wold-style-definition -Wmissing-format-att
ribute -Wcast-qual -pedantic -Wno-long-long  -I../../../trunk/libdecnumber -I.
 -c ../../../trunk/libdecnumber/dpd/decimal128.c
 In file included from ../../../trunk/libdecnumber/decNumber.h:42,
  from ../../../trunk/libdecnumber/dpd/decimal128.c:47:
  ../../../trunk/libdecnumber/decContext.h:59:61: gstdint.h: No 
such file or directory


$ gcc -v
Thread model: posix
gcc version 3.4.4 (cygming special, gdc 0.12, using dmd 0.125)
===

Could you please advise the reason for build for the above build fail. Thank 
you.

Thanks
Swami