Re: [PATCH] Do not erase warning data in gimple_set_location

2022-06-14 Thread Eric Botcazou via Gcc-patches
> Hmm, I think instead of special-casing UNKNOWN_LOCATION > what gimple_set_location should probably do is either not copy > warnings at all or union them. Btw, gimple_set_location also > removes a previously set BLOCK (but gimple_set_block preserves > the location locus and diagnostic override).

Re: [PATCH] PR middle-end/105874: Use EXPAND_MEMORY to fix ada bootstrap.

2022-06-13 Thread Eric Botcazou via Gcc-patches
new optimization doesn't trigger rather than a > condition that will always require memory? It may indeed be too big a hammer. Roger, would it be sufficient to use EXPAND_MEMORY only when must_force_mem computed a few lines below if true? -- Eric Botcazou

Re: [PATCH] Introduce -finstrument-functions-once

2022-06-13 Thread Eric Botcazou via Gcc-patches
> So that also applies to > > "... and the second profiling function is called before the exit > +corresponding to this first entry" > > specifically "corresponding to this first entry"? As if the second > entry exits first will that call the second profiling function or will > it really be

Re: New "Diving into GCC internals" section in newbies guide

2022-06-10 Thread Eric Botcazou via Gcc
> Hope this is helpful; please let me know if you see any mistakes, or if > there's room for improvement Nice work! In the "inside cc1" chapter, I think that IR is usually meant for "Intermediate Representation" rather than "Internal Representation" in this context. -- Eric Botcazou

[PATCH] Do not erase warning data in gimple_set_location

2022-06-10 Thread Eric Botcazou via Gcc-patches
Hi, gimple_set_location is mostly invoked on newly built GIMPLE statements, so their location is UNKNOWN_LOCATION and setting it will clobber the warning data of the passed location, if any. Tested on x86-64/Linux, OK for mainline and 12 branch? 2022-06-10 Eric Botcazou

Re: DWARF question about size of a variable

2022-06-08 Thread Eric Botcazou via Gcc
ormation available. If you try to debug at an optimization level higher than -Og, your mileage may vary and depend on various factors; that's apparently an example where the debug info is slightly less damaged at -O3 on x86 than on PowerPC, but there are probably cases where this will be the

Re: [PATCH] PR middle-end/105874: Use EXPAND_MEMORY to fix ada bootstrap.

2022-06-08 Thread Eric Botcazou via Gcc-patches
74 > * gcc/expr.cc (expand_expr_real_1) : New local > variable tem_modifier for calculating the expand_modifier enum to > use for expanding tem. If tem is a VAR_DECL, use EXPAND_MEMORY. gcc/ prefix to be stripped -- Eric Botcazou

Re: [PATCH] PR middle-end/105853: Call store_constructor directly from calls.cc.

2022-06-07 Thread Eric Botcazou via Gcc-patches
check with no new failures. I've also confirmed that on a > cross-compiler to arm-linux-gnueabihf --with-arch=armv6 this fixes the > target specific ICE in PR105856. The make check is currently running > with --target_board=unix{-m32}, OK for mainline if that also passes? Yes, it looks quite uncontroversial if you ask me and will unblock people. -- Eric Botcazou

[PATCH] Introduce -finstrument-functions-once

2022-05-24 Thread Eric Botcazou via Gcc-patches
coverage, so the overhead must be minimum and, in particular, there is no protection against data races so the "once" moniker is imprecise. Tested on x86-64/Linux, OK for the mainline? 2022-05-24 Eric Botcazou * common.opt (finstrument-functions): Set expl

Re: [PATCH] Add divide by zero side effect.

2022-05-20 Thread Eric Botcazou via Gcc-patches
> I think side-effect captures it quite well even if it overlaps with a term > used in language standards. IMO it's very confusing, see the subject: "Add divide by zero side effect". The only side effect of dividing by zero is (possibly) raising a trap. -- Eric Botcazou

Re: [PATCH] Add divide by zero side effect.

2022-05-20 Thread Eric Botcazou via Gcc-patches
. > Please don't overload 'side effect' if possible. Agreed, "side effect" is something precisely defined in the compiler context. -- Eric Botcazou

[c-family] Reduce usage of limited_with clauses with -fdump-ada-spec

2022-05-18 Thread Eric Botcazou via Gcc-patches
. Tested on x86-64/Linux, applied on mainline and 12 branch. 2022-05-18 Eric Botcazou * c-ada-spec.cc (dump_ada_node) : Deal with usual floating-point complex types. : Do not use limited_with clause if the designated type is a scalar type. -- Eric Botcazoudiff

