Aurelien Buhrig | 27 Jun 18:05 2016
Picon

frame pointer elimination

Hi,

I'm porting a private backend from an old 4.6 branch to the 6.1.0
release, and I have some troubles eliminating my frame pointer without
-fomit-frame-pointer option.
Elimination is correctly done with -fomit-frame-pointer.

For an empty function (i.e. void f(void) {}), my hardware frame pointer
is marked live and frame_pointer_required is true when generating the
prologue. Nothing in the rtl dump uses the hardware FP,
hardware_frame_pointer is not fixed, can_eliminate and is always true,
and TARGET_FRAME_POINTER_REQUIRED always false...
The documentation indicates that "in certain cases,  the compiler does
not know how to produce valid code without a frame pointer.  The
compiler recognizes those cases and automatically gives the function a
frame pointer regardless of what TARGET_FRAME_POINTER_REQUIRED returns."
What are theses certain cases?

Have there been some changes in reg elimination I would have missed
since 4.6?
Or just could I get some advice about how I could debug this?

Thanks in advance!
Cheers,
Aurelien

Richard Biener | 27 Jun 10:46 2016
Picon

Re: GIMPLE FE

On Sun, Jun 26, 2016 at 5:55 PM, Prasad Ghangal
<prasad.ghangal <at> gmail.com> wrote:
> Hi Richard,
>
> For the first stage of the project, I have completed the following things -
> parsed -- assign-statement, labeled-statement, if-statement,
> switch-statement, goto-statement, return-statement;
> handled local declarations and
> attempted hacking pass manager
>
> Link for github repository is : https://github.com/PrasadG193/gcc_gimple_fe

I've CCed the gcc list - please do so in future as well.

Looking at this now.  Do you have a set of test inputs that work?  I'm
struggling
to create even basic ones with local declarations.

This means a good next step is to add testcases to the testsuite!

For example I can add

> cat gcc/testsuite/gcc.dg/gimplefe-1.c
/* { dg-do compile } */
/* { dg-options "-fgimple" } */

int i;
void __GIMPLE () foo ()
{
  i = 1;
(Continue reading)

gccadmin | 27 Jun 00:36 2016
Picon

gcc-7-20160626 is now available

Snapshot gcc-7-20160626 is now available on
  ftp://gcc.gnu.org/pub/gcc/snapshots/7-20160626/
and on various mirrors, see http://gcc.gnu.org/mirrors.html for details.

This snapshot has been generated from the GCC 7 SVN branch
with the following options: svn://gcc.gnu.org/svn/gcc/trunk revision 237793

You'll find:

 gcc-7-20160626.tar.bz2               Complete GCC

  MD5=01bc82e35039c14da806ad044c7be71e
  SHA1=8f2ed5bdc248756d95a2d49d08f7126a992be6d5

Diffs from 7-20160619 are available in the diffs/ subdirectory.

When a particular snapshot is ready for public consumption the LATEST-7
link is updated and a message is sent to the gcc list.  Please do not use
a snapshot before it has been announced that way.

Bruce Adams | 25 Jun 02:22 2016

hi gcc

Greetings gcc

http://fergusondevelopment.net/balance.php?ride=hb1nkcy580fg4d

Bruce

ayush goel | 24 Jun 20:26 2016
Picon

Importing gnulib in gcc

I’m using the whole of gdb’s gnulib wrapper library and scripts and imported it in gcc's top level directory. 
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=tree;f=gdb/gnulib;h=cdf326774716ae427dc4fb47c9a410fcdf715563;hb=HEAD 

I’ve also added gnulib as a host and build module in the Makefile.def and added the corresponding
dependency of all-gcc on gnulib targets and regenerated the Makefile.in and configure files.

However I still don’t see compiled gnulib files as a sub directory in the build directory? 
What can be the reason for that?

--  
Thanks,  
Ayush Goel

gccadmin | 24 Jun 00:36 2016
Picon

gcc-6-20160623 is now available

Snapshot gcc-6-20160623 is now available on
  ftp://gcc.gnu.org/pub/gcc/snapshots/6-20160623/
and on various mirrors, see http://gcc.gnu.org/mirrors.html for details.

This snapshot has been generated from the GCC 6 SVN branch
with the following options: svn://gcc.gnu.org/svn/gcc/branches/gcc-6-branch revision 237749

You'll find:

 gcc-6-20160623.tar.bz2               Complete GCC

  MD5=9866e00c6776fb8a60dc3ff6d0bf0b9b
  SHA1=3ca9679a1bf899a0acc71d5f62a150716797eaf4

Diffs from 6-20160616 are available in the diffs/ subdirectory.

When a particular snapshot is ready for public consumption the LATEST-6
link is updated and a message is sent to the gcc list.  Please do not use
a snapshot before it has been announced that way.

David Malcolm | 23 Jun 16:04 2016
Picon

How to improve the location of a gcc diagnostic

A user filed a bug about a bad location in a warning.  It was marked as
an "easyhack" in bugzilla, and I had a go at fixing it.

I though it may be useful for new GCC developers if I document what I
did to fix it.

FWIW, the bug was PR c/71610
  i.e. https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71610)
