Re: [REPOST] Invalid Code when reading from unaligned zero-sized array

2013-12-13 Thread Eric Botcazou
> Does this catch C99 VLAs? I vaguely recall we have a different internal > representation of those?!? And don't those have the same problem? No, VLAs have explicit variable size so they are not problematic here. -- Eric Botcazou

Re: Two build != host fixes

2013-12-13 Thread Eric Botcazou
ch the problem earlier, that is to say stop the build of the Ada library if no configuration is selected in the Makefile. I'll try to come up with something along these lines. -- Eric Botcazou

Re: [REPOST] Invalid Code when reading from unaligned zero-sized array

2013-12-13 Thread Eric Botcazou
} > > $ gcc -O3 -S test.c > test.c: In function 'main': > test.c:4:30: error: data type of 'x' isn't suitable for a register >volatile register struct s x __asm__("eax"); Well, sure, but try with: struct s { char x[7]; }; or struct s { char y; char x[7]; }; -- Eric Botcazou

Re: [REPOST] Invalid Code when reading from unaligned zero-sized array

2013-12-13 Thread Eric Botcazou
time would make me think that this wouldn't be necessary bad... > Btw, do you think we can recover from some of the now BLKmodes by > having DECL_MODE != TYPE_MODE? Well, if you want to do that, the straightforward solution is to keep the non- BLKmode for the TYPE, put a flag on it and treat it as BLKmode when needed. -- Eric Botcazou

Re: [PATCH] Strict volatile bit-fields clean-up, Take 2

2013-12-13 Thread Eric Botcazou
-11/msg02479.html and approved here: > http://gcc.gnu.org/ml/gcc-patches/2013-12/msg00086.html Nice work btw, no regressions (at least in C and Ada) on x86, x86-64, PowerPC, IA-64, SPARC and SPARC64, which was not a given thing IMO. -- Eric Botcazou

Re: [testsuite] Fix g++.dg/cilk-plus/cilk-plus.exp

2013-12-13 Thread Eric Botcazou
FLAGS (leads to build directory names in make check output). Same on Solaris 10/SPARC. > 2013-12-13 Rainer Orth > > * g++.dg/cilk-plus/cilk-plus.exp: Properly set ld_library_path. > Use TEST_EXTRA_LIBS instead of ALWAYS_CFLAGS. Works on Solaris 10/SPARC as well, thanks. -- Eric Botcazou

Fix PR rtl-optimization/59350

2013-12-14 Thread Eric Botcazou
This fixes an oversight in the recent change to var-tracking.c http://gcc.gnu.org/ml/gcc-patches/2013-10/msg02007.html whereby union types are not treated in a consistent way. Tested on x86_64-suse-linux, applied on the mainline as obvious. 2013-12-14 Eric Botcazou * var

Re: Fix PR rtl-optimization/59350

2013-12-14 Thread Eric Botcazou
> I checked in this patch: > > http://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=3f899b097ac0188fc55c763afc1 > ccde5e2766027 > > to fix ChangeLog entries. Thanks! -- Eric Botcazou

[patch] Fix PR debug/59418