Re: [PATCH] Do not use DW_OP_not for TRUTH_NOT_EXPR in conditional expressions

2022-05-16 Thread Eric Botcazou via Gcc-patches
t > (the RTL case does). > So I think at least for now it is ok. Thanks. Any objection to me installing it on the 12 branch as well? -- Eric Botcazou

Re: [PATCH] Do not use DW_OP_not for TRUTH_NOT_EXPR in conditional expressions

2022-05-16 Thread Eric Botcazou via Gcc-patches
.value 0x1 .byte 0x34# DW_OP_lit4 .byte 0x16# DW_OP_swap .byte 0x13# DW_OP_drop * dwarf2out.c (loc_list_from_tree_1) : Do a logical instead of a bitwise negation. : Swap the operands if the condition is TRUTH_NOT_EXPR. -- Eric B

Re: [PATCH] Fix wrong SRA with VIEW_CONVERT_EXPR and reverse SSO

2022-05-13 Thread Eric Botcazou via Gcc-patches
> OK. Possibly also qualifies for the branch(es) as wrong-code fix. Thanks. It's not a regression, but I can indeed put in on recent branches. -- Eric Botcazou

Re: [PATCH] Do not use DW_OP_not for TRUTH_NOT_EXPR in conditional expressions

2022-05-13 Thread Eric Botcazou via Gcc-patches
global tree? Yes, it's in the TYPE_SIZE of a global type: package P is type Rec (Defined : Boolean) is record case Defined is when false => null; when others => I : Integer; end case; end record; A : access Rec; end P; -- Eric Botcazou

[PATCH] Do not use DW_OP_not for TRUTH_NOT_EXPR in conditional expressions

2022-05-13 Thread Eric Botcazou via Gcc-patches
Hi, DW_OP_not is a bitwise, not a logical NOT, so it computes the wrong result in a DWARF conditional expression. Tested (GCC + GDB° on x86-64/Linux, OK for the mainline? 2022-05-13 Eric Botcazou * dwarf2out.c (loc_list_from_tree_1) : Swap the operands if the condition

[PATCH] Fix wrong SRA with VIEW_CONVERT_EXPR and reverse SSO

2022-05-13 Thread Eric Botcazou via Gcc-patches
, so the patch makes sure that it does only when the SSO is the same on both side. Bootstrapped/regtested on x86-64/Linux, OK for the mainline? 2022-05-13 Eric Botcazou * tree-sra.c (sra_modify_assign): Check that the scalar storage order is the same on the LHS and RHS before

[SPARC] Fix PR target/105292

2022-05-10 Thread Eric Botcazou via Gcc-patches
on SPARC/Solaris, applied to all active branches. 2022-05-10 Eric Botcazou PR target/105292 * config/sparc/sparc.cc (sparc_vectorize_vec_perm_const): Return true only for 8-byte vector modes. 2022-05-10 Eric Botcazou * gcc.target/sparc/20220510-1.c: New test

Re: [PATCH] rtlanal: Fix up replace_rtx [PR105333]

2022-04-22 Thread Eric Botcazou via Gcc-patches
> 2022-04-22 Jakub Jelinek > > PR rtl-optimization/105333 > * rtlanal.cc (replace_rtx): Use simplify_subreg or > simplify_unary_operation if CONST_SCALAR_INT_P rather than just > CONST_INT_P. > > * gcc.dg/pr105333.c: New test. OK, thanks. -- Eric Botcazou

Re: [PATCH] simplify-rtx: Don't assume shift count has the same mode as the shift [PR105247]

2022-04-14 Thread Eric Botcazou via Gcc-patches
* gcc.c-torture/compile/pr105247.c: New test. OK, thanks. -- Eric Botcazou

Re: [PATCH] Disable float128 tests on VxWorks, PR target/104253.

2022-04-07 Thread Eric Botcazou via Gcc-patches
; If it does fix the failure, can I apply the patch to the master branch and > backport it to GCC 11 and GCC 10? Sorry about the breakage. That would be perfect, thanks in advance. -- Eric Botcazou

Re: [wwwdocs] Add Ada's changelog entry

2022-04-04 Thread Eric Botcazou via Gcc-patches
eed added. The support was already present in GCC 11, the criterion being the use of the 'Max_Integer_Size attribute in system.ads. -- Eric Botcazou

[c-family] Fix issue for pointers to anonymous types with -fdump-ada-spec

2022-03-25 Thread Eric Botcazou via Gcc-patches
This used to work long ago but broke at some point, so I'm applying the fix only on the mainline, all the more so that it deals the "section" attribute. Tested on x86-64/Linux, applied on the mainline. 2022-03-25 Eric Botcazou c-family/ * c-ada-spec.cc (dump_ada_imp

[Ada] Fix PR ada/104767

2022-03-24 Thread Eric Botcazou via Gcc-patches
This is a regression present on mainline, 11 and 10 branches. When the serial port is closed, we need to ensure that the port handle is properly reset for it to be detected as closed. Tested on x86-64/Linux, applied on mainline, 11 and 10 branches. 2022-03-24 Pascal Obry PR

Re: [PATCH] ifcvt, v2: Punt if not onlyjump_p for find_if_case_{1, 2} [PR104814]

2022-03-14 Thread Eric Botcazou via Gcc-patches
L. > > * gcc.c-torture/execute/pr104814.c: New test. OK, thanks. -- Eric Botcazou

Re: [PATCH] ifcvt: Punt if not onlyjump_p for find_if_case_{1, 2} [PR104814]

2022-03-13 Thread Eric Botcazou via Gcc-patches
B_END (test_bb) || !onlyjump_p (BB_END (test_bb))) > +return FALSE; > + >/* ELSE has one successor. */ >if (!single_succ_p (else_bb)) > return FALSE; Are the !BB_END tests really necessary? cond_exec_process_if_block has the same test on onlyjump_p without it. Likewise for noce_find_if_block. -- Eric Botcazou

