Gerald Pfeifer | 27 Feb 01:01 2015

Sandra Loosemore appointed docs maintainer

For those of you following gcc-patches this may not be the most
terrible surprise given what she has been contributing the last
couple of months alone.  That said....

I am happy to announce Sandra Loosemore as docs maintainer.

Thanks for all the improvements you have contributed so far,
Sandra, and we are looking forward towards a continuing and
fruitful collaboration.

Congratulations and Happy Editing!

Gerald

PS: For those of you wondering why MAINTAINERS reads "docs co-maintainer", 
that is to emphasize that all maintainers can and should and are most 
welcome to contribute and refine documentation in their respective areas.  

gccadmin | 26 Feb 23:36 2015
Picon

gcc-4.8-20150226 is now available

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

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

You'll find:

 gcc-4.8-20150226.tar.bz2             Complete GCC

  MD5=acb4c6f30dc24c1587f2817a70a79b47
  SHA1=0941e552c7fbda762b1dc2c1b83e0eb105802658

Diffs from 4.8-20150219 are available in the diffs/ subdirectory.

When a particular snapshot is ready for public consumption the LATEST-4.8
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.

gccadmin | 25 Feb 23:36 2015
Picon

gcc-4.9-20150225 is now available

Snapshot gcc-4.9-20150225 is now available on
  ftp://gcc.gnu.org/pub/gcc/snapshots/4.9-20150225/
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 220992

You'll find:

 gcc-4.9-20150225.tar.bz2             Complete GCC

  MD5=13644c34c38387517b87ca054e04cf6b
  SHA1=a1829c8802e613789e2c30705ebca09d63eaac75

Diffs from 4.9-20150218 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.

Jeff Law | 25 Feb 21:36 2015
Picon

MPX runtime inclusion for GCC 5


So the steering committee has agreed to include the MPX runtime in GCC. 
  The runtime bits are a necessary component to actually make use of the 
MPX capabilities.

GCC is a downstream consumer of the core runtime and the canonical 
repository for the wrapper subpart of that runtime.

The question is whether or not to try and get the MPX runtime integrated 
for GCC 5 or wait until the next stage 1.

I'm hesitant to add at this stage, but if we could limit it to only 
building on host/target combinations where we know it works, then 
perhaps including it might make sense as it'll be easier for developers 
who want to take advantage of MPX to get everything they need from the 
GCC release rather than stitching  things together from multiple locations.

Jakub, Joseph & Richi have the final say here for inclusion in GCC 5.

Jeff

Jeff Law | 25 Feb 21:29 2015
Picon

Announcing Kirill Yukhin as x86 vector ISA extension maintainer


I'm pleased to announce that Kirill Yukhin has been appointed as the 
maintainer for the vector ISA extensions for the x86 port.

Kirill, if you could add yourself to the MAINTAINERS file for the 
additional role, it would be appreciated.

Thanks,
Jeff

Jeff Law | 25 Feb 21:24 2015
Picon

Announcing Ilya Enkovich as bounded pointer/MPX maintainer and MPX runtime maintainer

I'm pleased to announce Ilya Enkovich has been appointed as the 
maintainer for the generic bounded pointer infrastructure, the MPX 
implementation of bounded pointers and the MPX runtime for GCC.

Ilya, if you could add yourself to the MAINTAINERS file in the 
additional roles, it would be appreciated.

I believe you have a patch or two to self-approve ;-)

We'll discuss inclusion of the MPX runtime for GCC 5 separately with the 
release managers.  We may be too late in the game to make that happen. 
So please don't commit the MPX runtime bits yet.

Jeff

Benedikt Huber | 24 Feb 18:53 2015

LTO problems with -fprofile-generate (aarch64)

Hi,

I have problems compiling xalan as part of spec2006 benchmark for aarch64, both native and cross.
The issue arises when both -flto and -fprofile-generate are enabled during LTO.
Compiling with the same flags for x86 has no problem.
Also other projects for aarch64 compile with -flto and -fprofile-generate without problem.

lto1: internal compiler error: in add_symbol_to_partition_1, at lto/lto-partition.c:210

 204   /* Ensure that SAME_COMDAT_GROUP lists all allways added in a group.  */
 205   if (node->same_comdat_group)
 206     for (node1 = node->same_comdat_group;
 207          node1 != node; node1 = node1->same_comdat_group)
 208       if (!node->alias)
 209         {
 210           bool added = add_symbol_to_partition_1 (part, node1);
 211           gcc_assert (added);
 212         }
 213   return true;
 214 }

Is this a known issue? How can I debug this? Do I need additional options?
Any hints?