2013-12-15 Thread Eric Botcazou
for the mainline? 2013-12-15 Eric Botcazou PR debug/59418 * dwarf2cfi.c (dwarf2out_frame_debug_cfa_offset): Fix comment and clean up implementation. (dwarf2out_frame_debug_cfa_restore): Handle TARGET_DWARF_REGISTER_SPAN. (dwarf2out_frame_debug_expr

Re: [REPOST] Invalid Code when reading from unaligned zero-sized array

2013-12-16 Thread Eric Botcazou
cord types with trailing arrays, aren't realigned behind the back of the caller. The normal operating mode is to pass FALSE for this parameter. -- Eric Botcazou

Minor cleanup in expmed.c

2013-12-17 Thread Eric Botcazou
This fixes a few glitches introduced by the recent changes to the file. Tested on x86-64/Linux, applied on the mainline as obvious. 2013-12-17 Eric Botcazou * expmed.c (lowpart_bit_field_p): Fix comment. (store_bit_field_using_insv): Fix formatting. (store_bit_field

Re: [patch] Fix PR debug/59418

2013-12-18 Thread Eric Botcazou
ptimization in the compiler but... > My preference would be to keep the limit hoisted manually before the loop. ...OK, I'll leave it alone. > Otherwise looks good to me. Thanks. -- Eric Botcazou

Re: [ARM] Fix register r3 wrongly used to save ip in nested APCS frame

2013-12-18 Thread Eric Botcazou
o the stack and no varargs, save ip into the last > stack slot if r3 isn't available on entry. It would be nice if we could settle this before Christmas. ;-) -- Eric Botcazou

[ARM] Fix thinko in arm_expand_epilogue_apcs_frame

2013-12-18 Thread Eric Botcazou
-12-18 Eric Botcazou * config/arm/arm.c (arm_expand_epilogue_apcs_frame): Fix thinko. -- Eric BotcazouIndex: config/arm/arm.c === --- config/arm/arm.c (revision 206039) +++ config/arm/arm.c (working copy) @@ -26852,8 +2

Re: [PATCH] Fix ifcvt (PR rtl-optimization/58668)

2013-12-19 Thread Eric Botcazou
t in the long run we should work towards unifying the various routines and predicates dealing with "active" insns. -- Eric Botcazou

Print no_force_blk_flag for all types

2013-12-19 Thread Eric Botcazou
e of the flag, so the bits in print_node are outdated. Tested on x86_64-suse-linux, applied on the mainline as obvious. 2013-12-19 Eric Botcazou * print-tree.c (print_node) : Print no_force_blk_flag for all types. -- Eric BotcazouIndex: prin

Re: [REPOST] Invalid Code when reading from unaligned zero-sized array

2013-12-19 Thread Eric Botcazou
> In general I like the comment, and I am open for other suggestions how > to call the parameter. I think that using EXPAND in the parameter's name is confusing because it needs to be distinguished from MODIFIER and its enumeration type. And since it would be true only after calling get_inner_r

Re: [ARM] Fix register r3 wrongly used to save ip in nested APCS frame

2013-12-19 Thread Eric Botcazou
> This generates: > > sub sp, sp, #n > str ip, [sp] > > which can be done in one instruction, vis: > > str ip, [sp, #-n]! > > Very similar code to do this essentially already exists a few lines > earlier (in the args_to_push == 0 case), but needs tweaking to use >

[ARM] Fix incorrect restore of FP registers in nested APCS frame

2013-12-22 Thread Eric Botcazou
s. Tested on ARM/VxWorks (where it fixes several ACATS tests at -O2) and ARM/EABI, OK for the mainline? 2013-12-22 Eric Botcazou * config/arm/arm.c (arm_get_frame_offsets): Revamp long lines. (arm_expand_epilogue_apcs_frame): Take into account the number of bytes used t

Adjust -fdump-ada-spec after C++ decloning patch

2013-12-28 Thread Eric Botcazou
The C++ decloning patch revealed that the -fdump-ada-spec code handling constructors and destructors was too fragile. This patch revamps it. Tested on x86_64-suse-linux, applied on the mainline. 2013-12-28 Eric Botcazou c-family/ * c-ada-spec.c (print_constructor): New function

Document -fada-spec-parent

2013-12-28 Thread Eric Botcazou
Tested on x86_64-suse-linux, applied on the mainline and 4.8 branch. 2013-12-28 Eric Botcazou * doc/invoke.texi (output file options): Document -fada-spec-parent. -- Eric Botcazou Index: doc/invoke.texi === --- doc

Re: RFA: Use precision in get_mode_bounds()

2013-12-30 Thread Eric Botcazou
> Ok without the comment (this is obvious) And with an appropriate name for the variable, typically "prec". -- Eric Botcazou

Re: [PATCH] CSE fix for UNSIGNED_FLOAT (PR rtl-optimization/59647)

2013-12-31 Thread Eric Botcazou
gt; * g++.dg/opt/pr59647.C: New test. OK, thanks. -- Eric Botcazou

Re: [PATCH i386 5/8] [AVX-512] Extend vectorizer hooks.

2014-01-01 Thread Eric Botcazou
reviously, in 32-bit mode, 256-bit aggregate objects would have been given 256-bit alignment; now, they will fall back to default alignment, for example 32-bit only. -- Eric Botcazou

Re: [PATCH i386 5/8] [AVX-512] Extend vectorizer hooks.

2014-01-02 Thread Eric Botcazou
I think that this should be fixed. > Maybe we can split it and handle 256-bit aggregates separately? Probably, and we should also add a warning just before the declaration of max_align, as well as investigate whether this didn't already happen when max_align was bumped from 128 to 256. -- Eric Botcazou

Re: [PATCH i386 5/8] [AVX-512] Extend vectorizer hooks.

2014-01-02 Thread Eric Botcazou
enabled and we anticipate to use it. So the same unexpected side-effect (decreasing the alignment) probably happened when the maximum alignment was bumped from 128 to 256. -- Eric Botcazou

Re: [PATCH i386 5/8] [AVX-512] Extend vectorizer hooks.

2014-01-02 Thread Eric Botcazou
a[8] = { 1, 2, 3, 4, 5, 6, 7, 8}; -- Eric Botcazou

Re: wide-int, rtl

2014-01-02 Thread Eric Botcazou
d the fast path for the common case written down by Richard). -- Eric Botcazou

Re: [PATCH i386 5/8] [AVX-512] Extend vectorizer hooks.

2014-01-03 Thread Eric Botcazou
without vectorizing), we get for -m32: > > .align 4 > .type a, @object > .size a, 32 > a: > > which corresponds to 32bit ABI rules (we still get .align16 for 64bit ABI). Yes, but the issue is that it was 32 before so the alignment decrease is weird. -- Eric Botcazou