Re: [PATCH v3] x86: Disable SSE on unwind-c.c and unwind-dw2.c

2022-03-08 Thread Eric Botcazou via Gcc-patches
> Disabling sse/sse2 might be a problem especially on mingw where we need to > restore SSE registers in the EH return, no? Not in 32-bit mode I think, all XMM registers are call used. -- Eric Botcazou

Re: [PATCH] x86: Disable SSE on unwind-c.c and unwind-dw2.c

2022-03-06 Thread Eric Botcazou via Gcc-patches
> PR target/104781 > * config.host (tmake_file): Add i386/32/t-eh-return-no-sse for > 32-bit x86 Cygwin and Solaris. > * config/i386/32/t-eh-return-no-sse: New file. What about MinGW here? -- Eric Botcazou

Re: [PATCH] PR middle-end/80270: ICE in extract_bit_field_1

2022-02-28 Thread Eric Botcazou via Gcc-patches
is a hard > register, copy it to a pseudo before calling simplify_gen_subreg. Looks good to me, but why not using copy_to_reg here? -- Eric Botcazou

Re: qual_union_type help

2022-02-23 Thread Eric Botcazou via Gcc-rust
in an object (SUBSTITUTE_PLACEHOLDER_IN_EXPR). You can presumably do it through the gimplification hook. -- Eric Botcazou -- Gcc-rust mailing list Gcc-rust@gcc.gnu.org https://gcc.gnu.org/mailman/listinfo/gcc-rust

Re: qual_union_type help

2022-02-23 Thread Eric Botcazou via Gcc
in an object (SUBSTITUTE_PLACEHOLDER_IN_EXPR). You can presumably do it through the gimplification hook. -- Eric Botcazou

Re: qual_union_type help

2022-02-23 Thread Eric Botcazou via Gcc
discriminant since it is assigned in the CONSTRUCTOR, so the gimplifier is indeed presumably not wired to eliminate them on its own. -- Eric Botcazou

Re: qual_union_type help

2022-02-23 Thread Eric Botcazou via Gcc-rust
discriminant since it is assigned in the CONSTRUCTOR, so the gimplifier is indeed presumably not wired to eliminate them on its own. -- Eric Botcazou -- Gcc-rust mailing list Gcc-rust@gcc.gnu.org https://gcc.gnu.org/mailman/listinfo/gcc-rust

Re: [PATCH] i386: Skip decimal float vector modes in type_natural_mode [PR79754]

