Any news of this bug

2009-03-29 Thread Bastien ROUCARIES
Could we help with this bug?

Any news of this bug ?

Regards

Bastien
-- 

"ROUCARI\xC3\x88S Bastien"
roucaries.bastien+deb...@gmail.com
---
DO NOT WRITE TO roucaries.bastien+blackh...@gmail.com OR BE BLACKLISTED


-- 
To UNSUBSCRIBE, email to debian-gcc-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org



[Bug c/456] constant expressions constraints (gcc.dg/c90-const-expr-1)

2009-03-29 Thread jsm28 at gcc dot gnu dot org


--- Comment #16 from jsm28 at gcc dot gnu dot org  2009-03-29 18:14 ---
Subject: Bug 456

Author: jsm28
Date: Sun Mar 29 18:13:43 2009
New Revision: 145254

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=145254
Log:
PR c/456
PR c/5675
PR c/19976
PR c/29116
PR c/31871
PR c/35198

fixincludes:
* inclhack.def (glibc_tgmath): New fix.
* fixincl.x: Regenerate.
* tests/base/tgmath.h: New.

gcc:
* builtins.c (fold_builtin_sincos): Build COMPOUND_EXPR in
void_type_node.
(fold_call_expr): Return a NOP_EXPR from folding rather than the
contained expression.
* c-common.c (c_fully_fold, c_fully_fold_internal, c_save_expr):
New.
(c_common_truthvalue_conversion): Use c_save_expr.  Do not fold
conditional expressions for C.
(decl_constant_value_for_optimization): Move from
decl_constant_value_for_broken_optimization in c-typeck.c.  Check
whether optimizing and that the expression is a VAR_DECL not of
array type instead of doing such checks in the caller.  Do not
check pedantic.  Call gcc_unreachable for C++.
* c-common.def (C_MAYBE_CONST_EXPR): New.
* c-common.h (c_fully_fold, c_save_expr,
decl_constant_value_for_optimization): New prototypes.
(C_MAYBE_CONST_EXPR_PRE, C_MAYBE_CONST_EXPR_EXPR,
C_MAYBE_CONST_EXPR_INT_OPERANDS, C_MAYBE_CONST_EXPR_NON_CONST,
EXPR_INT_CONST_OPERANDS): Define.
* c-convert.c (convert): Strip nops from expression.
* c-decl.c (groktypename): Take extra parameters expr and
expr_const_operands.  Update call to grokdeclarator.
(start_decl): Update call to grokdeclarator.  Add statement for
expressions used in type of decl.
(grokparm): Update call to grokdeclarator.
(push_parm_decl): Update call to grokdeclarator.
(build_compound_literal): Add parameter non_const and build a
C_MAYBE_COSNT_EXPR if applicable.
(grokdeclarator): Take extra parameters expr and
expr_const_operands.  Track expressions used in declaration
specifiers and declarators.  Fold array sizes and track whether
they are constant expressions and whether they are integer
constant expressions.
(parser_xref_tag): Set expr and expr_const_operands fields in
return value.
(grokfield): Update call to grokdeclarator.
(start_function): Update call to grokdeclarator.
(build_null_declspecs): Set expr and expr_const_operands fields in
return value.
(declspecs_add_type): Handle expressions in typeof specifiers.
* c-parser.c (c_parser_declspecs): Set expr and
expr_const_operands fields for declaration specifiers.
(c_parser_enum_specifier): Likewise.
(c_parser_struct_or_union_specifier): Likewise.
(c_parser_typeof_specifier): Likewise.  Update call to
groktypename.  Fold expression as needed.  Return expressions with
type instead of adding statements.
(c_parser_attributes): Update calls to c_parser_expr_list.
(c_parser_statement_after_labels): Fold expression before passing
to objc_build_throw_stmt.
(c_parser_condition): Fold expression.
(c_parser_asm_operands): Fold expression.
(c_parser_conditional_expression): Use c_save_expr.  Update call
to build_conditional_expr.
(c_parser_alignof_expression): Update call to groktypename.
(c_parser_postfix_expression): Preserve C_MAYBE_CONST_EXPR as
original_code.  Fold expression argument of va_arg.  Create
C_MAYBE_CONST_EXPR to preserve side effects of expressions in type
argument to va_arg.  Update calls to groktypename.  Fold array
index for offsetof.  Verify that first argument to
__builtin_choose_expr has integer type.
(c_parser_postfix_expression_after_paren_type): Update calls to
groktypename and build_compound_literal.  Handle expressions with
side effects in type name.
(c_parser_postfix_expression_after_primary): Update call to
c_parser_expr_list.  Set original_code for calls to
__builtin_constant_p.
(c_parser_expr_list): Take extra parameter fold_p.  Fold
expressions if requested.
(c_parser_objc_type_name): Update call to groktypename.
(c_parser_objc_synchronized_statement): Fold expression.
(c_parser_objc_receiver): Fold expression.
(c_parser_objc_keywordexpr): Update call to c_parser_expr_list.
(c_parser_omp_clause_num_threads, c_parser_omp_clause_schedule,
c_parser_omp_atomic, c_parser_omp_for_loop): Fold expressions.
* c-tree.h (CONSTRUCTOR_NON_CONST): Define.
(struct c_typespec): Add elements expr and expr_const_operands.
(struct c_declspecs): Add elements expr and expr_const_operands.
(

[Bug c/456] constant expressions constraints (gcc.dg/c90-const-expr-1)

2009-03-29 Thread jsm28 at gcc dot gnu dot org


--- Comment #17 from jsm28 at gcc dot gnu dot org  2009-03-29 18:16 ---
Fixed for 4.5.


-- 

jsm28 at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED
   Target Milestone|--- |4.5.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=456

--- You are receiving this mail because: ---
You are on the CC list for the bug, or are watching someone who is.


-- 
To UNSUBSCRIBE, email to debian-gcc-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org



Processing of gcc-4.4_4.4-20090329-1_amd64.changes

2009-03-29 Thread Archive Administrator
gcc-4.4_4.4-20090329-1_amd64.changes uploaded successfully to localhost
along with the files:
  gcc-4.4_4.4-20090329-1.dsc
  gcc-4.4_4.4-20090329.orig.tar.gz
  gcc-4.4_4.4-20090329-1.diff.gz
  gcc-4.4-source_4.4-20090329-1_all.deb
  libstdc++6-4.4-doc_4.4-20090329-1_all.deb
  gcc-4.4-locales_4.4-20090329-1_all.deb
  gcc-4.4-base_4.4-20090329-1_amd64.deb
  libgcc1_4.4-20090329-1_amd64.deb
  libgcc1-dbg_4.4-20090329-1_amd64.deb
  lib32gcc1_4.4-20090329-1_amd64.deb
  lib32gcc1-dbg_4.4-20090329-1_amd64.deb
  libgomp1_4.4-20090329-1_amd64.deb
  libgomp1-dbg_4.4-20090329-1_amd64.deb
  lib32gomp1_4.4-20090329-1_amd64.deb
  lib32gomp1-dbg_4.4-20090329-1_amd64.deb
  cpp-4.4_4.4-20090329-1_amd64.deb
  protoize_4.4-20090329-1_amd64.deb
  fixincludes_4.4-20090329-1_amd64.deb
  libmudflap0-4.4-dev_4.4-20090329-1_amd64.deb
  libmudflap0_4.4-20090329-1_amd64.deb
  libmudflap0-dbg_4.4-20090329-1_amd64.deb
  lib32mudflap0_4.4-20090329-1_amd64.deb
  lib32mudflap0-dbg_4.4-20090329-1_amd64.deb
  libssp0_4.4-20090329-1_amd64.deb
  lib32ssp0_4.4-20090329-1_amd64.deb
  gobjc++-4.4-multilib_4.4-20090329-1_amd64.deb
  gobjc++-4.4_4.4-20090329-1_amd64.deb
  gobjc-4.4-multilib_4.4-20090329-1_amd64.deb
  gobjc-4.4_4.4-20090329-1_amd64.deb
  libobjc2_4.4-20090329-1_amd64.deb
  libobjc2-dbg_4.4-20090329-1_amd64.deb
  lib32objc2_4.4-20090329-1_amd64.deb
  lib32objc2-dbg_4.4-20090329-1_amd64.deb
  g++-4.4-multilib_4.4-20090329-1_amd64.deb
  g++-4.4_4.4-20090329-1_amd64.deb
  libstdc++6_4.4-20090329-1_amd64.deb
  lib32stdc++6_4.4-20090329-1_amd64.deb
  lib32stdc++6-4.4-dbg_4.4-20090329-1_amd64.deb
  libstdc++6-4.4-dev_4.4-20090329-1_amd64.deb
  libstdc++6-4.4-pic_4.4-20090329-1_amd64.deb
  libstdc++6-4.4-dbg_4.4-20090329-1_amd64.deb
  libgfortran3_4.4-20090329-1_amd64.deb
  libgfortran3-dbg_4.4-20090329-1_amd64.deb
  gfortran-4.4-multilib_4.4-20090329-1_amd64.deb
  gfortran-4.4_4.4-20090329-1_amd64.deb
  gcc-4.4-multilib_4.4-20090329-1_amd64.deb
  gcc-4.4_4.4-20090329-1_amd64.deb

Greetings,

Your Debian queue daemon


-- 
To UNSUBSCRIBE, email to debian-gcc-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org



Processing of gcc-4.4_4.4-20090329-1_amd64.changes

2009-03-29 Thread Archive Administrator
gcc-4.4_4.4-20090329-1_amd64.changes uploaded successfully to localhost
along with the files:
  gcc-4.4_4.4-20090329-1.dsc
  gcc-4.4_4.4-20090329.orig.tar.gz
  gcc-4.4_4.4-20090329-1.diff.gz
  gcc-4.4-source_4.4-20090329-1_all.deb
  libstdc++6-4.4-doc_4.4-20090329-1_all.deb
  gcc-4.4-locales_4.4-20090329-1_all.deb
  gcc-4.4-base_4.4-20090329-1_amd64.deb
  libgcc1_4.4-20090329-1_amd64.deb
  libgcc1-dbg_4.4-20090329-1_amd64.deb
  lib32gcc1_4.4-20090329-1_amd64.deb
  lib32gcc1-dbg_4.4-20090329-1_amd64.deb
  libgomp1_4.4-20090329-1_amd64.deb
  libgomp1-dbg_4.4-20090329-1_amd64.deb
  lib32gomp1_4.4-20090329-1_amd64.deb
  lib32gomp1-dbg_4.4-20090329-1_amd64.deb
  cpp-4.4_4.4-20090329-1_amd64.deb
  protoize_4.4-20090329-1_amd64.deb
  fixincludes_4.4-20090329-1_amd64.deb
  libmudflap0-4.4-dev_4.4-20090329-1_amd64.deb
  libmudflap0_4.4-20090329-1_amd64.deb
  libmudflap0-dbg_4.4-20090329-1_amd64.deb
  lib32mudflap0_4.4-20090329-1_amd64.deb
  lib32mudflap0-dbg_4.4-20090329-1_amd64.deb
  libssp0_4.4-20090329-1_amd64.deb
  lib32ssp0_4.4-20090329-1_amd64.deb
  gobjc++-4.4-multilib_4.4-20090329-1_amd64.deb
  gobjc++-4.4_4.4-20090329-1_amd64.deb
  gobjc-4.4-multilib_4.4-20090329-1_amd64.deb
  gobjc-4.4_4.4-20090329-1_amd64.deb
  libobjc2_4.4-20090329-1_amd64.deb
  libobjc2-dbg_4.4-20090329-1_amd64.deb
  lib32objc2_4.4-20090329-1_amd64.deb
  lib32objc2-dbg_4.4-20090329-1_amd64.deb
  g++-4.4-multilib_4.4-20090329-1_amd64.deb
  g++-4.4_4.4-20090329-1_amd64.deb
  libstdc++6_4.4-20090329-1_amd64.deb
  lib32stdc++6_4.4-20090329-1_amd64.deb
  lib32stdc++6-4.4-dbg_4.4-20090329-1_amd64.deb
  libstdc++6-4.4-dev_4.4-20090329-1_amd64.deb
  libstdc++6-4.4-pic_4.4-20090329-1_amd64.deb
  libstdc++6-4.4-dbg_4.4-20090329-1_amd64.deb
  libgfortran3_4.4-20090329-1_amd64.deb
  libgfortran3-dbg_4.4-20090329-1_amd64.deb
  gfortran-4.4-multilib_4.4-20090329-1_amd64.deb
  gfortran-4.4_4.4-20090329-1_amd64.deb
  gcc-4.4-multilib_4.4-20090329-1_amd64.deb
  gcc-4.4_4.4-20090329-1_amd64.deb

Greetings,

Your Debian queue daemon


-- 
To UNSUBSCRIBE, email to debian-gcc-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org



gcc-4.4_4.4-20090329-1_amd64.changes is NEW

2009-03-29 Thread Debian Installer
cpp-4.4_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/cpp-4.4_4.4-20090329-1_amd64.deb
fixincludes_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/fixincludes_4.4-20090329-1_amd64.deb
g++-4.4-multilib_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/g++-4.4-multilib_4.4-20090329-1_amd64.deb
g++-4.4_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/g++-4.4_4.4-20090329-1_amd64.deb
gcc-4.4-base_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/gcc-4.4-base_4.4-20090329-1_amd64.deb
gcc-4.4-locales_4.4-20090329-1_all.deb
  to pool/main/g/gcc-4.4/gcc-4.4-locales_4.4-20090329-1_all.deb
gcc-4.4-multilib_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/gcc-4.4-multilib_4.4-20090329-1_amd64.deb
gcc-4.4-source_4.4-20090329-1_all.deb
  to pool/main/g/gcc-4.4/gcc-4.4-source_4.4-20090329-1_all.deb
gcc-4.4_4.4-20090329-1.diff.gz
  to pool/main/g/gcc-4.4/gcc-4.4_4.4-20090329-1.diff.gz
gcc-4.4_4.4-20090329-1.dsc
  to pool/main/g/gcc-4.4/gcc-4.4_4.4-20090329-1.dsc
gcc-4.4_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/gcc-4.4_4.4-20090329-1_amd64.deb
gcc-4.4_4.4-20090329.orig.tar.gz
  to pool/main/g/gcc-4.4/gcc-4.4_4.4-20090329.orig.tar.gz
gfortran-4.4-multilib_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/gfortran-4.4-multilib_4.4-20090329-1_amd64.deb
gfortran-4.4_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/gfortran-4.4_4.4-20090329-1_amd64.deb
gobjc++-4.4-multilib_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/gobjc++-4.4-multilib_4.4-20090329-1_amd64.deb
gobjc++-4.4_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/gobjc++-4.4_4.4-20090329-1_amd64.deb
gobjc-4.4-multilib_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/gobjc-4.4-multilib_4.4-20090329-1_amd64.deb
gobjc-4.4_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/gobjc-4.4_4.4-20090329-1_amd64.deb
lib32gcc1-dbg_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/lib32gcc1-dbg_4.4-20090329-1_amd64.deb
lib32gcc1_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/lib32gcc1_4.4-20090329-1_amd64.deb
lib32gomp1-dbg_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/lib32gomp1-dbg_4.4-20090329-1_amd64.deb
lib32gomp1_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/lib32gomp1_4.4-20090329-1_amd64.deb
lib32mudflap0-dbg_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/lib32mudflap0-dbg_4.4-20090329-1_amd64.deb
lib32mudflap0_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/lib32mudflap0_4.4-20090329-1_amd64.deb
lib32objc2-dbg_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/lib32objc2-dbg_4.4-20090329-1_amd64.deb
lib32objc2_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/lib32objc2_4.4-20090329-1_amd64.deb
(new) lib32ssp0_4.4-20090329-1_amd64.deb optional libs
GCC stack smashing protection library (32bit)
 GCC can now emit code for protecting applications from stack-smashing attacks.
 The protection is realized by buffer overflow detection and reordering of
 stack variables to avoid pointer corruption.
  @endif
lib32stdc++6-4.4-dbg_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/lib32stdc++6-4.4-dbg_4.4-20090329-1_amd64.deb
lib32stdc++6_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/lib32stdc++6_4.4-20090329-1_amd64.deb
libgcc1-dbg_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/libgcc1-dbg_4.4-20090329-1_amd64.deb
libgcc1_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/libgcc1_4.4-20090329-1_amd64.deb
libgfortran3-dbg_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/libgfortran3-dbg_4.4-20090329-1_amd64.deb
libgfortran3_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/libgfortran3_4.4-20090329-1_amd64.deb
libgomp1-dbg_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/libgomp1-dbg_4.4-20090329-1_amd64.deb
libgomp1_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/libgomp1_4.4-20090329-1_amd64.deb
libmudflap0-4.4-dev_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/libmudflap0-4.4-dev_4.4-20090329-1_amd64.deb
libmudflap0-dbg_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/libmudflap0-dbg_4.4-20090329-1_amd64.deb
libmudflap0_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/libmudflap0_4.4-20090329-1_amd64.deb
libobjc2-dbg_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/libobjc2-dbg_4.4-20090329-1_amd64.deb
libobjc2_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/libobjc2_4.4-20090329-1_amd64.deb
(new) libssp0_4.4-20090329-1_amd64.deb optional libs
GCC stack smashing protection library
 GCC can now emit code for protecting applications from stack-smashing attacks.
 The protection is realized by buffer overflow detection and reordering of
 stack variables to avoid pointer corruption.
libstdc++6-4.4-dbg_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/libstdc++6-4.4-dbg_4.4-20090329-1_amd64.deb
libstdc++6-4.4-dev_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/libstdc++6-4.4-dev_4.4-20090329-1_amd64.deb
libstdc++6-4.4-doc_4.4-20090329-1_all.deb
  to pool/main/g/gcc-4.4/libstdc++6-4.4-doc_4.4-20090329-1_all.deb
libstdc++6-4.4-pic_4.4-20090329-1_amd64.deb
  to pool/main/g/gcc-4.4/libstdc++6-4.4-pic_4.4-20090329-1_amd64.deb
libstdc

Bug#479471: marked as done (cc1plus: double free or corruption on arm compiling psicode)

2009-03-29 Thread Debian Bug Tracking System

Your message dated Mon, 30 Mar 2009 01:12:43 +0200
with message-id 
and subject line Re: Bug#479471: double-free on cc1plus (psicode)
has caused the Debian Bug report #479471,
regarding cc1plus: double free or corruption on arm compiling psicode
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact ow...@bugs.debian.org
immediately.)