Re: wide-int, rtl

2014-01-05 Thread Eric Botcazou
the rest of > these things. OK, thanks for the explanation. -- Eric Botcazou

Fix PR debug/59350

2014-01-06 Thread Eric Botcazou
it, but that's very likely simpler. Tested on x86_64-suse-linux, applied on the mainline as obvious. 2014-01-06 Eric Botcazou PR debug/59350 PR debug/59510 * var-tracking.c (add_stores): Preserve the value of the source even if we don't record the

Re: [RFA][PATCH][middle-end/53623] Improve extension elimination

2014-01-08 Thread Eric Botcazou
opriate. Please include the complete backtrace with any bug report. See <http://gcc.gnu.org/bugs.html> for instructions. make[3]: *** [bid64_noncomp.o] Error 1 make[3]: *** Waiting for unfinished jobs -- Eric Botcazou

Re: [MIPS, committed] Revert some Octeon BADDU patches

2014-01-08 Thread Eric Botcazou
fixes the octeon-baddu-1.c > failures. You presumably need to apply it to the 4.8 branch as well. -- Eric Botcazou

Fix segfault with weak external symbols

2014-01-08 Thread Eric Botcazou
hokes on the NULL. This is a regression from the 4.8.x series, where the same NULL goes through the function without a hitch. Tested on x86_64-suse-linux, applied on the mainline as obvious. 2014-01-08 Eric Botcazou * cgraph.h (varpool_variable_node): Do not choke on null node.

Re: [ARM] Fix incorrect restore of FP registers in nested APCS frame

2014-01-10 Thread Eric Botcazou
with the -mfloat-abi=softfp forced in the test. Other tests in the gcc.target/arm directory do the same though. -- Eric Botcazou

Re: Resolve pr44194-1.c failure by refining scan-rtl-dump-not pattern

2014-01-10 Thread Eric Botcazou
1.c:10 704 {stack_tie} > (nil)) Please use "scratch" instead of "stack_tie" as marker, it's more general. -- Eric Botcazou

Re: [ARM] Fix incorrect restore of FP registers in nested APCS frame

2014-01-10 Thread Eric Botcazou
> Some tests can do it because they don't produce an executable. OK, there is some related dg-skip-if magic in 20090811-1.c, maybe Christophe can try that too. -- Eric Botcazou