2022-02-17 Thread Eric Botcazou via Gcc-patches
} } */ instead of just: /* { dg-do compile } * -- Eric Botcazou

Re: libgo patch committed: Update to Go1.18beta2 release

2022-02-17 Thread Eric Botcazou via Gcc-patches
> I've committed this patch to fix these problems. Bootstrapped and ran > Go testsuite on x86_64-pc-linux-gnu and x86_64-solaris. Fine by me, thanks for the quick turnaround! -- Eric Botcazou

Re: libgo patch committed: Update to Go1.18beta2 release

2022-02-15 Thread Eric Botcazou via Gcc-patches
31 | return write1(fd, p, n) |^ gmake[3]: *** [runtime.lo] Error 1 -- Eric Botcazou

Re: [PATCH 1/4][RFC] middle-end/90348 - add explicit birth

2022-02-08 Thread Eric Botcazou via Gcc-patches
> I don't think an option to go to pre-12 behavior is useful. I'll > postpone the series to stage1. FWIW fine with me. -- Eric Botcazou

Re: [PATCH 1/4][RFC] middle-end/90348 - add explicit birth

2022-02-05 Thread Eric Botcazou via Gcc-patches
e-end/90348 now is (it's labeled a 9/10/11/12 regression). At a minimum, I think that a switch to revert to the pre-12 behavior would be in order if the patch goes in now. -- Eric Botcazou

[patch] Fix PR debug/104366

2022-02-04 Thread Eric Botcazou via Gcc-patches
Hi, this completes my fix for PR debug/101947 by emptying the base_types vector before (re)populating it. Tested on x86_64-suse-linux, OK for the mainline? 2022-02-04 Eric Botcazou PR debug/104366 * dwarf2out.cc (dwarf2out_finish): Empty base_types

Re: [PATCH] match.pd: Fix up 1 / X for unsigned X optimization [PR104280]

2022-02-04 Thread Eric Botcazou via Gcc-patches
call_exceptions check, can you swap those two? But !flag_non_call_exceptions is (almost) always true for the C family of languages, so you're going to penalize them by doing this. > And similarly, TYPE_PRECISION (type) > 1 check is very cheap, can > it be done before the && !integer_zerop (@1) line? Yes, it clearly belongs there. -- Eric Botcazou

Re: [PATCH] match.pd: Fix up 1 / X for unsigned X optimization [PR104280]

2022-02-04 Thread Eric Botcazou via Gcc-patches
X / -X is -1): Likewise. (1 / X -> X == 1): Likewise. -- Eric Botcazou diff --git a/gcc/match.pd b/gcc/match.pd index b942cb2930a..4b695db7a25 100644 --- a/gcc/match.pd +++ b/gcc/match.pd @@ -401,27 +401,35 @@ DEFINE_INT_AND_FLOAT_ROUND_FN (RINT) /* X / bool_range_Y is X. */

Re: [PATCH] match.pd: Fix up 1 / X for unsigned X optimization [PR104280]

2022-02-03 Thread Eric Botcazou via Gcc-patches
t): $(srcdir)/libgcc2.c $(gcc_s_compile) -DL$* -c $< \ $(LIB2_DIVMOD_EXCEPTION_FLAGS) libgcc-s-objects += $(lib2-divmod-s-o) endif so it seems like we were about to reinvent the wheel here. ;-) -- Eric Botcazou

Re: [PATCH] match.pd: Fix up 1 / X for unsigned X optimization [PR104280]

2022-02-03 Thread Eric Botcazou via Gcc-patches
rter because of the > optimization, if it is not, then it will be cheaper. The hundreds of people having worked on GCC for the past 30 years must have been stupid then, how come have they missed such a great optimization? ;-) -- Eric Botcazou

Re: [PATCH] match.pd: Fix up 1 / X for unsigned X optimization [PR104280]

2022-02-03 Thread Eric Botcazou via Gcc-patches
> Well, yes, we have to fix it. I will share my thoughts when coming > along the bugreport. IMO we should simply scrap it, as it does not serve any useful purpose, breaks a very ancient and useful idiom and also introduces an artificial discrepancy between 1/X and 2/X for example. --

Re: [PATCH] match.pd: Fix up 1 / X for unsigned X optimization [PR104280]

2022-02-02 Thread Eric Botcazou via Gcc-patches
> Since I didn't see anyone responding to this problem, I filed PR > 104356 to record the regression. > And yes this should be handled correctly. Thanks. Note that we have an example of this in libgcc/libgcc2.c too. -- Eric Botcazou

[SPARC] Use V8+ default in 32-bit mode on SPARC64/Linux

2022-01-31 Thread Eric Botcazou via Gcc-patches
This is what has been done for ages on SPARC/Solaris and makes it possible to use 64-bit atomic instructions even in 32-bit mode. Tested on SPARC64/Linux, applied on the mainline. 2022-01-31 Eric Botcazou PR target/104189 * config/sparc/linux64.h (TARGET_DEFAULT): Add

Re: [PATCH] match.pd: Fix up 1 / X for unsigned X optimization [PR104280]

2022-01-31 Thread Eric Botcazou via Gcc-patches
ave installed the attached testcase, which now fails because of the change. * gnat.dg/div_zero.adb: New test. -- Eric Botcazou-- { dg-do run } -- This test requires architecture- and OS-specific support code for unwinding -- through signal frames (typically located in *-unwind.h) to p

[Ada] Fix PR ada/104258