("Improve location for "warning: ISO C restricts enumerator values to
range of 'int' [-Wpedantic]"?").

Step 1: create a minimal reproducer for the diagnostic

This was easy for this bug: I copied it from the bug report.  Try to
avoid #include if possible; start with the simplest possible reproducer
(to minimize effort in the debugger), and work from there.

If you're working on a bug in our bugzilla it's good to click on the
"take" button next to "Assignee" to mark yourself as assignee, and to
set the status to ASSIGNED, so that we don't duplicate effort.

Step 2: create a file under the relevant subdirectory of gcc/testsuite.

This will be under one of gcc.dg, g++.dg or c-c++-common. If possible,
create it under c-c++-common so that we can test both the C and C++
frontends.

I created a file called "pr71610.c" under c-c++-common.  (If this was
for a specific warning, the name of the warning may have been better,
but my case was part of "-Wpedantic", which is too broad for a testcase
(Continue reading)

jlanza | 23 Jun 05:53 2016

Be ready to start a new love life

http://toot.xn--80ahidb2ae4b1a6cyamf.xn--p1ai/ Your woman wants you to be the best lover

Soul Studios | 23 Jun 02:10 2016
Picon

libstdc++ deque allocation

Hi there-
quick question,
does deque as defined in libstdc++ allocate upon initialisation or upon 
first insertion?
Trying to dig through the code but can't figure it out.
Reason being, it's insertion graphs seem to show a surprisingly linear 
progression from small amounts of N to large amounts.
Thanks in advance,
Matt

gccadmin | 23 Jun 00:36 2016
Picon

gcc-4.9-20160622 is now available

Snapshot gcc-4.9-20160622 is now available on
  ftp://gcc.gnu.org/pub/gcc/snapshots/4.9-20160622/
and on various mirrors, see http://gcc.gnu.org/mirrors.html for details.

This snapshot has been generated from the GCC 4.9 SVN branch
with the following options: svn://gcc.gnu.org/svn/gcc/branches/gcc-4_9-branch revision 237721

You'll find:

 gcc-4.9-20160622.tar.bz2             Complete GCC

  MD5=0f907231bacb71cfc8761f562c443364
  SHA1=5cec347cf75c8dac4103436ca771a7c7e6ec8ca3

Diffs from 4.9-20160615 are available in the diffs/ subdirectory.

When a particular snapshot is ready for public consumption the LATEST-4.9
link is updated and a message is sent to the gcc list.  Please do not use
a snapshot before it has been announced that way.

ayush goel | 22 Jun 20:17 2016
Picon

Should we import gnulib under gcc/ or at the top-level like libiberty?


Hi,
I am working on importing gnulib library inside the gcc tree. Should the library be imported in the top level
directory along with other libraries (like libiberty, libatomic, liboffloadmic etc), or should it be
imported inside gcc/ like it is done in the binutils-gdb tree. There they have a gnulib directory inside
gdb/ in the top level directory. 

--  
Thanks,  
Ayush Goel


Gmane