[VTA merge] Some dwarf problems

2009-09-21 Thread Hariharan
Hi Alexandre, I was having some trouble with dwarf sections in picochip port. I am not a dwarf expert, but when i looked at the changes in r151312, file dwarf2out.c, function dwarf2out_var_location on line 17965, we have sprintf (loclabel, "%s-1", last_label); ... What is la

Re: [VTA merge] Some dwarf problems

2009-09-21 Thread Hariharan
Thanks for the pointer, Jakub. Cheers Hari Jakub Jelinek wrote: On Mon, Sep 21, 2009 at 05:04:27PM +0100, Hariharan wrote: Hi Alexandre, I was having some trouble with dwarf sections in picochip port. I am not a dwarf expert, but when i looked at the changes in r151312, file

Re: fbranch-probabilities bug

2009-01-08 Thread Hariharan
sn't very clear. You need to use -fprofile-use - the typical usage scenario is to compile with -fprofile-generate to build an executable to do profile collection, and then compile with -fprofile-use to build optimized code using the profile data. Seongbae On Thu, Jan 8, 2009 at 6:30 AM, Harihar

Re: fbranch-probabilities bug

2009-01-09 Thread Hariharan
Seongbae Park ??? ??? wrote: On Thu, Jan 8, 2009 at 10:11 AM, Hariharan wrote: Hi Seongbae, Does that mean that someone cant use the profile just to annotate branches (and get better code by that), without having to get the additional baggage of "unroll-loops", "peel-loops&quo

GCC Profile base optimizations using simulator profile

2009-01-21 Thread Hariharan
Hi, I just wanted to see if there are others out there who get profile information from a simulator and feed that information back for GCC's PBO, in the .gcda format. I had tried this on picoChip, by changing the instrumentation code in GCC for fprofile-arcs and got edge profile working quite

Inline limits

2009-01-26 Thread Hariharan
Hi, I ran into some code-size/stack size bloat using -Os for a piece of code. This seemed to happen only when certain single call-site functions are defined "static" and not otherwise. On investigating further on this, i see that the inline_functions_called_once seems to rely only on "cgraph_c

scheduler dependency bug in the presence of var_location and unspec_volatile

2010-04-28 Thread Hariharan
Hello, I saw a bug in sched1 where it reorders two unspec_volatile instructions. These instructions do port communications (from the same port) and doing them in the wrong order is unacceptable. I digged a bit deeper to see what is happening. Going into sched1, the relevant bit of basic block

Machine description question

2010-05-12 Thread Hariharan
Hello all, Picochip has communication instructions that allow one array element to pass data to another. There are 3 such instructions PUT/GET/TSTPORT. Currently, all three of these use UNSPEC_VOLATILE side-effect expressions to make sure they don't get reordered. But, i wonder if it is an ove

delay branch bug?