2022-01-28 Thread Eric Botcazou via Gcc-patches
This is a regression present on mainline and 11 branch: the new transformation applied during expansion by Narrow_Large_Operation would incorrectly perform name resolution for the operator again. Tested on x86_64-suse-linux, applied on mainline and 11 branch. 2022-01-28 Eric Botcazou

Re: Difference between 32-bit SPARCv9 and SPARCv8+?

2022-01-23 Thread Eric Botcazou via Gcc-patches
> Does anyone know the reasoning behind this? Solaris preserves the full 64-bit registers in 32-bit mode. -- Eric Botcazou

Re: Difference between 32-bit SPARCv9 and SPARCv8+?

2022-01-23 Thread Eric Botcazou via Gcc-patches
NC_COMPARE_AND_SWAP_1 1 > #define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_2 1 > #define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4 1 > glaubitz@gcc202:~$ > > Is this intentional? If yes, what is the exact difference between V8+ and > 32-bit V9? V8+ requires the full 64-bit registers to be preserved by the kernel, whereas 32-bit V9 does not. -- Eric Botcazou

Re: [ANNOUNCEMENT] Mass rename of C++ .c files to .cc suffix is going to happen on Jan 17 evening UTC TZ

2022-01-18 Thread Eric Botcazou via Gcc
> Release managers. They certainly have authority on the timing, but not on the contents. > Working on that right now, sorry.. OK, thanks in advance. -- Eric Botcazou

Re: [ANNOUNCEMENT] Mass rename of C++ .c files to .cc suffix is going to happen on Jan 17 evening UTC TZ

2022-01-18 Thread Eric Botcazou via Gcc-patches
> Release managers. They certainly have authority on the timing, but not on the contents. > Working on that right now, sorry.. OK, thanks in advance. -- Eric Botcazou

Re: [ANNOUNCEMENT] Mass rename of C++ .c files to .cc suffix is going to happen on Jan 17 evening UTC TZ

2022-01-18 Thread Eric Botcazou via Gcc-patches
nd should be reverted ASAP. -- Eric Botcazou

Re: [ANNOUNCEMENT] Mass rename of C++ .c files to .cc suffix is going to happen on Jan 17 evening UTC TZ

2022-01-18 Thread Eric Botcazou via Gcc
nd should be reverted ASAP. -- Eric Botcazou

Re: [patch] Fix reverse SSO issues in IPA-SRA

2022-01-14 Thread Eric Botcazou via Gcc-patches
> Yes, it must still be copied. OK, revised patch attached, with testcases but they fail only on the 10 and 11 branches because of a change in the heuristics apparently. * ipa-param-manipulation.c (ipa_dump_adjusted_parameters): Dump reverse flag as "reverse" for the sake of

Re: [patch] Fix reverse SSO issues in IPA-SRA

2022-01-12 Thread Eric Botcazou via Gcc-patches
need to check > that the flags are the same too. That's the change I don't know how to cover and I agree that the check looks in order, but I presume that the flag still needs to be copied onto "copy"? -- Eric Botcazou

[patch] Fix reverse SSO issues in IPA-SRA

2022-01-11 Thread Eric Botcazou via Gcc-patches
branches? 2022-01-11 Eric Botcazou * ipa-param-manipulation.c (ipa_dump_adjusted_parameters): Dump reverse flag as "reverse" for the sake of consistency. * ipa-sra.c: Fix copyright year. (ipa_sra_function_summaries::duplicate): Copy the re

[patch] Fix PR target/103465

2022-01-10 Thread Eric Botcazou via Gcc-patches
implementation for SEH. Tested on x86-64/Windows, OK for all active branches? 2022-01-10 Eric Botcazou PR target/103465 * coretypes.h (unwind_info_type): Swap UI_SEH and UI_TARGET. -- Eric Botcazoudiff --git a/gcc/coretypes.h b/gcc/coretypes.h index 5d0fc1d915d..506cd334401 100644

Re: reordering of trapping operations and volatile

2022-01-08 Thread Eric Botcazou
losing these hours is to debug the code at -O0. -- Eric Botcazou

Re: reordering of trapping operations and volatile

2022-01-08 Thread Eric Botcazou
> Yes, although I think potentially trapping ops > are not moved before calls (as this would be > incorrect). So do you think it would be feasable > to prevent this for volatile too? Feasible probably, but why would this be desirable in C? It's not Java! -- Eric Botcazou

Re: [PATCH] testsuite: Robustify aarch64/simd tests against more aggressive DCE

2021-12-16 Thread Eric Botcazou via Gcc-patches
t; That way we don't lose the existing tests. Frankly I'm not quite sure of what we can lose by adding a LHS here, can you elaborate a bit? We would need a solution that works out of the box with our compiler in the future, i.e. without having to tweak 50 testcases again. -- Eric Botcazou