I get this error:

lto1: internal compiler error: in add_symbol_to_partition_1, at lto/lto-partition.c:210
0x484349 add_symbol_to_partition_1
        /home/bhuber/sandbox/gcc/toolchain-build-scripts/buildroot/../src/gcc/gcc/lto/lto-partition.c:210
0x48442d add_symbol_to_partition_1
(Continue reading)

Georg-Johann Lay | 24 Feb 12:41 2015
Picon

How to update reg_dead notes

Hi, in order to fix PR64331 I tried to implement new target-specific passes 
whose sole purpose is to recompute REG_DEAD notes.

The avr BE relies on correct dead notes which are used in 
avr.c:reg_unused_after which uses dead_or_set_p.  avr BE needs correct dead 
notes in ADJUST_INSN_LENGTH, get_attr_length, get_attr_min_length, etc.

After trying for more than one day I am really frustrated; each approach ended 
up in seg_faults somewhere in df.

Following the source comments in df-core.c, recomputing dead notes should be as 
easy as

   df_note_add_problem ();
   df_analyze ();

in the execute() method of the new pass.

As this (and many many other tries using df_scan_alloc, df_scan_blocks 
df_finish_pass, df_insn_rescan_all, etc.) always crashes the compiler, I must 
do something completely wrong...

Could you give me some advice on correct usage of df or even more preferred 
point me to a comprehensible documentation of df which is more complete than in 
df-core.c?

Internals don't treat df, and the source comments are not really helpful, e.g. 
the complete documentation of df_analyze is /* Analyze dataflow info.  */.  Not 
a single word about prerequisites (except that it must run after df_init and 
before df_finish and needs correct cfg).
(Continue reading)

Joseph Myers | 23 Feb 22:24 2015

Re: target macro removal (fwd)

I sent this discussion of how one might go about large-scale target macro 
removal in response to an off-list enquiry last month, but it may be of 
more general interest.

-- 
Joseph S. Myers
joseph <at> codesourcery.com

---------- Forwarded message ----------
Date: Tue, 20 Jan 2015 18:04:27 +0000 (UTC)
From: Joseph Myers <joseph <at> codesourcery.com>
Subject: Re: target macro removal

Say you want to convert all (or nearly all) 680 (or thereabouts) target 
macros into hooks, and have several person-months to spend on this 
conversion.  (Much the same applies even if dealing with smaller subsets 
such as all target macros used in front ends.)  This won't get 
target-independence in code that no longer needs to include tm.h - in 
particular, option handling involves a global enumeration of all options 
and brings defines relating to one part of the compiler into other parts 
of the compiler (similarly, insn-* files would also need considering) - 
but it's a reasonable starting point and we can discuss further 
target-dependence removal after the target macro removal.

Although this would involve 680 conversion patches (except where it makes 
sense to convert a set of closely related target macros at once), it 
should not need to involve 680 manually-written patches.  Rather, if doing 
a large-scale target macro removal project I think a good starting point 
would be to write a set of robust Python scripts that (a) parse the 
structure of GCC source code at the preprocessor level (so understanding, 
(Continue reading)

gccadmin | 22 Feb 23:36 2015
Picon

gcc-5-20150222 is now available

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

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

You'll find:

 gcc-5-20150222.tar.bz2               Complete GCC

  MD5=1c68fe43b79a065a70d9612c34761ee7
  SHA1=4c82cb1f3f0f5cc5222d9f078c4bc42741c681eb

Diffs from 5-20150215 are available in the diffs/ subdirectory.

When a particular snapshot is ready for public consumption the LATEST-5
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.

Steve Ellcey | 21 Feb 01:56 2015
Steve Ellcey <sellcey <at> imgtec.com>

Subject: unfused fma question

unfused fma question

I have a question about *unfused* fma instructions.  MIPS has processors
with both fused and unfused multiple and add instructions and for fused
madd's it is clear what to do; define 'fma' instructions in the md file
and let convert_mult_to_fma decide whether or not to use them.

But for non-fused multiply and adds, it is less clear.  One could
define '*madd' instructions with the plus and mult operator and
let the peephole optimizer convert normal expressions that have 
these operators into (unfused) instructions.  This is what MIPS
currently does.

Or one could change convert_mult_to_fma to add a check if fma is fused
vs. non-fused in addition to the check for the flag_fp_contract_mode in
order to decide whether to convert expressions into an fma and then
define fma instructions in the md file.

I was wondering if anyone had an opinion about the advantages or
disadvantages of these two approaches.

Steve Ellcey
sellcey <at> imgtec.com


Gmane