2010-05-24 Thread Hariharan
Hello all, I found something a little odd with delay slot scheduling. If i had the following bit of code (Note that "get" builtin functions in picochip stand for port communication) int mytest () { int a[5]; int i; for (i = 0; i < 5; i++) { a[i] = (int) getctrlIn(); } switch (a[3]) {

Re: [Bug rtl-optimization/44013] VTA produces wrong code

2010-06-01 Thread Hariharan
Hi Jakub, I have not had any response from Alexandre on this yet and i haven't had much luck in mailing list either (http://gcc.gnu.org/ml/gcc/2010-04/msg00917.html). Is there anyone else who is familiar with VTA who could help? Thanks Hari jakub at gcc dot gnu dot org wrote:

Re: New picoChip port and maintainers

2008-03-12 Thread Hariharan
Thanks to the GCC SC for accepting the picochip port. Regards Hari David Edelsohn wrote: I am pleased to announce that the GCC Steering Committee has accepted the picoChip port for inclusion in GCC and appointed Hariharan Sandanagobalane and Daniel Towner as port maintainers. The

Re: New picoChip port and maintainers

2008-06-09 Thread Hariharan
usion in GCC and appointed Hariharan Sandanagobalane and Daniel Towner as port maintainers. The initial patch needs approval from a GCC GWP maintainer before it may be committed. Please join me in congratulating Hari and Daniel on their new role. Please update your listing in the MAINTA

Re: Optimising for size

2008-07-15 Thread Hariharan
Hi Joel, I ran into a similar problem moving from 4.2.2 to 4.3.0. I looked a bit into it and found that 4.3 compiler inlines more aggressively than 4.2.x compiler. The reason was that the following two lines were removed from opts.c set_param_value ("max-inline-insns-single", 5);

size of array "" is too large

2008-07-17 Thread Hariharan
Hello, I see that in x86 GCC, you can define a structure with struct trial { long a[10]; }; Whereas in a 16-bit target (picochip), you cannot define, struct trial { long a[1]; }; In the case above, i get a "size of array ‘a’ is too large" error. The thing that took me by surp

unsigned comparison warning

2008-07-29 Thread Hariharan
Hello, I found something rather strange with the unsigned comparison warnings in GCC. If i had, unsigned char a;

Re: unsigned comparison warning

2008-07-30 Thread Hariharan
Thanks Ian. I will raise this in gcc-help mailing list. Cheers Hari Ian Lance Taylor wrote: Hariharan <[EMAIL PROTECTED]> writes: I found something rather strange with the unsigned comparison warnings in GCC. This is the wrong mailing list. The mailing list gcc@gcc.gnu.org is f

fbranch-probabilities bug

2009-01-08 Thread Hariharan Sandanagobalane
Hi Seongbae, I was doing some work on profiling for picochip, when i noticed what looks to me like a bug. It looks to me that using fbranch-probabilities on the commandline (after a round of profile-generate or profile-arcs) would just not work on any target. Reason.. Coverage.c:1011 if (f

pr39339 - invalid testcase or SRA bug?

2009-03-10 Thread Hariharan Sandanagobalane
Hi, Since r144598, pr39339.c has been failing on picochip. On investigation, it looks to me that the testcase is illegal. Relevant source code: struct C { unsigned int c; struct D { unsigned int columns : 4; unsigned int fore : 9; unsigned int back : 9; unsigned int fragme

Re: pr39339 - invalid testcase or SRA bug?

2009-03-10 Thread Hariharan Sandanagobalane
Yes, if i change the structure to bring the 3 1-bit members forward, to avoid padding, the testcase does pass. Thanks to both of you for your help. Cheers Hari Jakub Jelinek wrote: On Tue, Mar 10, 2009 at 01:44:11PM +, Hariharan Sandanagobalane wrote: Since r144598, pr39339.c has been

Re: fbranch-probabilities bug

2009-03-11 Thread Hariharan Sandanagobalane
e-use to build optimized code using the profile data. Seongbae On Thu, Jan 8, 2009 at 6:30 AM, Hariharan Sandanagobalane wrote: Hi Seongbae, I was doing some work on profiling for picochip, when i noticed what looks to me like a bug. It looks to me that using fbranch-probabilities on the comman

Re: Machine description question

2010-05-12 Thread Hariharan Sandanagobalane
vent some wrong optimizations. Cheers, Bingfeng -Original Message- From: gcc-ow...@gcc.gnu.org [mailto:gcc-ow...@gcc.gnu.org] On Behalf Of Hariharan Sent: 12 May 2010 11:18 To: gcc@gcc.gnu.org Subject: Machine description question Hello all, Picochip has communication instructions

Re: Machine description question

2010-05-13 Thread Hariharan Sandanagobalane
that i was using for GET, which was inside a loop, was being hoisted out of the loop by the loop optimizer. I guess i should have seen this coming, since unspec is just "machine-specific" operation and the optimizer probably rightly assumes that multiple execution of this

Re: Machine description question

2010-05-14 Thread Hariharan Sandanagobalane
ll porivate and not in mainline. Cheers, Bingfeng -Original Message- From: Hariharan Sandanagobalane [mailto:harihar...@picochip.com] Sent: 13 May 2010 10:17 To: Bingfeng Mei Cc: gcc@gcc.gnu.org Subject: Re: Machine description question The patterns for PUT/GET were ; Scalar Pu

Re: Machine description question

2010-05-14 Thread Hariharan Sandanagobalane
instruction that should be moved but not? Cheers, Bingfeng -Original Message- From: Hariharan Sandanagobalane [mailto:harihar...@picochip.com] Sent: 14 May 2010 12:26 To: Bingfeng Mei Cc: gcc@gcc.gnu.org Subject: Re: Machine description question Hi Bengfeng, Changing my instruction patterns

Re: delay branch bug?

2010-05-24 Thread Hariharan Sandanagobalane
Jeff Law wrote: On 05/24/10 05:46, Hariharan wrote: Hello all, I found something a little odd with delay slot scheduling. If i had the following bit of code (Note that "get" builtin functions in picochip stand for port communication) int mytest () { int a[5]; int i; for (i

GCC vector extensions

2010-11-04 Thread Hariharan Sandanagobalane
Hello all, Is it possible to use rtl vector patterns like vec_extractm, vec_setm from C code? It looks like C subscipting for vector variables was allowed at some point and then removed. So, can these rtl patterns only be used from languages other than C? Of course, i can use these in target

Re: GCC vector extensions

2010-11-05 Thread Hariharan Sandanagobalane
Hi Ian, Thanks for your help. I switched to mainline and the vector extract works a treat. When i tried vector set, it was still generating suboptimal code. Is this bit of code still work in progress? Cheers Hari On 04/11/10 19:23, Ian Lance Taylor wrote: Hariharan Sandanagobalane writes

Steering Committee

2012-08-17 Thread Hariharan Sandanagobalane
Dear SC members, I used to maintain the picochip port of GCC, but I have not been active on the picochip port over the last 8 months. This is unlikely to change in the future, so I would like my name to be removed from the maintainers list as picochip maintainer. I am still actively working on GCC,

Stack parameter - pass by value - frame usage

2007-09-13 Thread Hariharan Sandanagobalane
Hello, I looked at an inefficient code sequence for a simple program using GCC's picochip port (not yet submitted to mainline). Basically, a program like long carray[10]; void fn (long c, int i) { carray[i] = c; } produces good assembly code. But, if i were to do struct complex16 { int re,i

Re: Stack parameter - pass by value - frame usage

2007-09-21 Thread Hariharan Sandanagobalane
Ian Lance Taylor wrote: Hariharan Sandanagobalane <[EMAIL PROTECTED]> writes: I looked at an inefficient code sequence for a simple program using GCC's picochip port (not yet submitted to mainline). Are you working with mainline sources? I was not. I tried the same with gcc

Profile information - CFG

2007-09-27 Thread Hariharan Sandanagobalane
Hello, I am implementing support for PBO on picochip port of GCC (not yet submitted to mainline). I see that GCC generates 2 files, xx.gcno and xx.gcda, containing the profile information, the former containing the flow graph information(compile-time) and later containing the edge profile in

Re: Profile information - CFG

2007-10-05 Thread Hariharan Sandanagobalane
Seongbae Park (???, ???) wrote: On 9/27/07, Hariharan Sandanagobalane <[EMAIL PROTECTED]> wrote: Hello, I am implementing support for PBO on picochip port of GCC (not yet submitted to mainline). I see that GCC generates 2 files, xx.gcno and xx.gcda, containing the profile informatio

VLIW scheduling and delayed branch

2007-12-08 Thread Hariharan Sandanagobalane
Hi, I am trying to enable delayed branch scheduling on our port of Gcc for picochip (16-bit VLIW DSP). I understand that delayed-branch is run as a seperate pass after the DFA scheduling is done. We basically depend on the TImode set on the cycle-start instructions to decide what instructions

Re: VLIW scheduling and delayed branch

2007-12-10 Thread Hariharan Sandanagobalane
Hi thomas, Thanks for your reply. A couple of questions below. Thomas Sailer wrote: Has anyone faced a similar problem before? Are there targets for which both VLIW and DBR are enabled? Perhaps ia64? I did something similar a few months ago. What was your target? Is the target code available

vliw scheduling - TImode bug?

2007-12-19 Thread Hariharan Sandanagobalane
Hello, I see quite a few instances when i get the following RTL. A conditional branch, followed by a BASIC_BLOCK note, followed by a non-TImode instruction. Theoretically, i should be allowed to package the non-TI instruction along with the conditional branch, but doing so seems to be produce