Re: [PATCH] fix spelling of -linker-output-auto-nolto-rel

2021-12-03 Thread Eric Botcazou via Gcc-patches
> The transposition nolto -> notlo is confusing and it makes the long > name even harder to read than it already is - I kept reading it as > "not lo" until I realized it was a simply typo. Thanks for catching this! -- Eric Botcazou

Fix PR target/103274

2021-11-30 Thread Eric Botcazou via Gcc-patches
on mainline, 11 and 10 branches as obvious. 2021-11-30 Eric Botcazou PR target/103274 * config/i386/i386.c (ix86_output_call_insn): Beef up comment about nops emitted with SEH. * config/i386/winnt.c (i386_pe_seh_unwind_emit): When switching to the cold section

Re: atomic_load

2021-11-26 Thread Eric Botcazou
ce is again a blatant overstatement but I agree that the alignment caveat ought to be documented. Please suggest a wording to that effect and post a patch onto the gcc-patches@ ML. Thanks in advance. -- Eric Botcazou

Re: [PATCH] Fix spelling of ones' complement.

2021-11-16 Thread Eric Botcazou
change none, any intermediate stage is worse than the current situation, which is probably OK for 99.99% of people. -- Eric Botcazou

Re: [PATCH 06/15] visium: Fix non-robust split condition in define_insn_and_split

2021-11-16 Thread Eric Botcazou via Gcc-patches
gt; *lshr3_insn, *trunchiqi2_insn, *truncsihi2_insn, > *truncdisi2_insn, *extendqihi2_insn, *extendqisi2_insn, > *extendhisi2_insn, *extendsidi2_insn, *zero_extendqihi2_insn, >*zero_extendqisi2_insn, *zero_extendsidi2_insn): Fix split condition. OK for mainline, thanks. -- Eric Botcazou

Re: [PATCH] dwarf2out: Fix up field_byte_offset [PR101378]

2021-11-10 Thread Eric Botcazou via Gcc-patches
;= TYPE_SIZE (TREE_TYPE (bf)). -- Eric Botcazou

Re: [PATCH] Dump static chain for cgraph_node.

2021-11-08 Thread Eric Botcazou via Gcc-patches
OPERATOR (decl) ? "replaceable_" : ""); > > + function *fn = DECL_STRUCT_FUNCTION (decl); > + if (fn != NULL && fn->static_chain_decl) > +fprintf (f, " static_chain_decl"); > + > fprintf (f, "\n"); > > if (thunk) static_chain_decl is not a flag though, it's a tree. -- Eric Botcazou

Re: [i386] Fix couple of issues in large PIC model on x86-64/VxWorks

2021-11-08 Thread Eric Botcazou via Gcc-patches
> LGTM for the generic part, no idea for VxWorks. Thanks. The VxWorks-specific hunk is needed to make GCC compatible with the system compiler on this architecture (LLVM) and I have CCed Olivier. -- Eric Botcazou

[ping] Small adjustments to Aarch64 and i386 back-ends

2021-11-07 Thread Eric Botcazou via Gcc-patches
For the Aarch64 back-end: https://gcc.gnu.org/pipermail/gcc-patches/2021-October/580952.html For the i386 back-end: https://gcc.gnu.org/pipermail/gcc-patches/2021-October/580992.html Thanks in advance. -- Eric Botcazou

Update documentation of %X spec after 27 years

2021-10-28 Thread Eric Botcazou via Gcc-patches
Handle -Wl, and -Xlinker similar to -l, i.e., preserve their order with respect to linker input files. Technically speaking, the arguments of -l, -Wl and -Xlinker are input files. Tested on x86-64/Linux, applied on all active branches as obvious. 2021-10-28 Eric Botcazou * doc/invok

Re: Fix PR middle-end/102764

2021-10-21 Thread Eric Botcazou via Gcc-patches
> 2021-10-20 Eric Botcazou > > PR middle-end/102764 > * cfgexpand.c (expand_gimple_basic_block): Disregard a final debug > statement to reset the current location for the outgoing edges. This apparently breaks -fcompare-debug with -m32 so I have made it more r

[Ada] Avoid exception propagation during bootstrap

2021-10-20 Thread Eric Botcazou via Gcc-patches
This addresses PR ada/100486, which is the bootstrap failure of GCC 11 for 32- bit Windows in the MSYS setup. The PR shows that we cannot rely on exception propagation being operational during the bootstrap, at least on the 11 branch, so fix this by removing the problematic raise statement.

Fix PR middle-end/102764