-- 
479471: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=479471
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Package: g++-4.3
Version: 4.3.0-3
Severity: normal

-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Compiling psicode 3.3.0-2 on arm results in:

*** glibc detected *** /usr/lib/gcc/arm-linux-gnu/4.3.1/cc1plus: double free or 
corruption (out): 0x06f7b930 ***
t1_build_i0i0.cc: In function 'double* _t1_build_i0i0_1(..)':
t1_build_i0i0.cc:3418: internal compiler error: Aborted

The full log can be seen here:
http://buildd.debian.org/fetch.cgi?pkg=psicode;ver=3.3.0-2;arch=arm;stamp=1208556376

Unfortunately I don't have access to an arm machine to give you more
information.

Regards, Daniel


- -- System Information:
Debian Release: lenny/sid
  APT prefers unstable
  APT policy: (850, 'unstable'), (700, 'testing'), (550, 'stable'), (110, 
'experimental')
Architecture: i386 (i686)

Kernel: Linux 2.6.22-3-k7 (SMP w/1 CPU core)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages g++-4.3 depends on:
ii  gcc-4.3   4.3.0-3The GNU C compiler
ii  gcc-4.3-base  4.3.0-3The GNU Compiler Collection (base 
ii  libc6 2.7-10 GNU C Library: Shared libraries
ii  libgmp3c2 2:4.2.2+dfsg-3 Multiprecision arithmetic library
ii  libmpfr1ldbl  2.3.1.dfsg.1-2 multiple precision floating-point 
ii  libstdc++6-4.3-dev4.3.0-3The GNU Standard C++ Library v3 (d

g++-4.3 recommends no packages.

- -- no debconf information

-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.6 (GNU/Linux)

iD8DBQFIHkEmm0bx+wiPa4wRAijaAKCl05++YW10K9AzShOZNvxoZPQjQQCgwYoA
D8qpm68xOl13MyJe0JIlp9A=
=tdxh
-END PGP SIGNATURE-


--- End Message ---
--- Begin Message ---
2008/10/22, Riku Voipio :
> Since this only happened once and on a netwinder buildd, I think
> this is just one form of the infamous "netwinder ran out of memory
> and OOM killed cc1plus" bug. So should this bug be closed?

Yes. :-)

--- End Message ---


[Bug rtl-optimization/323] optimized code gives strange floating point results

2009-03-29 Thread jsm28 at gcc dot gnu dot org


--- Comment #126 from jsm28 at gcc dot gnu dot org  2009-03-30 01:51 ---
Subject: Bug 323

Author: jsm28
Date: Mon Mar 30 01:50:44 2009
New Revision: 145272

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=145272
Log:
PR rtl-optimization/323
* c-common.c (c_fully_fold, convert_and_check,
c_common_truthvalue_conversion): Handle EXCESS_PRECISION_EXPR.
(c_fully_fold_internal): Disallow EXCESS_PRECISION_EXPR.
* c-common.def (EXCESS_PRECISION_EXPR): New.
* c-cppbuiltin.c (builtin_define_float_constants): Define
constants with enough digits for long double.
* c-lex.c (interpret_float): Interpret constant with excess
precision where appropriate.
* c-opts.c (c_common_post_options): Set
flag_excess_precision_cmdline.  Give an error for
-fexcess-precision=standard for C++ for processors where the
option is significant.
* c-parser.c (c_parser_conditional_expression): Handle excess
precision in condition.
* c-typeck.c (convert_arguments): Handle arguments with excess
precision.
(build_unary_op): Move excess precision outside operation.
(build_conditional_expr): Likewise.
(build_compound_expr): Likewise.
(build_c_cast): Do cast on operand of EXCESS_PRECISION_EXPR.
(build_modify_expr): Handle excess precision in RHS.
(convert_for_assignment): Handle excess precision in converted
value.
(digest_init, output_init_element, process_init_element): Handle
excess precision in initializer.
(c_finish_return): Handle excess precision in return value.
(build_binary_op): Handle excess precision in operands and add
excess precision as needed for operation.
* common.opt (-fexcess-precision=): New option.
* config/i386/i386.h (X87_ENABLE_ARITH, X87_ENABLE_FLOAT): New.
* config/i386/i386.md (float2):
For standard excess precision, output explicit conversion to and
truncation from XFmode.
(*float2_1,
*float2_i387_with_temp,
*float2_i387, two unnamed
define_splits, floatdi2_i387_with_xmm, two unnamed
define_splits, *floatunssi2_1, two unnamed define_splits,
floatunssi2, add3, sub3, mul3, divdf3,
divsf3, *fop__comm_i387, *fop__1_i387,
*fop__2_i387, *fop__3_i387,
*fop_df_4_i387, *fop_df_5_i387, *fop_df_6_i387, two unnamed
define_splits, sqrt2): Disable where appropriate for
standard excess precision.
* convert.c (convert_to_real): Do not shorten arithmetic to type
for which excess precision would be used.
* defaults.h (TARGET_FLT_EVAL_METHOD_NON_DEFAULT): Define.
* doc/invoke.texi (-fexcess-precision=): Document option.
(-mfpmath=): Correct index entry.
* flags.h (enum excess_precision, flag_excess_precision_cmdline,
flag_excess_precision): New.
* langhooks.c (lhd_post_options): Set
flag_excess_precision_cmdline.
* opts.c (common_handle_option): Handle -fexcess-precision=.
* toplev.c (flag_excess_precision_cmdline, flag_excess_precision,
init_excess_precision): New.
(lang_dependent_init_target): Call init_excess_precision.
* tree.c (excess_precision_type): New.
* tree.h (excess_precision_type): Declare.

ada:
* gcc-interface/misc.c (gnat_post_options): Set
flag_excess_precision_cmdline.  Give an error for
-fexcess-precision=standard for processors where the option is
significant.

fortran:
* options.c (gfc_post_options): Set
flag_excess_precision_cmdline.  Give an error for
-fexcess-precision=standard for processors where the option is
significant.

java:
* lang.c (java_post_options): Set flag_excess_precision_cmdline.
Give an error for -fexcess-precision=standard for processors where
the option is significant.

testsuite:
* gcc.target/i386/excess-precision-1.c,
gcc.target/i386/excess-precision-2.c,
gcc.target/i386/excess-precision-3.c,
gcc.target/i386/excess-precision-4.c,
gcc.target/i386/excess-precision-5.c,
gcc.target/i386/excess-precision-6.c: New tests.

Added:
trunk/gcc/testsuite/gcc.target/i386/excess-precision-1.c
trunk/gcc/testsuite/gcc.target/i386/excess-precision-2.c
trunk/gcc/testsuite/gcc.target/i386/excess-precision-3.c
trunk/gcc/testsuite/gcc.target/i386/excess-precision-4.c
trunk/gcc/testsuite/gcc.target/i386/excess-precision-5.c
trunk/gcc/testsuite/gcc.target/i386/excess-precision-6.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/ada/ChangeLog
trunk/gcc/ada/gcc-interface/misc.c
trunk/gcc/c-common.c
trunk/gcc/c-common.def
trunk/gcc/c-cppbuiltin.c
trunk/gcc/c-lex.c
trunk/gcc/c-opts.c
trunk/gcc/c-parser.c
trunk/gcc/c-typeck.c
trunk/gcc/common.o

[Bug rtl-optimization/323] optimized code gives strange floating point results

2009-03-29 Thread jsm28 at gcc dot gnu dot org


--- Comment #127 from jsm28 at gcc dot gnu dot org  2009-03-30 01:57 ---
Fixed for C (and ObjC) for 4.5 with the new -fexcess-precision=standard
support.

The issue remains for other languages (and maybe for some m68k processors);
I quote from my original message
:

  It would be possible to implement the option for non-C languages, to
  provide whatever predictable semantics are appropriate for those
  languages (whether or not described in their standards).  Note that
  bug 323 was originally reported with a C++ testcase.  If implemented
  for all languages, the option might supersede -ffloat-store.  Right
  now, -ffloat-store checks are scattered about the optimizers and it
  seems unlikely that -ffloat-store really implements any form of
  predictable semantics now; such semantic effect as it was intended to
  have could be better represented as an alias for a
  -fexcess-precision=standard option supported for all languages.  It
  would probably be most appropriate not to close bug 323 without having
  some form of predictable semantics available for each language.

and:

  I have not changed the m68k back end in this patch.  Thus the option
  may not be fully effective for the affected m68k processors (classic
  m68k with 68881, before 68040, only, not ColdFire, not 68040 or
  later).  If anyone wishes to make it fully effective for such
  processors they should copy the testcases to gcc.target/m68k/ and go
  through m68k insn patterns appropriately adjusting them.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=323

--- You are receiving this mail because: ---
You are on the CC list for the bug, or are watching someone who is.


-- 
To UNSUBSCRIBE, email to debian-gcc-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org