Re: [ARM] Fix incorrect restore of FP registers in nested APCS frame

2014-01-10 Thread Eric Botcazou
> Can you not use (or add something similar to) { dg-add-options arm_neon }? Probably, yes, something like: /* { dg-do run } */ /* { dg-require-effective-target arm_neon_hw } */ /* { dg-options "-fno-omit-frame-pointer -mapcs-frame -O" } */ /* { dg-add-options arm_neon } */ -- Eric Botcazou

Re: [ARM] Fix incorrect restore of FP registers in nested APCS frame

2014-01-10 Thread Eric Botcazou
> > /* { dg-do run } */ > > /* { dg-require-effective-target arm_neon_hw } */ > > /* { dg-options "-fno-omit-frame-pointer -mapcs-frame -O" } */ > > /* { dg-add-options arm_neon } */ > > Yes, something like that. OK, installed after checking that this do

Re: [PATCH] Fix unaligned access generated by IVOPTS

2014-01-10 Thread Eric Botcazou
g to do. > > So - if you want to give it a try...? After a bit of pondering, I'm not really thrilled, as this would mean changing TARGET_MEM_REF to accept invalid (unaligned) memory references for the target. But I agree that may_be_unaligned_p is seriously outdated, so the attached patch e

[Ada] Fix PR ada/59772

2014-01-12 Thread Eric Botcazou
This is a regression present on all active branches for 8-bit/16-bit targets and introduced by the rewrite of build_int_cst which now truncates its output. Tested on x86_64-suse-linux, applied on all active branches. 2014-01-12 Eric Botcazou PR ada/59772 * gcc-interface

Re: [PATCH] Fix unaligned access generated by IVOPTS

2014-01-13 Thread Eric Botcazou
patch is an improvement and thus ok. Thanks. -- Eric Botcazou

[RFC] Move ehcleanup pass to before early SRA

2014-01-15 Thread Eric Botcazou
the pipeline. It has a small but measurable positive effect on some of our benchmarks (with a 4.7-based compiler). Tested on x86-64/Linux. Thoughts? 2014-01-15 Eric Botcazou * passes.def (pass_early_local_passes): Run first EH cleanup pass early. -- Eric BotcazouIndex

Re: [RFC] Move ehcleanup pass to before early SRA

2014-01-15 Thread Eric Botcazou
aram2 p.adb.054t.copyrename2 Then we could add another ehcleanup pass before early inlining, i.e. between 015t.ssa and 017t.inline_param1, to achieve the same goal. -- Eric Botcazou

Re: [patch] Fix PR middle-end/66633

2015-07-10 Thread Eric Botcazou
o add those, when frame or chain > is needed for calls, but the problem was that as !optimize didn't clear > DECL_STATIC_CHAIN initially it wasn't discovered. > > Both issues fixed in the following patch, which made the earlier change > unnecessary. Thanks for looking into this! -- Eric Botcazou

Re: Adjust -fdump-ada-spec to C++14 switch (2)

2015-07-10 Thread Eric Botcazou
> We need to skip the constexpr default constructors. That's actually not sufficient so I have installed the attached patch instead. Tested on x86_64-suse-linux, applied on the mainline as obvious. 2015-07-10 Eric Botcazou c-family/ * c-ada-spec.h (cpp_operation): Rever

[SPARC] Use adjust_address instead of adjust_address_nv in sparc.md

2015-07-16 Thread Eric Botcazou
3 patterns related to setjmp/longjmp/non-local gotos call adjust_address_nv and this can break (generate unrecognizable insns) when things get serious, for example if you configure with --enable-sjlj-exceptions. Tested on SPARC/Solaris, applied on the mainline. 2015-07-16 Eric Botcazou

[scalar-storage-order] Fix handling of complex types

2015-07-17 Thread Eric Botcazou
Complex types (mathematical sense) weren't correctly handled, in particular they were reversed as a whole instead of piecewise so a big-endian complex field on a little-endian target didn't have the same representation in memory as on a big-endian target. Tested on x86_64-suse-linux. applied on

Re: [patch] Bump size of stack checking protection area