2021-10-20 Thread Eric Botcazou via Gcc-patches
/Linux, applied on the mainline as obvious. 2021-10-20 Eric Botcazou PR middle-end/102764 * cfgexpand.c (expand_gimple_basic_block): Disregard a final debug statement to reset the current location for the outgoing edges. 2021-10-20 Eric Botcazou * gcc.dg

[patch] Tame if-combining when loop unswitching is enabled

2021-10-15 Thread Eric Botcazou via Gcc-patches
) of the conditions. Bootstrapped/regtested on x86-64/Linux, OK for the mainline? 2021-10-15 Eric Botcazou * tree-ssa-ifcombine.c: Include cfgloop.h. (operand_loop_depth): New function. (ifcombine_ifandif): When loop unswitching is enabled, do not merge conditions whose

[SPARC] Fix PR target/102588

2021-10-12 Thread Eric Botcazou via Gcc-patches
We need a 32-byte wide integer mode (OImode) in order to handle structure returns in the 64-bit ABI. Bootstrapped/regtested on SPARC/Solaris and SPARC64/Linux, applied on the mainline, 11 and 10 branches. 2021-10-12 Eric Botcazou PR target/102588 * config/sparc/sparc

[i386] Fix couple of issues in large PIC model on x86-64/VxWorks

2021-10-05 Thread Eric Botcazou via Gcc-patches
@GOTOFF in large model even for RTP, so we do the same. Tested on x86-64/Linux and VxWorks, OK for the mainline? 2021-10-05 Eric Botcazou * config/i386/i386.c (legitimize_pic_address): Adjust comment and use the REG argument on the CM_LARGE_PIC code path as well

[Aarch64] Do not define DONT_USE_BUILTIN_SETJMP

2021-10-05 Thread Eric Botcazou via Gcc-patches
Hi, we have been using an Ada compiler for the Aarch64 architecture configured with SJLJ exceptions as for the other architectures for some time, and have not run into any problems up to now so the setting looks obsolete. OK for the mainline? 2021-10-05 Eric Botcazou * config

Remove dead code in config/rs6000/vxworks.h

2021-10-04 Thread Eric Botcazou via Gcc-patches
. Applied on mainline and 11 branch as obvious. 2021-10-04 Eric Botcazou * config/rs6000/vxworks.h (TARGET_INIT_LIBFUNCS): Delete. -- Eric Botcazoudiff --git a/gcc/config/rs6000/vxworks.h b/gcc/config/rs6000/vxworks.h index 5facbbb392f..d8ecc0296c8 100644 --- a/gcc/config/rs6000/vxworks.h

Re: [patch] Fix ICE with stack checking emulation at -O2

2021-10-01 Thread Eric Botcazou via Gcc-patches
> OK though I wonder if you could get away with using > built_function_type (void_type_node, NULL_TREE); aka > a non-prototype void f(). See below. > Did you track down what changed the requirement? The new function-abi.cc module, so I'd rather have a correct prototype. -- Eric Botcazou

[patch] Fix ICE with stack checking emulation at -O2

2021-10-01 Thread Eric Botcazou via Gcc-patches
as libcalls but they now require a proper function type at -O2 or above. Tested on powerpc-elf, OK for mainline, 11 and 10 branches? 2021-10-01 Eric Botcazou * explow.c: Include langhooks.h. (set_stack_check_libfunc): Build a proper function type. -- Eric Botcazoudiff --git

Re: [Ada] Add support for PE-COFF PIE to System.Dwarf_Line

2021-09-30 Thread Eric Botcazou via Gcc-patches
ted it, as well as the subsequent adjustments, onto the 11 branch since PIE is the default for recent binutils. -- Eric Botcazou

Re: [Ada] Add DWARF 5 support to System.Dwarf_Line

2021-09-30 Thread Eric Botcazou via Gcc-patches
since DWARF-5 is the default there. -- Eric Botcazou

[testsuite] Fix no_fsanitize_address effective target

2021-09-21 Thread Eric Botcazou
d failures 1011 -# of unsupported tests 2631 +# of unsupported tests 2628 and properly disabling them on SPARC64/Linux. Applied on the mainline, 11 and 10 branches as obvious. 2021-09-21 Eric Botcazou * lib/target-supports.exp (no_fsanitize_address): Add mi

[ping] Fix PR C++/64697

2021-09-20 Thread Eric Botcazou
This fixes a regression for MinGW with recent binutils: https://gcc.gnu.org/pipermail/gcc-patches/2021-September/578756.html Thanks in advance. -- Eric Botcazou

[patch] Fix PR rtl-optimization/102306

2021-09-16 Thread Eric Botcazou
ons, which is of course not the case here. So the fix teaches try_combine to abort the combination when it is about to make a copy of volatile references to preserve them. Bootstrapped/regtested on x86-64/Linux, OK for mainline and release branches? 2021-09-16 Eric Botcazou PR

