[PATCH] Fix PR55525

2012-12-05 Thread Richard Biener
This fixes PR55525, when with LTO you have mismatching types for decls we ICE when we have an ARRAY_REF of sth that is not an array. Fixup, similar as for component-refs. LTO bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk. Richard. 2012-12-05 Richard Biener

libgo patch committed: Fix splice syscall

2012-12-05 Thread Ian Lance Taylor
There was a bug in syscall.Splice: it ignored the offsets that were passed in. This patch fixes it. Bootstrapped and ran Go testsuite on x86_64-unknown-linux-gnu. Committed to mainline and 4.7 branch. Ian diff -r 36bbf2143cba libgo/go/syscall/libcall_linux.go ---

Re: [patch] comment updates - don't reference non-existing local-alloc.c and global.c

2012-12-05 Thread Richard Biener
On Tue, Dec 4, 2012 at 8:26 PM, Steven Bosscher stevenb@gmail.com wrote: Hello, Just comment updates, and a bit of documentation. Not sure if the comment changes need a ChangeLog. They do. OK for trunk? Ok. Thanks, Richard. Ciao! Steven

Another merge from trunk to gccgo branch

2012-12-05 Thread Ian Lance Taylor
I've merged revision 194186 from trunk to the gccgo branch. Ian

[PATCH] Testcase for PR50222

2012-12-05 Thread Richard Biener
Committed to trunk. Richard. 2012-12-05 Richard Biener rguent...@suse.de PR tree-optimization/50222 * gcc.dg/torture/pr50222.c: New testcase. Index: gcc/testsuite/gcc.dg/torture/pr50222.c === ---

Re: [PATCH][AARCH64][PING] Fix the name mangling of AdvSIMD vector types

2012-12-05 Thread Yufeng Zhang
Ping~ On 22/11/12 16:49, Yufeng Zhang wrote: Hi, This patch implements the correct name mangling of AArch64 AdvSIMD vector types in conformance to the AAPCS64 doc (Procedure Call Standard for the ARM 64-bit Architecture, Appendix A). OK for the trunk? Thanks, Yufeng gcc/ChangeLog

Re: [PATCH][AARCH64] Fix the name mangling of AdvSIMD vector types

2012-12-05 Thread Marcus Shawcroft
OK /Marcus On 22 November 2012 16:49, Yufeng Zhang yufeng.zh...@arm.com wrote: Hi, This patch implements the correct name mangling of AArch64 AdvSIMD vector types in conformance to the AAPCS64 doc (Procedure Call Standard for the ARM 64-bit Architecture, Appendix A). OK for the trunk?

[PATCH] Testcase for PR51238

2012-12-05 Thread Richard Biener
Which is fixed on trunk. Committed. Richard. 2012-12-05 Richard Biener rguent...@suse.de PR tree-optimization/51238 * gcc.dg/torture/pr51238.c: New testcase. Index: gcc/testsuite/gcc.dg/torture/pr51238.c ===

[Ada] Set overflow check mode to STRICT in Alfa mode, unless set already

2012-12-05 Thread Arnaud Charlet
In order to be able to rely on frontend marks for checks in formal verification (Alfa mode), we need to set the overflow mode to STRICT, thus forcing checking formal verification when the user wants no run-time checks. Modes MINIMIZED and ELIMINATED are respected if set by the user. Tested on

[Ada] Decoration of limited-with clauses

2012-12-05 Thread Arnaud Charlet
Building the limited view of a package does not perform a semantic analysis of the package. Nevertheless the limited-with clause must carry the entity of the unit, so that warnings on unused with_clauses can be properly supported. No short reproducer available. Tested on x86_64-pc-linux-gnu,

[Ada] Change overflow mode handling

2012-12-05 Thread Arnaud Charlet
This patch separates handling of overflow checks and overflow modes. Internally several names are changed to reflect this. The externally visible effect is that pragma Overflow_Checks is changed to Overflow_Mode, CHECKED mode is renamed to STRICT, and the Overflow_Mode pragma no longer affects

[Ada] Implementation-defined restrictions

2012-12-05 Thread Arnaud Charlet
This patch remove discrepancies between the documentation on implementation-defined restrictions, and the internal data structure used for warnings and errors on implementation-defined restriction violations. Tested on x86_64-pc-linux-gnu, committed on trunk 2012-12-05 Ed Schonberg

[Ada] Remove junk overflow check on MOD/REM/unary +