2015-09-15 Thread Eric Botcazou
> For avoidance of doubt, the patch is fine then. Thanks, installed with the tm.texi bits. -- Eric Botcazou

Re: [patch] Get rid of useless EH cleanups at -O0

2015-09-15 Thread Eric Botcazou
> Played with this a bit, this appears to be fine. Thanks. To answer your earlier question, the first part of the patch is only for debugging: this will e.g. prevent multiple breakpoints from being set by the debugger when there are more than 2 non-EH paths. -- Eric Botcazou

[patch] Fix wrong code on dynamic array slices

2015-09-16 Thread Eric Botcazou
ss. Bootstrapped/regtested on x86_64-suse-linux, OK for the mainline? 2015-09-16 Eric Botcazou * tree-ssa-sccvn.c (ao_ref_init_from_vn_reference): Use offset_int for offset and size computations instead of HOST_WIDE_INT. 2015-09-16 Eric Botcazou * gnat.dg/

Amend documentation of DF LIVE problem

2015-09-17 Thread Eric Botcazou
As discussed in the audit trail of PR rtl-optimization/66790, the doc of the DF_LIVE problem is confusing/wrong so the attached patch amends it. Approved by Kenneth and applied on all active branches. 2015-09-17 Eric Botcazou PR rtl-optimization/66790 * df-problems.c (LIVE

[Ada] Language-defined checks and side effects in gigi

2015-09-17 Thread Eric Botcazou
As diagnosed by Richard B., emit_check wrongly resets the TREE_SIDE_EFFECTS flag on the COND_EXPR built for language-defined checks in Ada, leading to the omission of required checks in peculiar cases. Tested on x86_64-suse-linux, applied on the mainline. 2015-09-17 Eric Botcazou

Re: [PATCH] Convert SPARC to LRA

2015-09-17 Thread Eric Botcazou
> > You need to update https://gcc.gnu.org/backends.html > > Done. Nice work! Did you keep the 64-bit promotion in PROMOTE_MODE or...? -- Eric Botcazou

Re: [RFC][PATCH] Preferred rename register in regrename pass

2015-09-17 Thread Eric Botcazou
ndant extension elimination pass more > effective as well. Not if you do it in regrename though, as it's run very late in the pipeline. If you want to make REE more effective, this would need to be done during RA. -- Eric Botcazou

Re: [ARM] Fix PR middle-end/65958

2015-09-21 Thread Eric Botcazou
s since it was not implemented. Will fix. -- Eric Botcazou

Re: Do not use TYPE_CANONICAL in useless_type_conversion

2015-10-01 Thread Eric Botcazou
esses. Field accesses > have corresponding type into in COMPONENT_REF or MEM_REF, so we do not care > about conversions of those. This caused three Ada failures on PPC64, > because we can not move between structures of same size but different mode. Do you disregard the alignment on pu

Re: Do not use TYPE_CANONICAL in useless_type_conversion

2015-10-01 Thread Eric Botcazou
s seems weird. -- Eric Botcazou

Re: Do not use TYPE_CANONICAL in useless_type_conversion

2015-10-02 Thread Eric Botcazou
_ALIGN_OK flag; this is needed for Ada on strict-alignment platforms. -- Eric Botcazou

Re: Do not use TYPE_CANONICAL in useless_type_conversion

2015-10-02 Thread Eric Botcazou
> Yeah, though we don't have conversions of aggregates. We use the > predicate to tell whether an aggregate assignment is valid GIMPLE. > LHS and RHS alignment do not have to match AFAIK. So it doesn't control whether VIEW_CONVERT_EXPRs are preserved or not? -- Eric Botcazou

[Ada] Use more FOR_EACH_VEC_* macros

2015-10-02 Thread Eric Botcazou
Tested on x86_64-suse-linux, applied on the mainline. 2015-10-02 Eric Botcazou * gcc-interface/trans.c (find_loop_for): Use FOR_EACH_VEC_ELT_REVERSE. (Loop_Statement_to_gnu): Use FOR_EACH_VEC_ELT. (finalize_nrv): Use FOR_EACH_VEC_SAFE_ELT and initialize field

Re: Do not use TYPE_CANONICAL in useless_type_conversion

2015-10-02 Thread Eric Botcazou
hat the RTL expander doesn't create temporaries on strict-alignment considerations, so it's essentially a flag on VIEW_CONVERT_EXPR but set on the target type which can be ignored entirely at the GIMPLE level as long as it's preserved. -- Eric Botcazou

[Ada] Implement restricted aliasing for parameters

2015-10-02 Thread Eric Botcazou
ters, but it nevertheless makes it possible to vectorize certain classes of loops by making the iterations independent. The patch implements minimal support for this by means of pragma ivdep. Tested on x86_64-suse-linux, applied on the mainline. 2015-10-02 Eric Botcazou *

[Ada] Remove linear search in Pragma_to_gnu

2015-10-02 Thread Eric Botcazou
This shamelessly mimics what Manual implemented recently for the C family of compilers under PR c/49654 and PR c/49655. Tested on x86_64-suse-linux, applied on the mainline. 2015-10-02 Eric Botcazou * gcc-interface/trans.c (Pragma_to_gnu) : Replace linear search with call

Re: Do not use TYPE_CANONICAL in useless_type_conversion

2015-10-02 Thread Eric Botcazou
implify_gen_subreg (GET_MODE (target), temp, BLKmode, 0); > + } Are you really trying to create a SUBREG with BLKmode here? -- Eric Botcazou