Re: [PATCH 4/4] sparc: Add NOP in stack_protect_setsi if sparc_fix_b2bst enabled

2021-09-15 Thread Eric Botcazou
on mainline and stack_protect_setsi before. -- Eric Botcazou

Re: [PATCH 3/4] sparc: Prevent atomic instructions in beginning of functions for UT700

2021-09-15 Thread Eric Botcazou
> gcc/ChangeLog: > > * config/sparc/sparc.c (sparc_do_work_around_errata): Do not begin > functions with atomic instruction in the UT700 errata workaround. OK everywhere. -- Eric Botcazou

Re: [PATCH 2/4] sparc: Skip all empty assembly statements

2021-09-15 Thread Eric Botcazou
Likewise. > + || (USEFUL_INSN_P (insn) > + && (asm_noperands (PATTERN (insn))>=0) Missing spaces around >= > +{ > + insn = next_active_insn (insn); > +} Superfluous curly braces, even for readability. -- Eric Botcazou

Re: [PATCH 1/4] sparc: Treat more instructions as load or store in errata workarounds

2021-09-15 Thread Eric Botcazou
avoid the multiple calls to get_attr_type? See div_sqrt_insn_p and fpop_insn_p for a model. -- Eric Botcazou

Re: [PATCH] sparc: Print out bit names for LEON and LEON3 with -mdebug

2021-09-15 Thread Eric Botcazou
> gcc/ChangeLog: > > * config/sparc/sparc.c (dump_target_flag_bits): Print bit names for > LEON and LEON3. OK everywhere. -- Eric Botcazou

Re: [PATCH] sparc: Add scheduling information for LEON5

2021-09-15 Thread Eric Botcazou
sparc/leon5.md: New file. OK for whatever branches you deem relevant, modulo a couple of nits: > +;; Avoid scheduling load/store, FPU, and multiplication instructions back and multiply instructions > +;; Schedule three instructions between load and dependant instruction. dependent -- Eric Botcazou

[Ada] Fix PR ada/101970

2021-09-14 Thread Eric Botcazou
This is a regression present on the mainline and 11 branch in the form of an ICE for an enumeration type with a full signed representation for its size. Tested on x86-64/Linux, applied on the mainline and 11 branch. 2021-09-14 Eric Botcazou PR ada/101970 * exp_attr.adb

[Ada] Fix inaccurate bounds in debug info for vector array types

2021-09-14 Thread Eric Botcazou
They should not be 0-based, unless the array type itself is. Tested on x86-64/Linux, applied on the mainline, 11 and 10 branches. 2021-09-14 Eric Botcazou * gcc-interface/decl.c (gnat_to_gnu_entity): For vector types, make the representative array the debug type. -- Eric

[Ada] Strengthen compatibility warning for GCC builtins

2021-09-14 Thread Eric Botcazou
This is necessary for vector builtins, which are picky about the signedness of the element type. Tested on x86-64/Linux, applied on the mainline. 2021-09-14 Eric Botcazou * libgnat/s-atopri.ads (bool): Delete. (Atomic_Test_And_Set): Replace bool with Boolean

[Ada] Implement PR ada/101385

2021-09-14 Thread Eric Botcazou
For the sake of consistency with -Wall & -w, this makes -Werror imply -gnatwe. Tested on x86-64/Linux, applied on the mainline. 2021-09-14 Eric Botcazou PR ada/101385 * doc/gnat_ugn/building_executable_programs_with_gnat.rst (-Wall): Minor fixes.

[Ada] Give more informative error message for by-reference types

2021-09-14 Thread Eric Botcazou
Recent compilers enforce more strictly the RM C.6(18) clause, which says that volatile record types are by-reference types. This changes the typical error message now given in these cases. Tested on x86-64/Linux, applied on the mainline, 11 and 10 branches. 2021-09-14 Eric Botcazou

Re: [patch] Fix PR debug/101947

2021-09-07 Thread Eric Botcazou
ay though and it's the same idiom as in prune_unused_types and dwarf2out_finish so I'm leaving it as-is. -- Eric Botcazou

[patch] Fix PR debug/101947

2021-09-07 Thread Eric Botcazou
for the mainline? 2021-09-07 Eric Botcazou PR debug/101947 * dwarf2out.c (mark_base_types): New overloaded function. (dwarf2out_early_finish): Invoke it on the COMDAT type list as well as the compilation unit, and call move_marked_base_types afterward. -- Eric Botcazoudiff

<    1   2   3   4   5   6   7   8   9   10   >