2012-12-05 Thread Arnaud Charlet
This patch removes the setting of the overflow flag for MOD, REM, and unary + operators, since overflow is not possible. This does not have a functional effect for the compiler since overflow is not possible anyway, but it did affect some other tools (notably gnatprove, which had to do extra work

[Ada] Visibility of equality operator when left operand is null.

2012-12-05 Thread Arnaud Charlet
If the left operand of an equality operator is null, the visibility of the operator must be determined from the interpretation of the right operand. This processing was done for universal numeric types but not for Any_Access, the internal representation of the type of the literal null. Compiling

[Ada] Avoid storage leak in gnatchop

2012-12-05 Thread Arnaud Charlet
This patch removes a storage leak in gnatchop, and makes it slightly more efficient. No noticeable change in behavior, so no test. Tested on x86_64-pc-linux-gnu, committed on trunk 2012-12-05 Bob Duff d...@adacore.com * gnatchop.adb (Read_File): Avoid storage leak, and in most cases

[Ada] Aspect / pragma Contract_Cases

2012-12-05 Thread Arnaud Charlet
This patch provides the initial implementation of aspect/pragma Contract_Cases. This construct is intended for formal verification proofs. The syntax of the aspect is as follows: ASPECT_DEFINITION ::= ( POST_CASE_LIST ) POST_CASE_LIST ::= POST_CASE {, POST_CASE_LIST} POST_CASE ::=

[Ada] Legality of aliased keyword in extended return statement

2012-12-05 Thread Arnaud Charlet
An early version of the Ada 2012 RM made it illegal to declare the return object aliased in an extended return statement. A later decision (AI05-0277) made it legal in the confirming case where the return type is immutably limited, This patch accordingly moves the application of this rule from the

[Ada] Correct multi-precision division algorithm used for universal integers

2012-12-05 Thread Arnaud Charlet
The version of multi-precision division algorithm used was based on Algorithm D published in 2nd edition of Donald Knuth's The Art of Computer Programming. This algorithm was corrected twice, in 1995 and 2005, to protect against a possible overflow. Although this problem may not be present in this

[Ada] pragmas Loop_Invariant and Loop_Variant

2012-12-05 Thread Arnaud Charlet
This patch splits pragma Loop_Assertion into two distinct pragmas. They have the following syntax: pragma Loop_Invariant ( boolean_EXPRESSION ); pragma Loop_Variant ( LOOP_VARIANT_ITEM {, LOOP_VARIANT_ITEM } ); LOOP_VARIANT_ITEM ::= CHANGE_DIRECTION = discrete_EXPRESSION

[Ada] Change error messages on duplicated Contract_Cases

2012-12-05 Thread Arnaud Charlet
Issue more precise error messages when Contract_Cases aspects or pragmas are given more than once on a given subprogram. Tested on x86_64-pc-linux-gnu, committed on trunk 2012-12-05 Yannick Moy m...@adacore.com * aspects.ads (No_Duplicates_Allowed): Forbid use of duplicate

[Ada] Attribute Update

2012-12-05 Thread Arnaud Charlet
This patch provides the initial implementation of attribute Update. This construct is intended for formal verification proofs. The syntax of the attribute is as follows: X'Update ( RECORD_COMPONENT_ASSOCIATION_LIST ) X'Update ( ARRAY_COMPONENT_ASSOCIATION {, ARRAY_COMPONENT_ASSOCIATION} )

[Ada] Ada 2012 AIo5-014: no null exclusion on allocator with subtype indication

2012-12-05 Thread Arnaud Charlet
The patch implements properly the rule given in this Ada issue. The check is purely syntactic and does not depend on whether the designated type is itself a null excluding access type. Compiling the following in Ada 2012 mode must yield: alloc.adb:23:16: an allocator with a subtype

Re: libsanitizer mege from upstream r169371

2012-12-05 Thread Dmitry Vyukov
LGTM On Wed, Dec 5, 2012 at 2:59 PM, Konstantin Serebryany konstantin.s.serebry...@gmail.com wrote: Hi, The attached patch is the libsanitizer mege from upstream r169371. Automatically generated by libsanitizer/merge.sh Tested with rm -rf */{*/,}libsanitizer \ make -j 50 \ make -C

Re: libsanitizer mege from upstream r169371

2012-12-05 Thread Dmitry Vyukov
Jakub, I hope I addressed all your comments in this revision. I've fixed nand atomic operation, made atomic operations atomic again and added visibility attribute to interface functions. On Wed, Dec 5, 2012 at 3:11 PM, Dmitry Vyukov dvyu...@google.com wrote: LGTM On Wed, Dec 5, 2012 at 2:59

[Ada] Generation of SCOs for aspects

2012-12-05 Thread Arnaud Charlet
This change to the SCO generation circuitry adds support for Ada 2012 aspects. SCO lines will be generated for precondition, postcondition, invariant, and predicate aspects. The following compilation must produce the indicated CA SCO: $ gcc -c -fdump-scos -gnata -gnat12 main.adb $ grep ^CA

[asan] Instrument non-public common vars

2012-12-05 Thread Jakub Jelinek
Hi! The c-c++-common/asan/global-overflow-1.c test fails because we don't instrument local common vars (those that go into .lcomm). Of course we can't instrument them if they are emitted using .lcomm, because the linker can arbitrarily reorder the .lcomm vars for best packing, but we can

[asan] Disallow crossjumping of __asan_report_* builtins

2012-12-05 Thread Jakub Jelinek
Hi! Another problem from the compiler side when working on the asan testsuite is that at higher -O* levels the __asan_report_* noreturn calls are cross-jumped, but the library relies on their locus to print accurrate locations when symbolized. Without it, asan might report an error completely

Re: [asan] Disallow crossjumping of __asan_report_* builtins

2012-12-05 Thread Konstantin Serebryany
On Wed, Dec 5, 2012 at 3:39 PM, Jakub Jelinek ja...@redhat.com wrote: Hi! Another problem from the compiler side when working on the asan testsuite is that at higher -O* levels the __asan_report_* noreturn calls are cross-jumped, but the library relies on their locus to print accurrate

[PATCH] asan unit tests from llvm lit-test incremental changes

2012-12-05 Thread Jakub Jelinek
Hi! On Tue, Dec 04, 2012 at 10:00:35AM -0800, Wei Mi wrote: I updated the patch according to the comments. Please take a look. Thanks. Rather than several further rounds of review, let me post an incremental patch on top of yours. Your patch seems to be incomplete BTW, that asan-special.exp

Re: libsanitizer mege from upstream r169371

2012-12-05 Thread Jakub Jelinek
On Wed, Dec 05, 2012 at 03:13:20PM +0400, Dmitry Vyukov wrote: I hope I addressed all your comments in this revision. I've fixed nand atomic operation, made atomic operations atomic again and added visibility attribute to interface functions. Mostly, still, __sync_lock_test_and_set isn't full

Re: libsanitizer mege from upstream r169371

2012-12-05 Thread Jakub Jelinek
On Wed, Dec 05, 2012 at 02:59:48PM +0400, Konstantin Serebryany wrote: The attached patch is the libsanitizer mege from upstream r169371. Automatically generated by libsanitizer/merge.sh Tested with rm -rf */{*/,}libsanitizer \ make -j 50 \ make -C gcc check-g{cc,++}

Re: libsanitizer mege from upstream r169371

2012-12-05 Thread Dmitry Vyukov
On Wed, Dec 5, 2012 at 4:42 PM, Jakub Jelinek ja...@redhat.com wrote: On Wed, Dec 05, 2012 at 03:13:20PM +0400, Dmitry Vyukov wrote: I hope I addressed all your comments in this revision. I've fixed nand atomic operation, made atomic operations atomic again and added visibility attribute to

Re: libsanitizer mege from upstream r169371

2012-12-05 Thread Dmitry Vyukov
Yeah, but then there will be all that additional __sync_synchronize(), that are not needed if we use __atomic. And on the other hand, if we have that __sync_synchronize(), then we do not need __atomic... On Wed, Dec 5, 2012 at 4:57 PM, Jakub Jelinek ja...@redhat.com wrote: On Wed, Dec 05, 2012

Re: libsanitizer mege from upstream r169371

2012-12-05 Thread Dmitry Vyukov
http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/tsan/rtl/tsan_interface_atomic.cc?view=diffr1=169378r2=169379pathrev=169379 We will integrate it later. On Wed, Dec 5, 2012 at 5:03 PM, Dmitry Vyukov dvyu...@google.com wrote: Yeah, but then there will be all that additional

Re: libsanitizer mege from upstream r169371

2012-12-05 Thread Konstantin Serebryany
On Wed, Dec 5, 2012 at 4:43 PM, Jakub Jelinek ja...@redhat.com wrote: On Wed, Dec 05, 2012 at 02:59:48PM +0400, Konstantin Serebryany wrote: The attached patch is the libsanitizer mege from upstream r169371. Automatically generated by libsanitizer/merge.sh Tested with rm -rf

[PATCH][C++11][ PR55582] Let string literals starting with lower-case 's' be a user-defined literal instead of string + macro.

2012-12-05 Thread Ed Smith-Rowland
There is a proposal to add several user-defined literals to the standard library that looks like it will probably go through: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2012/n3468.pdf The proposed string literals std::string hw = Hello, world!s; will not parse as a literal in gcc. This

RE: [Patch AArch64] Add support for vectorizable standard math patterns.

2012-12-05 Thread James Greenhalgh
Is this patch OK to commit? OK /Marcus Thanks Marcus, I've also back-ported this to AArch64-4.7-branch. The back-port was clean and passed a regression run on aarch64-none-elf with no regressions. Thanks, James

Re: [i386] scalar ops that preserve the high part of a vector

2012-12-05 Thread Marc Glisse
2012-12-04 Marc Glisse marc.gli...@inria.fr PR target/54855 gcc/ * simplify-rtx.c (simplify_binary_operation_1) VEC_CONCAT: Replace with VEC_MERGE. * config/i386/sse.md (sse_vmplusminus_insnmode3): Rewrite pattern. *

[asan] Handle noreturn calls with __asan_handle_no_return ()

2012-12-05 Thread Jakub Jelinek
Hi! This patch fixes -FAIL: g++.dg/asan/asan_test.C -O2 AddressSanitizer_LongJmpTest execution test -FAIL: g++.dg/asan/asan_test.C -O2 AddressSanitizer_BuiltinLongJmpTest execution test -FAIL: g++.dg/asan/asan_test.C -O2 AddressSanitizer_SigLongJmpTest execution test (both x86_64 and

Re: [patch] PR target/54160: Only set __OBJC2__ when compiling OBJC.

2012-12-05 Thread Aldy Hernandez
Hi gentlemen. Just in case you missed this post. This only affects Darwin, so it's technically not just an Objective C problem. This problem came about with Ian Sandoe's patch of rev@170260. The CPP builtin __OBJC2__ is only set for Darwin. FYI, in this patch I followed the way we

Re: [asan] Handle noreturn calls with __asan_handle_no_return ()

2012-12-05 Thread Jakub Jelinek
On Wed, Dec 05, 2012 at 03:49:52PM +0100, Jakub Jelinek wrote: +FAIL: g++.dg/asan/asan_test.C -O2 AddressSanitizer_PthreadExitTest execution test but that looks like a library problem to me: AddressSanitizer CHECK failed: ../../../../../libsanitizer/asan/asan_rtl.cc:271

Re: libsanitizer mege from upstream r169371

2012-12-05 Thread Dominique Dhumieres
r194221 It breaks bootstrap on x86_64-apple-darwin10: /opt/gcc/build_a/./gcc/xg++ -B/opt/gcc/build_a/./gcc/ -nostdinc++ -nostdinc++ -I/opt/gcc/build_a/x86_64-apple-darwin10.8.0/libstdc++-v3/include/x86_64-apple-darwin10.8.0 -I/opt/gcc/build_a/x86_64-apple-darwin10.8.0/libstdc++-v3/include

Re: [PATCH] Instance information in DWARF discriminators

2012-12-05 Thread Thomas Quinot
* Tom Tromey, 2012-11-29 : Thomas Now, an alternative might be to have an array of instance IDs stored at Thomas the struct line_maps level, with the same indices at the set of ordinary Thomas maps, which would be allocated only when flag_debug_instances is used; Thomas when it is not

Re: libsanitizer mege from upstream r169371

2012-12-05 Thread Konstantin Serebryany
Yea, sorry. I've noticed this upstream and committed a fix there. Feel free to remove these lines (or wait until I do another merge first thing tomorrow). --kcc On Wed, Dec 5, 2012 at 7:13 PM, Dominique Dhumieres domi...@lps.ens.fr wrote: r194221 It breaks bootstrap on x86_64-apple-darwin10:

Re: [asan] Handle noreturn calls with __asan_handle_no_return ()

2012-12-05 Thread Jakub Jelinek
Hi! On Wed, Dec 05, 2012 at 04:06:51PM +0100, Jakub Jelinek wrote: FAIL: g++.dg/asan/asan_test.C -O2 AddressSanitizer_GlobalStringConstTest Ident(p[15]) execution test So, this one fails because we don't instrument string literals, in GCC they aren't anything close to global variables (like

[Patch, Fortran, committed] Fix memleak in generate_component_assignments

2012-12-05 Thread Tobias Burnus
Found by Coverity's scanner. Committed as Rev. 194225 after building with the patch. Tobias Index: ChangeLog === --- ChangeLog (Revision 194224) +++ ChangeLog (Arbeitskopie) @@ -1,3 +1,7 @@ +2012-12-05 Tobias Burnus

Re: [PATCH] PR c++/53609 - Wrong argument deduction for pack expansion in argument pack

2012-12-05 Thread Jason Merrill
On 12/03/2012 08:27 AM, Dodji Seketeli wrote: + - HAS_EXPANSION_ARG_P: Set to TRUE iff at least one parameter + pack has got an argument that is an expansion. The got is unnecessary, just has an argument is better. + Setup APS, which is an instance of an ARGUMENT_PACK_SELECT

[Patch, Fortran] Small patch for calls to gfc_deallocate_scalar_with_status

2012-12-05 Thread Tobias Burnus
First, I would like to *ping* the patch http://gcc.gnu.org/ml/fortran/2012-12/msg00022.html The patch below is part of my FINAL patch. The NULL - NULL_TREE change is obvious. The expr to al-expr change is to pass a BT_CLASS instead of a BT_DERIVED. And the NULL to gfc_lval_expr_from_sym

[asan] Handle bitfields in asan

2012-12-05 Thread Jakub Jelinek
Hi! This patch tries to handle bitfield accesses as if it were writes/reads from the corresponding DECL_BIT_FIELD_REPRESENTATIVE. Richard, does it make sense this way (the code will take ADDR_EXPR of the COMPONENT_REF with the DECL_BIT_FIELD_REPRESENTATIVE and use the size of the representative

Re: [asan] Handle noreturn calls with __asan_handle_no_return ()

2012-12-05 Thread Richard Biener
On Wed, Dec 5, 2012 at 4:43 PM, Jakub Jelinek ja...@redhat.com wrote: Hi! On Wed, Dec 05, 2012 at 04:06:51PM +0100, Jakub Jelinek wrote: FAIL: g++.dg/asan/asan_test.C -O2 AddressSanitizer_GlobalStringConstTest Ident(p[15]) execution test So, this one fails because we don't instrument

Re: [asan] Handle bitfields in asan

2012-12-05 Thread Richard Biener
On Wed, 5 Dec 2012, Jakub Jelinek wrote: Hi! This patch tries to handle bitfield accesses as if it were writes/reads from the corresponding DECL_BIT_FIELD_REPRESENTATIVE. Richard, does it make sense this way (the code will take ADDR_EXPR of the COMPONENT_REF with the

Re: [asan] Disallow crossjumping of __asan_report_* builtins

2012-12-05 Thread Xinliang David Li
Can the report builtins be marked with certain attribute such as 'no-return' etc? David On Wed, Dec 5, 2012 at 3:48 AM, Konstantin Serebryany konstantin.s.serebry...@gmail.com wrote: On Wed, Dec 5, 2012 at 3:39 PM, Jakub Jelinek ja...@redhat.com wrote: Hi! Another problem from the compiler

Re: [asan] Handle bitfields in asan

2012-12-05 Thread Jakub Jelinek
On Wed, Dec 05, 2012 at 05:10:56PM +0100, Richard Biener wrote: This patch tries to handle bitfield accesses as if it were writes/reads from the corresponding DECL_BIT_FIELD_REPRESENTATIVE. Richard, does it make sense this way (the code will take ADDR_EXPR of the COMPONENT_REF with the

Re: [asan] Disallow crossjumping of __asan_report_* builtins

2012-12-05 Thread Jakub Jelinek
On Wed, Dec 05, 2012 at 08:24:59AM -0800, Xinliang David Li wrote: Can the report builtins be marked with certain attribute such as 'no-return' etc? They are marked as noreturn obviously (and leaf, nothrow etc.). But noreturn isn't attribute that prevents cross-jumping. It is fine to

Re: [i386] scalar ops that preserve the high part of a vector

2012-12-05 Thread Paolo Bonzini
Il 05/12/2012 15:22, Marc Glisse ha scritto: + + /* The x86 back-end uses VEC_CONCAT to set an element in a V2DF, but +VEC_MERGE for scalar operations that preserve the other elements +of a vector. */ + if (GET_CODE (trueop1) == VEC_SELECT + GET_MODE (XEXP

Re: [asan] Disallow crossjumping of __asan_report_* builtins

2012-12-05 Thread Xinliang David Li
Ok. Tail/head merging optimization also happens after PRE. Though it happens before asan instrumentation, in theory it can trigger similar bogus loc problem, but less likely. David On Wed, Dec 5, 2012 at 8:35 AM, Jakub Jelinek ja...@redhat.com wrote: On Wed, Dec 05, 2012 at 08:24:59AM -0800,

Re: [asan] Handle noreturn calls with __asan_handle_no_return ()

2012-12-05 Thread Konstantin Serebryany
On Wed, Dec 5, 2012 at 7:43 PM, Jakub Jelinek ja...@redhat.com wrote: Hi! On Wed, Dec 05, 2012 at 04:06:51PM +0100, Jakub Jelinek wrote: FAIL: g++.dg/asan/asan_test.C -O2 AddressSanitizer_GlobalStringConstTest Ident(p[15]) execution test So, this one fails because we don't instrument

Re: [asan] Handle noreturn calls with __asan_handle_no_return ()

2012-12-05 Thread Jakub Jelinek
On Wed, Dec 05, 2012 at 09:42:08PM +0400, Konstantin Serebryany wrote: On Wed, Dec 5, 2012 at 7:43 PM, Jakub Jelinek ja...@redhat.com wrote: So, this one fails because we don't instrument string literals, in GCC they aren't anything close to global variables (like they are in LLVM?) In

Re: [asan] Handle noreturn calls with __asan_handle_no_return ()

2012-12-05 Thread Konstantin Serebryany
On Wed, Dec 5, 2012 at 9:46 PM, Jakub Jelinek ja...@redhat.com wrote: On Wed, Dec 05, 2012 at 09:42:08PM +0400, Konstantin Serebryany wrote: On Wed, Dec 5, 2012 at 7:43 PM, Jakub Jelinek ja...@redhat.com wrote: So, this one fails because we don't instrument string literals, in GCC they

[PR rtl-optimization/55604]: fix ICE in remove_some_program_points_and_update_live_ranges

2012-12-05 Thread Aldy Hernandez
This is a division by zero ICE. In the testcase in the PR, both `n' and `lra_live_max_point' are zero. I have opted to inhibit the dump when lra_live_max_point is zero, but I can just as easily avoiding printing the percentage in this case. Let me know what you prefer. OK for trunk? commit

libsanitizer mege from upstream r169392

2012-12-05 Thread Konstantin Serebryany
Hi, The attached patch is the libsanitizer merge from upstream r169392. Among other things It fixes the darwin build. Automatically generated by libsanitizer/merge.sh Tested with rm -rf */{*/,}libsanitizer \ make -j 50 \ make -C gcc check-g{cc,++}

Re: [patch] PR target/54160: Only set __OBJC2__ when compiling OBJC.

2012-12-05 Thread Aldy Hernandez
Adjusted ChangeLog entry as suggested by Jakub on IRC. OK? commit ddc4494409331e5a75814a6c8a57aa0646257fb2 Author: Aldy Hernandez al...@redhat.com Date: Wed Dec 5 08:38:10 2012 -0600 PR target/54160 * config/t-darwin (darwin-c.o): Depend on $(CPP_INTERNAL_H). *

Re: [PR rtl-optimization/55604]: fix ICE in remove_some_program_points_and_update_live_ranges

2012-12-05 Thread Aldy Hernandez
On 12/05/12 12:13, Aldy Hernandez wrote: This is a division by zero ICE. In the testcase in the PR, both `n' and `lra_live_max_point' are zero. I have opted to inhibit the dump when lra_live_max_point is zero, but I can just as easily avoiding printing the percentage in this case. Let me know

Re: [PR rtl-optimization/55604]: fix ICE in remove_some_program_points_and_update_live_ranges

2012-12-05 Thread Steven Bosscher
On Wed, Dec 5, 2012 at 7:13 PM, Aldy Hernandez wrote: This is a division by zero ICE. In the testcase in the PR, both `n' and `lra_live_max_point' are zero. I have opted to inhibit the dump when lra_live_max_point is zero, but I can just as easily avoiding printing the percentage in this

[asan] Instrument STRING_CSTs

2012-12-05 Thread Jakub Jelinek
Hi! Here is instrumentation of STRING_CSTs. Using TREE_TYPE (shadow_ptr_types[0]) instead of plain char_type_node is a hack to avoid instrumenting the asan_pp_string created STRING_CSTs that describe the protected automatic vars in functions and protected global vars, no need to waste space for

[PATCH] Fix PR55599/sanitizer by disabling static libasan on darwin

2012-12-05 Thread Jack Howarth
The transition of libasan on darwin from using mach_override to the replacement mac function imposition code results in a non-functional static libasan (PR55599). The method now used needs a dynamic shared library and retaining a static libasan would require restoring the deprecated and

Re: [PR rtl-optimization/55604]: fix ICE in remove_some_program_points_and_update_live_ranges

2012-12-05 Thread Steven Bosscher
On Wed, Dec 5, 2012 at 8:11 PM, Steven Bosscher wrote: The function that triggers this, has this RTL after IRA: At which point, of course, I wanted to show after substituting hard regs for the pseudos, so that: 1: NOTE_INSN_DELETED 3: NOTE_INSN_BASIC_BLOCK 2 2:

Re: [PR rtl-optimization/55604]: fix ICE in remove_some_program_points_and_update_live_ranges

2012-12-05 Thread Vladimir Makarov
On 12-12-05 2:11 PM, Steven Bosscher wrote: On Wed, Dec 5, 2012 at 7:47 PM, Vladimir Makarov wrote: On 12-12-05 1:13 PM, Aldy Hernandez wrote: This is a division by zero ICE. In the testcase in the PR, both `n' and `lra_live_max_point' are zero. I have opted to inhibit the dump when

Re: [PR rtl-optimization/55604]: fix ICE in remove_some_program_points_and_update_live_ranges

2012-12-05 Thread David Edelsohn
On 12-12-05 1:13 PM, Aldy Hernandez wrote: This is a division by zero ICE. In the testcase in the PR, both `n' and `lra_live_max_point' are zero. I have opted to inhibit the dump when lra_live_max_point is zero, but I can just as easily avoiding printing the percentage in this case.

Ping: [PATCH] New configuration options to enable additional executable/startfile/shared library prefixes

2012-12-05 Thread Michael Meissner
Other than David approving of the powerpc stuff, and Gerald Pfeifer asking a question, I didn't get any response for my patch to add new configuration options to enable additional executable/startfile/shared library prefixes: http://gcc.gnu.org/ml/gcc-patches/2012-11/msg00144.html Can I get a

Re: [i386] scalar ops that preserve the high part of a vector

2012-12-05 Thread Marc Glisse
On Wed, 5 Dec 2012, Paolo Bonzini wrote: Il 05/12/2012 15:22, Marc Glisse ha scritto: + + /* The x86 back-end uses VEC_CONCAT to set an element in a V2DF, but + VEC_MERGE for scalar operations that preserve the other elements + of a vector. */ + if (GET_CODE

[PATCH, i386]: Define FP_TRAPPING_EXCEPTIONS

2012-12-05 Thread Uros Bizjak
Hello! Following aarch64 example, we can define FP_TRAPPING_EXCEPTIONS for x86, too. 2012-12-05 Uros Bizjak ubiz...@gmail.com * config/i386/sfp-machine.h (FP_EX_ALL): Define. (FP_TRAPPING_EXCEPTIONS): Define. * config/i386/32/sfp-machine.h (FP_EX_SHIFT): Define.

Re: [PR rtl-optimization/55604]: fix ICE in remove_some_program_points_and_update_live_ranges

2012-12-05 Thread Aldy Hernandez
It could work too. Either code is ok to me. The testscase is very rare and can be achieved only for a small program. So the code speed is not important. I favor a bit your code as it does not change the code presented in IRA and LRA which might be unified someday. So if you are ready to

Re: [patch] PR target/54160: Only set __OBJC2__ when compiling OBJC.

2012-12-05 Thread Mike Stump
On Dec 5, 2012, at 10:22 AM, Aldy Hernandez al...@redhat.com wrote: Adjusted ChangeLog entry as suggested by Jakub on IRC. OK? Ok. Please watch for hate mail from cpp folks that don't want internal being used in this way…

Re: [i386] scalar ops that preserve the high part of a vector

2012-12-05 Thread Eric Botcazou
could you take a look at the small simplify-rtx bit of this patch to see if the general approach makes sense to you? (this targets 4.9 and passes bootstrap+testsuite on x86_64-linux) The point of this transformation is to avoid writing a second define_insn in config/i386/sse.md as in the

PR rtl-optimization/51771: revert TM returns twice kludge

2012-12-05 Thread Aldy Hernandez
As mentioned in the PR, this seems to no longer be an issue after we redesigned the TM abnormal edges (in the uninstrumented code path patchset). Tested with the STAMP benchmark for both 1 and 4 threads, as well as with the GCC regression suite. OK for trunk? commit

Re: [PATCH] Fix PR55599/sanitizer by disabling static libasan on darwin

2012-12-05 Thread Mike Stump
On Dec 5, 2012, at 10:43 AM, Jack Howarth howa...@bromo.med.uc.edu wrote: The transition of libasan on darwin from using mach_override to the replacement mac function imposition code results in a non-functional static libasan (PR55599). Ok unless the asan people have a better idea...

Re: Backported r185231 from trunk. (issue 6878045)

2012-12-05 Thread xur
Look good to me. Please check with David if google-main branch is currently opened for check-in. -Rong https://codereview.appspot.com/6878045/

Re: Backported r185231 from trunk. (issue 6878045)

2012-12-05 Thread Xinliang David Li
It (a trunk backport) is not needed for google/main. David On Wed, Dec 5, 2012 at 1:46 PM, x...@google.com wrote: Look good to me. Please check with David if google-main branch is currently opened for check-in. -Rong https://codereview.appspot.com/6878045/

Re: [PATCH][ARM][1/3] AArch32 NEON vrint builtins and intrinsics

2012-12-05 Thread Ramana Radhakrishnan
On Thu, Nov 29, 2012 at 2:27 PM, Kyrylo Tkachov kyrylo.tkac...@arm.com wrote: Hi all, This patch adds support for the vrint builtins. It also gathers the unspec definitions in the various .md files in one file: unspecs.md. A new iterator is defined that iterates over some new unspecs, in a

Re: [PATCH][ARM][2/3] AArch32 NEON vrint builtins and intrinsics

2012-12-05 Thread Ramana Radhakrishnan
On Thu, Nov 29, 2012 at 2:27 PM, Kyrylo Tkachov kyrylo.tkac...@arm.com wrote: Hi all, This patch adds an effective target check to the testsuite for ARMv8 NEON support. A corresponding add_options procedure is added. This is used by the AArch32 NEON intrinsics tests. An entry in the

[PATCH, rs6000] Enable ASAN build on powerpc*-linux

2012-12-05 Thread Peter Bergner
Below are the port changes to enable building ASAN on powerpc*-linux. The libsanitizer changes required for powerpc*-linux have already been committed. This passes bootstrap and regtesting with no regressions and we also pass the two ASAN test suite test cases. Ok for mainline? Peter

Re: [lra] a patch to fix ppc bootstrap failure

2012-12-05 Thread Michael Meissner
This is the file that causes the boostrap to fail if --enable-decimal-float is used as a configuration option on the LRA branch. You need to compile this in 32-bit mode with either -mcpu=power7, -mcpu=power6, or -mhard-dfp to enable the decimal instructions. I used -m32 -O2 -O3 -mcpu=power6.

Backported r185231 from trunk to google/gcc-4_7. (issue 6888044)

2012-12-05 Thread asharif
Reviewers: xur, davidxl, Message: Please take a look at this patch. Description: 2012-03-12 Richard Guenther rguent...@suse.de * gthr.h (__GTHREAD_MUTEX_INIT_FUNCTION): Adjust specification. * gthr-posix.h (__GTHREAD_MUTEX_INIT_FUNCTION): Define.

[asan] Fix up dg-set-target-env-var

2012-12-05 Thread Jakub Jelinek
Hi! On Tue, Dec 04, 2012 at 10:00:35AM -0800, Wei Mi wrote: I updated the patch according to the comments. Please take a look. Thanks. I've been testing your patch plus all the patches from me posted yesterday just with asan.exp testing. While doing full pair of bootstraps/regtests, I've

Re: [PR rtl-optimization/55604]: fix ICE in remove_some_program_points_and_update_live_ranges

2012-12-05 Thread Steven Bosscher
On Wed, Dec 5, 2012 at 9:47 PM, Aldy Hernandez wrote: Steven, go right ahead. Let me know when you commit so I can close the PR. Thanks, committed as r194230 (patch) and r194231 (test case) after bootstraptest on x86_64-unknown-linux-gnu. Ciao! Steven

Re: [asan] Fix up dg-set-target-env-var

2012-12-05 Thread Mike Stump
On Dec 5, 2012, at 3:28 PM, Jakub Jelinek ja...@redhat.com wrote: Here is an attempt to fix that up. Ok for trunk? Ok.

[lra] a tiny patch to fix ARM bootstrap

2012-12-05 Thread Vladimir Makarov
The following tiny patch is to fix ARM bootstrap failure. The patch was successfully bootstrapped on ARM. Committed as rev. 194228. 2012-12-05 Vladimir Makarov vmaka...@redhat.com * lra-constraints.c (check_and_process_move): Add ATTRIBUTE_UNUSED to parameter sec_mem_p.

Re: [committed] Fix call branch shortening on PA

2012-12-05 Thread John David Anglin
On Mon, 12 Nov 2012, John David Anglin wrote: The attached change fixes PR target/55195. The attached change updates the above fix. It results in slightly better code being generated by genattrab. However, the main reason for the change is that eliminating the use of match_test makes the fix

libgo patch committed: Clean up directory reading code

2012-12-05 Thread Ian Lance Taylor
This patch to libgo cleans up the directory reading code. It now calls Entersyscall and Exitsyscall around calls to pathconf and closedir, which are necessary when using a fused file system. It avoids a minor race condition calling pathconf. It generally neatens the code. Bootstrapped and ran

Re: [lra] a patch to fix ppc bootstrap failure

2012-12-05 Thread Vladimir Makarov
On 12-12-05 5:51 PM, Michael Meissner wrote: This is the file that causes the boostrap to fail if --enable-decimal-float is used as a configuration option on the LRA branch. You need to compile this in 32-bit mode with either -mcpu=power7, -mcpu=power6, or -mhard-dfp to enable the decimal

[PR libmudflap/53952] don't check access to non-mem decls

2012-12-05 Thread Alexandre Oliva
SRA (and perhaps other passes?) introduce “addressable” MEM_REFs to variables that were not addressable at the time mudflap1 ran registering valid memory ranges; when mudflap2 ran to emit the checks, it found such MEM_REFs, marking the variables as addressable and emitting checks that will fail at

[mudflap] fix infinite recursion in verbose trace

2012-12-05 Thread Alexandre Oliva
mudflap's free overrider, when verbose traces enabled, calls output functions that, at least on the version of glibc I'm using, calls free recursively. Since it happens to be free(NULL), it's quite easy to fix this problem with the following simple patch. Ok to install? Avoid infinite recursion

Go compiler patch: Fix check for parenthesized go/defer arg

2012-12-05 Thread Ian Lance Taylor
My patch of a couple of days ago to prohibit a parenthesized argument to a go or defer statement was faulty. I tested whether the expression starts with a parenthesis, but of course there are valid function calls that start with a parenthesis but for which the entire expression is not

Another merge from trunk to gccgo branch

2012-12-05 Thread Ian Lance Taylor
I merged revision 194240 from trunk to the gccgo branch. Ian

Re: [PATCH] Fix PR55599/sanitizer by disabling static libasan on darwin

2012-12-05 Thread Alexander Potapenko
In fact nothing prevents GCC from having a linkable static ASan runtime. The reason for the static library being unusable is not in the dynamic runtime itself, but in mach_override not working well with other GCC libraries (it is unable to parse some function prologues). Because ASan is

[C++ PATCH] Handle VECTOR_CSTs in adjust_temp_type (PR c++/55573)

2012-12-05 Thread Jakub Jelinek
Hi! With Marc's recent changes to fold vector CONSTRUCTORs into VECTOR_CSTs if possible, we now ICE in adjust_temp_type, because the type of VECTOR_CST is not SCALAR_TYPE_P. Either we can handle VECTOR_CSTs directly (in that case ignore_overflows is also called on each VECTOR_CST constant, but

[C++ PATCH] Fix build_noexcept_spec ICE (PR c++/54207)

2012-12-05 Thread Jakub Jelinek
Hi! We ICE on the following testcase, because perform_implicit_conversion_flags doesn't guarantee the type of the returned value is boolean_type_node, if it is some other type compatible with it (in the same_type_p sense), then simple == boolean_true_node and == boolean_false_node comparisons