Re: Do not use TYPE_CANONICAL in useless_type_conversion

2015-10-02 Thread Eric Botcazou
hat makes a difference. I know, but that's low priority, sorry. You can probably browse the 2004 archives and find one (or a sketch of one); that being said, gigi was a bit changed since then so this could as well be obsolete. -- Eric Botcazou

Re: Do not use TYPE_CANONICAL in useless_type_conversion

2015-10-03 Thread Eric Botcazou
EW_CONVERT_EXPR > whose purpose is to step up the alignment. > (expand_expr, case ADDR_EXPR): Force LO_SUM into memory, just like REG. OK, thanks for digging. I'm going to disable the circuitry and see what happens on SPARC and SPARC64. -- Eric Botcazou

Re: C PATCH for c/65345 (file-scope _Atomic expansion with floats)

2015-10-06 Thread Eric Botcazou
t need to make the variable addressable. In any case, the failure mode is another ICE in make_decl_rtl so easy to spot. -- Eric Botcazou

Re: Do not compare types in operands_equal_p if OEP_ADDRESS_OF is set

2015-10-06 Thread Eric Botcazou
;& TREE_CONSTANT (arg1) ? OEP_CONSTANT_ADDRESS_OF | OEP_ADDRESS_OF : 0); So it's OEP_ADDRESS_OF but for constant addresses. -- Eric Botcazou

Re: C PATCH for c/65345 (file-scope _Atomic expansion with floats)

2015-10-06 Thread Eric Botcazou
> Joseph reminded me that I had forgotten about this patch. As mentioned > here , I'm > removing the XFAILs in the tests so people are likely to see new FAILs. > > I think the following targets will need similar fix as the one below: > * M

Re: [ARM] Fix PR middle-end/65958

2015-10-06 Thread Eric Botcazou
entation: a cosmetic one for the probe_stack pattern and one for the output_probe_stack_range loop. 2015-10-06 Tristan Gingold Eric Botcazou PR middle-end/65958 * config/aarch64/aarch64-protos.h (aarch64_output_probe_stack-range): Declare. * config/aarc

[patch 0/6] scalar-storage-order merge (2)

2015-10-06 Thread Eric Botcazou
-linux and powerpc-linux. -- Eric Botcazou

[patch 1/6] scalar-storage-order merge: Ada front-end

2015-10-06 Thread Eric Botcazou
This is the Ada front-end (in fact mostly gigi) part. ada/ * freeze.adb (Check_Component_Storage_Order): Skip a record component if it has Complex_Representation. (Freeze_Record_Type): If the type has Complex_Representation, skip the regular treatment of Scalar_Stor

[patch 2/6] scalar-storage-order merge: C front-end

