Alpha, MIPS, PA).
2016-07-04 Eric Botcazou
* config/aarch64/aarch64.h(TARGET_CUSTOM_FUNCTION_DESCRIPTORS):Define
* config/alpha/alpha.h (TARGET_CUSTOM_FUNCTION_DESCRIPTORS):Likewise.
* config/arm/arm.h (TARGET_CUSTOM_FUNCTION_DESCRIPTORS): Likewise.
* config/arm/
This is the couple of testcases for the gnat.dg testsuite. They test for the
presence of the GNU-stack executable marker in the assembly file on Linux.
2016-07-04 Eric Botcazou
* gnat.dg/trampoline3.adb: New test.
* gnat.dg/trampoline4.adb: Likewise.
--
Eric BotcazouIndex
> Attached output is from last test build (r239639 with DJGPP related patches
> applied, last version of patches for Ada).
Very strange error, line 28 of gtype-ada.h is supposed to have a guard for
nodes containing the 'common' structure. Can you post an excerpt of the file?
--
Eric Botcazou
on the mainline and 6 branch as obvious.
2016-05-25 Eric Botcazou
* tree-ssa-phiopt.c (factor_out_conditional_conversion): Remove
redundant test and bail out if the type of the new operand is not
a GIMPLE register type after stripping a VIEW_CONVERT_EXPR.
2016-05
; support on SPARC.
> * config/sparc/linux64.h (OPTION_DEFAULT_SPECS): Add entries for
> cpu_32, cpu_64, tune_32 and tune_64.
> * config/sparc/sol2.h (OPTION_DEFAULT_SPECS): Likewise.
OK for mainline, thanks.
--
Eric Botcazou
This makes it so that DImode arithmetical operations are split into a pair of
SImode operations in order to enable better scheduling.
Tested on visium-elf, applied on the mainline and 6 branch.
2016-05-27 Eric Botcazou
* config/visium/visium-protos.h (split_double_move): Rename
> This makes it so that DImode arithmetical operations are split into a pair
> of SImode operations in order to enable better scheduling.
>
> Tested on visium-elf, applied on the mainline and 6 branch.
A minor follow-up, applied on the mainline and 6 branch.
2016-05-30 E
are somehow
treated specially, so the proposed fix does the same in vectorizable_reduction
(and is probably a no-op except for Ada because of the precision test).
Tested on x86_64-suse-linux, OK for mainline and 6 branch?
2016-05-31 Eric Botcazou
* tree-vect-loop.c (vectorizable_reduction): Also
_scope, vectorizable = true,
gather_scatter_p = false, strided_p = false, simd_lane_access_p = false,
v_reduc_type = TREE_CODE_REDUCTION, num_slp_uses = 0}
--
Eric Botcazou
:29: note: not vectorized: different sized masks types in
statement, vector(16) unsigned char and vector(4)
opt56.adb:9:29: note: can't determine vectorization factor.
opt56.adb:6:4: note: vectorized 0 loops in function.
--
Eric Botcazou
ion. OK for mainline and 6 branch?
2016-05-31 Eric Botcazou
* tree-vect-loop.c (vect_determine_vectorization_factor): Also take
into account live statements for mask producers.
2016-05-31 Eric Botcazou
* gnat.dg/opt56.ad[sb]: New te
review
> process please commit them.
Patches applied on mainline and 6 branch, but not on the 5 branch since the
signature of Get_Page_Size is correct there.
--
Eric Botcazou
> I attached a patch for 5 branch which will only add the
> clock_getres-function.
Thanks, applied too.
--
Eric Botcazou
bution to plug the hole is of course welcome. :-)
> @@ -8628,6 +8678,14 @@
>"fp64\t%1, %2, %0"
>[(set_attr "type" "fga")])
>
> +(define_insn "v8qi3"
> + [(set (match_operand:V8QI 0 "register_operand" "=e")
> +(plusminus:V8QI (match_operand:V8QI 1 "register_operand" "e")
> +(match_operand:V8QI 2 "register_operand" "e")))]
> + "TARGET_VIS4"
> + "fp8\t%1, %2, %0"
> + [(set_attr "type" "fga")])
> +
> (define_mode_iterator VASS [V4HI V2SI V2HI V1SI])
> (define_code_iterator vis3_addsub_ss [ss_plus ss_minus])
> (define_code_attr vis3_addsub_ss_insn
Trailing spaces.
> +(define_insn "v8qi3"
> + [(set (match_operand:V8QI 0 "register_operand" "=e")
> +(vis3_addsub_ss:V8QI (match_operand:V8QI 1 "register_operand" "e")
> + (match_operand:V8QI 2 "register_operand"
> "e")))] + "TARGET_VIS4"
> + "8\t%1, %2, %0"
> + [(set_attr "type" "fga")])
If the mix of VIS4 and vis3_ is correct, then this requires a comment.
--
Eric Botcazou
|| STMT_VINFO_LIVE_P (stmt_info))
{
gcc_assert (!STMT_VINFO_VECTYPE (stmt_info));
scalar_type = TREE_TYPE (PHI_RESULT (phi));
--
Eric Botcazou
other points you raised.
> Thanks!
You're welcome. And if you want to have commit rights to the SVN repository,
you can put me as your sponsor (Eric Botcazou ).
--
Eric Botcazou
VIS4 builtins.
>
> gcc/testsuite/ChangeLog:
>
> * gcc.target/sparc/vis4misc.c: New file.
> * gcc.target/sparc/fpcmp.c: Likewise.
> * gcc.target/sparc/fpcmpu.c: Likewise.
OK for mainline, thanks. As mentioned yesterday, I think that we should also
put it on the 6 branch, but I can do the backport myself.
--
Eric Botcazou
change.
Tested on x86_64-suse-linux, applied on the mainline.
2016-06-06 Eric Botcazou
* exp_ch9.adb (Expand_N_Protected_Type_Declaration): Insert the
declaration of the corresponding record type before that of the
unprotected version of the subprograms that operate on it
function symbols on Windows.
Tested on x86_64-suse-linux, applied on the mainline.
2016-06-06 Eric Botcazou
* gcc-interface/gigi.h (finish_subprog_decl): Add ASM_NAME parameter.
* gcc-interface/decl.c (gnu_ext_name_for_subprog): New function.
(gnat_to_gnu_entity) : Do not
e new elaboration model implements both AIs so the mechanism is obsolete.
No functional change. Tested on x86_64-suse-linux, applied on the mainline.
2016-06-06 Eric Botcazou
* einfo.ads (Returns_Limited_View): Remove.
(Set_Returns_Limited_View ): Likewise.
* einf
No functional change. Tested on x86_64-suse-linux, applied on the mainline.
2016-06-06 Eric Botcazou
* gcc-interface/decl.c (gnat_to_gnu_entity) : Remove
useless 'else' statements and tidy up.
: Fully deal with the declaration here.
: Use prop
This ensures that we don't import an artificial location from the spec when an
object of a tagged type is elaborated.
Tested on x86_64-suse-linux, applied on the mainline.
2016-06-06 Eric Botcazou
* gcc-interface/trans.c (gnat_to_gnu): Rework special code dealing
This is a regression present on the mainline and 6 branch: under some peculiar
circumstances, the qualified expression of an allocator can be elaborated
twice by gigi.
Tested on x86_64-suse-linux, applied on the mainline and 6 branch.
2016-06-06 Eric Botcazou
* gcc-interface
They are automatically set by the middle-end when the interrupt attribute is.
Tested on x86_64-suse-linux, applied on the mainline and 6 branch.
2016-06-06 Eric Botcazou
* gcc-interface/utils.c (gnat_internal_attribute_table): Add support
for noinline and noclone attributes
This fixes a small regression in ASIS mode introduced by the new elaboration
model for subprograms. Tested on x86_64-suse-linux, applied on the mainline.
2016-06-06 Eric Botcazou
* gcc-interface/decl.c (Gigi_Equivalent_Type): Make sure equivalent
types are present before
llocate_dynamic_stack_space" subthread, I think
that the real issue is STACK_DYNAMIC_OFFSET.
--
Eric Botcazou
> Is the usage of the word "concern" here standard for this kind of thing?
> It seems odd somehow but maybe that's just me.
No, I find it quite odd too.
--
Eric Botcazou
> Committed to trunk. Thanks.
You're welcome. Now backported onto the 6 branch, together with your previous
patch for --with-cpu-{32,64}.
I have also attached an update for the wwwdocs module, OK to install?
--
Eric BotcazouIndex: gcc-6/changes.html
==
linux-gnu, sparcv9-*-linux-gnu and
> sparc-sun-solaris2.11 targets.
>
> 2016-06-08 Jose E. Marchesi
>
> * config/sparc/driver-sparc.c (cpu_names): Fix the entry for the
> SPARC-M7 and add an entry for SPARC-S7 cpus (Sonoma).
OK, but it needs to be applied both on mainline and 6 branch.
--
Eric Botcazou
> No problem. Do I need the approval of a maintainer in particular for
> commits in the 6 branch?
No, maintainers can approve patches for branches outside of release periods.
--
Eric Botcazou
-06-09 Eric Botcazou
* df-problems.c (df_note_bb_compute): Guard use of DF_INSN_INFO_GET.
--
Eric BotcazouIndex: df-problems.c
===
--- df-problems.c (revision 237165)
+++ df-problems.c (working copy)
@@ -3498,13 +3498,13
erface/utils.c (handle_nonnull_attribute): ...
gcc/c-family/ChangeLog:
PR c/71392
* c-common.c (handle_nonnull_attribute):...
gcc/lto/ChangeLog:
PR c/71392
* lto-lang.c (handle_nonnull_attribute): ...
--
Eric Botcazou
This fixes a small oversight introduced in gigi some time ago, whereby the
UNCONSTRAINED_ARRAY_TYPE object created for unconstrained array types gets the
XUT suffix like the associate RECORD_TYPE.
Tested on x86_64-suse-linux, applied on the mainline and 6 branch.
2016-06-11 Pierre-Marie de Ro
and 6 branch.
2016-06-11 Eric Botcazou
* gcc-interface/trans.c (Case_Statement_to_gnu): Deal with characters.
2016-06-11 Eric Botcazou
* gnat.dg/case_character.adb: New test.
--
Eric BotcazouIndex: gcc-interface/trans.c
support.
Tested on x86_64-suse-linux, applied on the mainline.
2016-06-11 Eric Botcazou
* gcc-interface/trans.c (build_binary_op_trapv): If no operand is a
constant, use the generic implementation of the middle-end; otherwise
turn the dynamic conditions into static
Allocators return pointer to void internally so the derived alignment is the
minimal one for known_alignment, although we know that it's always larger.
Tested on x86_64-suse-linux, applied on the mainline.
2016-06-13 Eric Botcazou
* gcc-interface/utils2.c (known_alignment) :
This is a regression present on the mainline and 6 branch: the compiler stops
on the renaming of the 'Pred or 'Succ attribute of a fixed-point type.
Tested on x86_64-suse-linux, applied on the mainline and 6 branch.
2016-06-13 Eric Botcazou
* gcc-interf
the mainline.
2016-06-13 Eric Botcazou
* gcc-interface/decl.c (gnat_to_gnu_subprog_type): Build only minimal
PARM_DECL when the parameter type is dummy.
* gcc-interface/trans.c (Call_to_gnu): Translate formal types before
formal objects.
--
Eric BotcazouIndex
d B., applied on the
mainline and 6 branch.
2016-06-13 Eric Botcazou
* tree-ssa-sccvn.c (vn_reference_lookup_3): Use a uniform test and
update shared_lookup_references only once after changing operands.
--
Eric BotcazouIndex: tree-ssa-sccvn.c
=
the compiler proper without the special option of PR bootstrap/71435.
Bootstrapped/regtested on SPARC/Solaris and Linux, applied on the mainline.
2016-06-18 Eric Botcazou
PR bootstrap/71435
* reload1.c (reload): Pass 0 to finish_spills when called because
> Committing the attached typo fix as obvious (I believe "alignement" is the
> French form).
You are right.
--
Eric Botcazou
automatically clobber the
CC register for inline assembly statements, for example Visium and x86.
Tested on x86_64-suse-linux, applied on the mainline.
2016-06-21 Eric Botcazou
* cse.c (canon_asm_operands): New function extracted from...
(canonicalize_insn): ...here. Call it to
-suse-linux, applied on the mainline, as obvious for the
verify_type_variant hunk.
2016-06-21 Eric Botcazou
* tree.c (verify_type_variant): Skip TYPE_SIZE and TYPE_SIZE_UNIT if
they are both PLACEHOLDER_EXPRs.
ada/
* gcc-interface/d
on x86_64-suse-linux, OK for the mainline? What about the release
branches (5 & 6 are affected), is the issue worth fixing there too?
2016-06-22 Eric Botcazou
* function.c (assign_parm_setup_reg): Prevent sharing in another case.
--
Eric Botcazo
remap_decl,
which appears to work and is sufficient to fix the aforementioned bootstrap.
Tested on x86_64-suse-linux, OK for the mainline?
2016-06-22 Eric Botcazou
* tree-inline.c (remap_decl): Preserve DECL_ORIGINAL_TYPE invariant.
--
Eric BotcazouIn
, on RISC architectures, it is not legitimate and the address is
rewritten. Can this me mimiced on x86?
--
Eric Botcazou
> The testcase doesn't necessarily need to FAIL without the patch on x86, it
> is fine if it fails on some PowerPC* or Visium.
Well, the value of a guality test that isn't exercised on x86 is close to 0,
but I can try on PowerPC indeed.
--
Eric Botcazou
5.c:26
#1 0x150c in foo (
str=, count=1)
at param-5.c:24
#2 0x1590 in main () at param-5.c:33
2016-06-22 Eric Botcazou
* function.c (assign_parm_setup_reg): Prevent sharing in another case.
2016-06-22 Eric Botcazou
* gcc.dg/guality/param-5.c
> Do you really need the memset in there to reproduce it?
> Wouldn't asm volatile ("" : : "r" (&a[0]) : "memory");
> or something similar be enough? Or if you need to clear something,
> clear much smaller part of the array?
Probably only the 128 first bytes, will change that.
--
Eric Botcazou
ME is weird. How does this happen?
--
Eric Botcazou
lified trees.
Are you confounding it with something else? Because save_expr is definitely
not a gimplifier function, it's mostly used to build GENERIC trees. That
being said, I can imagine it being invoked from the gimplifier, but I'd like
to see the backtrace.
--
Eric Botcazou
.
Fixed by attached patchlet, tested on x86_64-suse-linux, applied as obvious.
2016-06-24 Eric Botcazou
PR debug/71642
* tree-inline.c (remap_decl): When fixing up DECL_ORIGINAL_TYPE, just
copy the type name.
2016-06-24 Eric Botcazou
* gfortran.dg/pr71642.f9
sted some time ago that System.Address be
translated as void pointer for convention C in order to address this issue.
Tested on x86_64-suse-linux, applied on the mainline.
2016-06-29 Eric Botcazou
PR ada/48835
PR ada/61954
* gcc-interface/gigi.h (enum standard_datat
on the mainline as obvious.
>
>
> 2016-06-09 Eric Botcazou
>
> * df-problems.c (df_note_bb_compute): Guard use of DF_INSN_INFO_GET.
I have backported it onto the 6 branch because we got segfaults for a cross-
compiler hosted on Windows triggered by the invalid read.
--
Eric Botcazou
the 7 branch?
2017-10-12 Eric Botcazou
PR debug/82509
* dwarf2out.c (base_type_die): Remove early return for corner cases.
Allocate the new DIE manually and do not call add_pubtype on it.
(is_base_type): Remove ERROR_MARK and return 0 for VOID_TYPE
pass will be slower for absolutely no benefits, as the existing implementation
would already have caught all the interesting cases.
So it's again a case of a generic change made for a specific target without
consideration for other, admittedly less mainstream, targets...
--
Eric Botcazou
take into account the upper bound, if it exists.
Bootstrapped/regtested on x86_64-suse-linux, OK for the mainline?
2017-10-16 Eric Botcazou
* asan.c (handle_builtin_alloca): Deal with all alloca variants.
(get_mem_refs_of_builtin_call): Likewise.
*
iv->base, iv->step, true, use);
So the attached patch replaces it with stmt_can_throw_internal (which is the
predicate used to compute the flow of control) as e.g. in the vectorizer.
Bootstrapped/regtested on PowerPC64/Linux, OK for the mainline?
2017-10-17 Eric Botcazou
* tree
;
+
default:
gcc_unreachable ();
--
Eric Botcazou
* gcc-interface/misc.c (gnat_tree_size): New function.
> (LANG_HOOKS_TREE_SIZE): Redefine.
OK, thanks.
--
Eric Botcazou
on visium-elf, applied on the mainline.
2017-10-17 Eric Botcazou
* config/visium/visium.c (visium_select_cc_mode): Return CCmode for
any RTX present on the RHS of a SET.
* compare-elim.c (try_eliminate_compare): Restore comment.
--
Eric BotcazouIndex: config/visium
Tested on visium-elf, applied on the mainline and 7 branch.
2017-10-17 Eric Botcazou
* gcc.dg/attr-alloc_size-11.c: UnXFAIL for visium-*-*.
--
Eric BotcazouIndex: gcc.dg/attr-alloc_size-11.c
===
--- gcc.dg/attr
> Hmm. It makes tracking DIE builds difficult now that not all allocations go
> through new_die anymore.
I wouldn't have created such a precedent though, IOW there is nothing new.
> Can you instead split out a new_die_raw
> function with just the allocation and the die_tag initialization? Or ma
r the specific treatment in
gen_type_die_with_usage for DW_TAG_unspecified_type, so very minor.
--
Eric Botcazou
> Are we in agreement that I should revert the patch?
I think that you can leave it for now in order to have some feedback (see for
example PR rtl-optimization/82597) but ideally it should be rewritten so as to
reuse the existing infrastructure of the pass.
--
Eric Botcazou
h is when 16 will be used. So at least for accounting always use MIN
> (size, max_size)?
The implementation is in keeping with the above documentation, i.e. SIZE will
prevail if its value can be computed at compile time.
--
Eric Botcazou
Because of the recent reorganization of the ada/ directory, the check for the
presence of a working Ada compiler fails in stage #2 and later if you don't
have a compiler already installed in the --prefix directory.
Bootstrapped on x86_64-suse-linux, applied on the mainline.
2017-10-20 Nicolas
The compiler aborts on an aggregate of a record type which contains a private
discriminated record type with default as a subcomponent, when the unit is
compiled with optimization.
Tested on x86_64-suse-linux, applied on the mainline.
2017-10-21 Eric Botcazou
* gcc-interface
for gcc.c-torture/compile:
49 files changed, 1243 insertions(+), 1694 deletions(-)
probably because the compiler can now infer values on paths from entry where
variables are uninitialized. Tested on PowerPC64/Linux, OK for the mainline?
2017-10-23 Eric Botcazou
PR middle-end/82569
&& (bitpos == 0 || MEM_P (target)))
+ && (known_zero (bitpos) || MEM_P (target)))
- && bitsize == TYPE_PRECISION (type))
+ && must_eq (bitsize, TYPE_PRECISION (type)))
- if (need_to_clear && size > 0)
+ if (need_to_clear && may_gt (size, 0))
is really ugly...
--
Eric Botcazou
cases
fall in the must category, that could be less ugly.
> Sorry about that. It's the best I could come up with without losing
> the may/must distinction.
Which variant is known_zero though? Must or may?
--
Eric Botcazou
ave that to specialists.
Bootstrapped/regtested on x86_64-suse-linux, approved by Richard B. in the
audit trail of the PR, applied on the mainline.
2017-10-25 Eric Botcazou
PR middle-end/82062
* fold-const.c (operand_equal_for_comparison_p): Also return true
if ARG0 is a simple
> Can you figure what oldest GCC release supports the C++11/14 POD handling
> that would be required?
GCC needs to be buildable by other compilers than itself though.
--
Eric Botcazou
ewise.
> So a -O option is always required for compilation.
For compiler hackers only though. For normal users, -O0 is still the only
level where you're guaranteed to be able to do full source debugging.
--
Eric Botcazou
he
same check on the BB_PARTITION of the blocks is done in find_traces_1_round).
Bootstrapped/regtested on x86_64-suse-linux. Any objection?
2017-10-26 Eric Botcazou
* bb-reorder.c (find_traces_1_round): Fix off-by-one index.
Move around comment. Do not reset best_edg
uot;
I think that the major supported compilers are IBM, Sun/Oracle and LLVM.
--
Eric Botcazou
enter the business of precompiled binaries.
Moreover, if we want people to contribute to GCC's development, especially
occasionally to fix a couple of bugs, we need to make it easier to build the
compiler, not the other way around.
--
Eric Botcazou
X
#endif
HOST_EXECUTABLE_SUFFIX and TARGET_EXECUTABLE_SUFFIX are defined only for VMS
and DOS/Windows. The effect is that ".exe" is forced on executables for these
targets only if they are built as native and not if they are built as cross.
OK for the mainline?
2017-10
need bleeding edge C++ features to build a
compiler and people don't work on compilers to use bleeding edge C++. Using a
narrow and sensible set of C++ features was one of the conditions under which
the switch to C++ as implementation language was accepted at the time.
--
Eric Botcazou
Small typo libgnarl->libgnat. Applied on the mainline.
2017-10-31 Eric Botcazou
PR ada/82785
* gcc-interface/Makefile.in (m68k/Linux): Fix typo.
--
Eric BotcazouIndex: gcc-interface/Makefile.in
===
---
-10-31 Matthew Fortune
Eric Botcazou
PR rtl-optimization/81803
* lra-constraints.c (curr_insn_transform): Also reload the whole
register for a strict subreg no wider than a word if this is for
a WORD_REGISTER_OPERATIONS target.
--
Eric BotcazouIndex: lr
n_a_setter instead of walking UD
> chains.
>
> * g++.dg/opt/pr82778.C: New test.
>
> 2017-10-31 Michael Collison
>
> PR rtl-optimization/82597
> * gcc.dg/pr82597.c: New test.
That's a clear progress, but the patch doesn't fully get rid of use-def and
def-use chains, does it?
--
Eric Botcazou
uted during the bb walking using the last_setter array
> and the latter is dropped.
Then why does the patch not remove the df_chain_add_problem call itself?
--
Eric Botcazou
a REG_P. Use cmp->in_a_setter instead of walking UD
> chains.
> (execute_compare_elim_after_reload): Remove df_chain_add_problem
> call.
>
> * g++.dg/opt/pr82778.C: New test.
>
> 2017-10-31 Michael Collison
>
> PR rtl-optimization/82597
> * gcc.dg/pr82597.c: New test.
This is OK if it successfully passes testing, thanks.
--
Eric Botcazou
> It's possible to have a line of code that has a non-zero coverage.
> However, it can contain unexecuted blocks and I hope adding a
> notification can be usefull. LLVM also does that:
>
> -:0:Source:ternary.c
> -:0:Graph:ternary.gcno
> -:0:Data:ternary.gcda
>
, the
second variant is slightly more general in case other languages need it too.
Tested on x86_64-suse-linux, OK for the mainline (and which one)?
2017-11-03 Eric Botcazou
* gcov.c (output_line_beginning): Document HAS_UNEXECUTED_BLOCK.
(output_lines): Always pass fals
0%]:
>return _6;
>
> }
>
> Isn't the some kind of exceptional basic block?
No, it's just the regular target of the goto just above.
> Can one find such blocks in middle-end? In case of C++, exceptional blocks
> are not considered for the warning.
Likewise, but it's a different issue here.
--
Eric Botcazou
entages, 0 in intermediate format
=== gnat Summary ===
# of expected passes3
# of unexpected failures2
Applied on the mainline.
2017-11-06 Eric Botcazou
* gnat.dg/gcov: New directory.
* gnat.dg/gcov/gcov.exp: New driver.
*
> Thank you for review, done that.
This has enabled -Wreturn-type for Ada, what we don't want since the warning
is outsmarted by the language, so I have applied this.
2017-11-06 Eric Botcazou
* gcc-interface/misc.c (gnat_post_options): Clear warn_return_type.
C family:
> if (!global_options_set.x_warn_return_type)
> warn_return_type = c_dialect_cxx ();
No disagreement.
--
Eric Botcazou
++14 (test for warnings, line 6)
FAIL: g++.dg/pr53037-3.C -std=gnu++98 (test for warnings, line 16)
FAIL: g++.dg/pr53037-3.C -std=gnu++98 (test for warnings, line 29)
FAIL: g++.dg/pr53037-3.C -std=gnu++98 (test for warnings, line 6)
2017-11-07 Eric Botcazou
PR c/53037
> We can drop the define if necessary, but we would like to keep the two
> flags. Would that be OK to apply?
Yes, OK to apply on mainline and 7 branch with this change, thanks.
--
Eric Botcazou
tructions for memory accesses known to be
> misaligned at compile-time.
>
> Note that full binutils support for M8 was upstreamed in May 19.
>
> Bootstrapped and tested in sparc64-linux-gnu. No regressions.
> Bootstrapped and tested in sparc-sun-solaris2.12. No regressions.
OK for mainline and 7 branch (I can do the backport to the branch).
--
Eric Botcazou
containing absolute addresses hidden behind a
COMPONENT_REF or similar references.
Fixed by adding support for INDIRECT_REF to decode_addr_const.
Tested on x86_64-suse-linux, OK for the mainline?
2017-07-07 Eric Botcazou
* varasm.c (decode_addr_const): Deal with INDIRECT_REF .
2017
eate a dependence distance of 1.
> * gnat.dg/vect16.adb (Add): Likewise.
> * gnat.dg/vect17.adb (Add): Likewise.
OK, thanks.
--
Eric Botcazou
> Great! Would you mind to apply the patch for us? The only person here
> with write access just went on vacation. I have submitted a new version
> (v4) with the change that applies to both main and 7.
OK, will do.
--
Eric Botcazou
out the undocumented tweaks to the divdf3_fix and sqrtdf2_fix
patterns. Why are 2 nops necessary here? The stored value doesn't matter.
And the length attribute should be adjusted if nops are added to the pattern.
--
Eric Botcazou
Yes, spilling is part of reloading but is not reloading the address since it's
changing the address, so I think it's OK. Why is that problematic for you?
--
Eric Botcazou
int.
Why do you absolutely need to have a misaligned address? Can't you just avert
your eyes and pretend that the address is misaligned? This will be suboptimal
but presumably work. To be honest, I'm not even sure that you really need an
additional constraint, but I haven't investigated the subject seriously.
--
Eric Botcazou
> we need to generate misaligned load/store insns ONLY for misaligned memory
> access, therefore need a new constraints for misaligned address.
Why? What happens exactly if the memory access turns out to be aligned?
--
Eric Botcazou
2001 - 2100 of 4611 matches
Mail list logo