2015-10-06 Thread Eric Botcazou
This is the C front-end + C family part. * doc/extend.texi (type attributes): Document scalar_storage_order. (Structure-Packing Pragmas): Rename into... (Structure-Layout Pragmas): ...this. Document scalar_storage_order. * doc/invoke.texi (C Dialect Options): Docum

[patch 3/6] scalar-storage-order merge: C++ front-end

2015-10-06 Thread Eric Botcazou
This is the C++ front-end part, probably incomplete but passes the testsuite. cp/ * class.c: Add c-family/c-pragma.h. (finish_struct_1): If structure has reverse scalar storage order, rewrite the type of array fields with scalar component. Call maybe_apply_pragma_s

[patch 4/6] scalar-storage-order merge: bulk

2015-10-06 Thread Eric Botcazou
This is the bulk of the implementation. * calls.c (store_unaligned_arguments_into_pseudos): Adjust calls to extract_bit_field and store_bit_field. (initialize_argument_information): Adjust call to store_expr. (load_register_parameters): Adjust call to extract_bit_fi

[patch 5/6] scalar-storage-order merge: rest

2015-10-06 Thread Eric Botcazou
|2 config/sh/sh.md |4 - 35 files changed, 304 insertions(+), 152 deletions(-) -- Eric Botcazou

Re: [patch 5/6] scalar-storage-order merge: rest

2015-10-06 Thread Eric Botcazou
> This is the rest of the implementation. ...with the patch this time... -- Eric BotcazouIndex: ipa-polymorphic-call.c === --- ipa-polymorphic-call.c (.../trunk/gcc) (revision 228112) +++ ipa-polymorphic-call.c (.../branches/scalar-

Re: [ARM] Fix PR middle-end/65958

2015-10-07 Thread Eric Botcazou
the base register may vary but, in simple cases (in particular if the function is not nested), it's IP: str r0, [ip, #offset] -- Eric Botcazou

Re: [ARM] Fix PR middle-end/65958

2015-10-07 Thread Eric Botcazou
ize > 4 * PROBE_INTERVAL > > > with an optional last probe: > > str xzr, [x10,#-16] > > and there can be an optional instruction before the probe, > > sub x10, x10, #PROBE_INTERVAL > > Let me know if my understanding above is wrong. That's corr

Re: Do not use TYPE_CANONICAL in useless_type_conversion

2015-10-08 Thread Eric Botcazou
below. | +==+ -- Eric Botcazou

Re: Do not use TYPE_CANONICAL in useless_type_conversion

2015-10-09 Thread Eric Botcazou
ze); > temp = temp_target; > } > - else if (mode == BLKmode) > + else if (GET_MODE (temp) == BLKmode) > { > /* Handle calls that return BLKmode values in registers. */ > if (REG_P (temp) && TREE_CODE (exp) == CALL_EXPR) This cannot be right, you're short-circuiting the REG_P (temp) test below. -- Eric Botcazou

[Ada] Make sure generated files are created first

2015-10-09 Thread Eric Botcazou
As reported by Alan L., we need to make sure that the generated files are created before gigi is compiled. Tested on x86_64-suse-linux, applied on all branches. 2015-10-09 Eric Botcazou * gcc-interface/Make-lang.in: Make sure that GNAT1_OBJS and not just GNAT1_ADA_OBJS are

Re: Do not use TYPE_CANONICAL in useless_type_conversion

2015-10-09 Thread Eric Botcazou
! Jan is apparently mixing up the LHS and the RHS here. -- Eric Botcazou

Re: Do not use TYPE_CANONICAL in useless_type_conversion

2015-10-13 Thread Eric Botcazou
ixing it. Note that this is PR middle-end/67912. -- Eric Botcazou

Re: [PATCH, sparc]: Use ROUND_UP and ROUND_DOWN macros

2015-10-13 Thread Eric Botcazou
nfirmation. No, it's correct, it's a bump of 8 followed by a ROUND_DOWN (the offset may or may not have been bumped by 4 already in the code just above). -- Eric Botcazou

Re: [PATCH, sparc]: Use ROUND_UP and ROUND_DOWN macros

2015-10-13 Thread Eric Botcazou
sense. I'd just beef up the comment: /* Bump and round down to double word in case we already bumped by 4. */ offset = ROUND_DOWN (offset + 8, 8); -- Eric Botcazou

Re: [patch 0/6] scalar-storage-order merge (2)

2015-10-13 Thread Eric Botcazou
don't know at all; that's why I'm OK to drop the C++ support for now. -- Eric Botcazou

Re: using scratchpads to enhance RTL-level if-conversion: revised patch

2015-10-14 Thread Eric Botcazou
by the stack pointer (that's why there is a specific implementation of -fstack-check for x86{-64}/Linux). -- Eric Botcazou

[patch] Minor adjustment to gimplify_addr_expr

2015-10-14 Thread Eric Botcazou
esn't see that it's just R.43_46 (it would have seen it if the original INDIRECT_REF was still present in lieu of MEM_REF). Hence the attached fixlet. Tested on x86_64-suse-linux, OK for the mainline? 2015-10-14 Eric Botcazou * gimplify.c

Re: [patch] Minor adjustment to gimplify_addr_expr

2015-10-14 Thread Eric Botcazou
_fold_addr_expr_with_type_loc. -- Eric Botcazou

Re: Add VIEW_CONVERT_EXPR to operand_equal_p

2015-10-15 Thread Eric Botcazou
> Eric, does that look ok WRT TYPE_ALIGN_OK? (that is, did we decide > TYPE_ALIGN_OK is no longer needed?) I'm not sure we need to care about TYPE_ALIGN_OK here so no objection by me. -- Eric Botcazou

Re: Add VIEW_CONVERT_EXPR to operand_equal_p

2015-10-15 Thread Eric Botcazou
l seeing ICEs on x86. Or else can we put the whole series on a branch until it is reasonably stable? -- Eric Botcazou

Re: [patch] Minor adjustment to gimplify_addr_expr

2015-10-16 Thread Eric Botcazou
handled components and see if any of them involve offsets that are either non-constant or non-invariant. -- Eric Botcazou

Re: [patch] Minor adjustment to gimplify_addr_expr

2015-10-16 Thread Eric Botcazou
> Sure, if that works it's pre-approved. Your original patch is also ok > (though I still > think it's incomplete - but we'll wait until a testcase comes up with > the assert). It passed a bootstrap/regtest cycle on x86-64/Linux so I have installed it.

Re: Add VIEW_CONVERT_EXPR to operand_equal_p

2015-10-16 Thread Eric Botcazou
similar to the IA-64 one). PR middle-end/67966 * gnat.dg/pack21.adb: New test. * gnat.dg/pack22.adb: Likewise. * gnat.dg/pack22_pkg.ad[sb]: New helper. -- Eric Botcazou-- { dg-do compile } -- { dg-options "-gnatws" } procedure Pack21 is type Enum is (ZERO, ONE, TW

Re: Add VIEW_CONVERT_EXPR to operand_equal_p

2015-10-17 Thread Eric Botcazou
there is a VCE or not in the IL. And AFAIK nobody answered the question: what do we gain by making this change? So far I have only seen breakages, suspicious fixes and code duplication... -- Eric Botcazou

Re: Add VIEW_CONVERT_EXPR to operand_equal_p

2015-10-18 Thread Eric Botcazou
(and this only affects Ada in practice since apparently only the Ada compiler fiddles with the type mode). -- Eric Botcazou

Re: Add VIEW_CONVERT_EXPR to operand_equal_p

2015-10-19 Thread Eric Botcazou
for code quality? Ideally it should not be tied to calling conventions either, but it is known that some back-ends still use it for this purpose. -- Eric Botcazou

Re: Add VIEW_CONVERT_EXPR to operand_equal_p

2015-10-19 Thread Eric Botcazou
> Adding back the mode check is fine if all types with the same TYPE_CANONICAL > have the same mode. Otherwise we'd regress here. It's true for the Ada compiler, the type fiddling machinery always resets it. -- Eric Botcazou

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