and highly
sophisticated software when I sent my first awful patch. It was
full of fun to participate in this great community. I've learned
what is the right thing and how it can be done on the list.
Thanks to all members of gcc community!
Best Regards,
kaz
--
2017-05-09 Kaz Kojima <k
Hi,
I've applied the quick fix below for PR target/78633 which results
a build failure on the target. Tested on sh4-unknown-linux-gnu.
Regards,
kaz
--
2017-01-17 Kaz Kojima <kkoj...@gcc.gnu.org>
PR target/78633
* config/sh/sh.md (cmpeqsi_t+1): Call copy_rtx to
I've applied the attached patch to fix PR target/78426 which is
a regression caused by rtl sharing with sh_expand_{cmpnstr,setmem}.
Tested with "make -k check" on sh4-unknown-linux-gnu. I'll backport
it to release branches.
Regards,
kaz
--
2016-11-19 Kaz Kojima <kkoj..
Trevor Saunders wrote:
>> This hunk results several new failures for tree-profile tests on SH.
>> If the line "if (JUMP_P (cur_insn))" is restored, those failures
>> go away.
>
> That's interesting because dyn_cast should include that check. What is
> the error?
Here is
tbsaunde+...@tbsaunde.org wrote:
> @@ -2201,8 +2201,7 @@ fix_crossing_unconditional_branches (void)
> {
> if (!BARRIER_P (cur_insn))
> BLOCK_FOR_INSN (cur_insn) = cur_bb;
> - if (JUMP_P (cur_insn))
> - jump_insn =
HAVE_atomic_compare_and_swapsi to TARGET_ATOMIC_ANY
defined in sh-protos.h which can't be seen from tree-profile.c.
The patch simply moves definitions for atomic models to sh.h from
sh-protos.h and guard them with __cplusplus.
Regards,
kaz
--
2016-09-07 Kaz Kojima <kkoj...@gcc.gnu.org>
*
.
Regards,
kaz
--
2016-05-08 Kaz Kojima <kkoj...@gcc.gnu.org>
* config/sh/sh.h (SUBTARGET_ASM_RELAX_SPEC): Remove extra colon.
(SUBTARGET_ASM_ISA_SPEC): Likewise.
diff --git a/config/sh/sh.h b/config/sh/sh.h
index 16b4a8e..548a084 100644
--- a/config/sh/sh.h
+++ b/config/s
Bernd Edlinger wrote:
> No, I actually fixed it, thanks. That test was done without my patch:
>
> > LAST_UPDATED: Sun May 1 13:46:11 UTC 2016 (revision 235692)
>
> svn log -r235762
>
> r235762
Oleg Endo wrote:
> On Mon, 2016-05-02 at 16:13 +0200, Bernd Schmidt wrote:
>> On 05/02/2016 03:43 PM, Bernd Edlinger wrote:
>> > Yes, you are right. Only the original use-case seems to be
>> > sh-superh-elf specific. But there are also spec strings
>> > that are always
Jan-Benedict Glaw wrote:
> shle-linux breaks with:
>
> g++ -fno-PIE -c -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE
> -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall
> -Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute
>
-06 Kaz Kojima <kkoj...@gcc.gnu.org>
* config/sh/sh.md (rsqrtsf2): Adjust for canonical form with unspec.
diff --git a/config/sh/sh.md b/config/sh/sh.md
index 083febe..b6fe05c 100644
--- a/config/sh/sh.md
+++ b/config/sh/sh.md
@@ -13744,12 +13744,11 @@ label:
(define_insn &qu
Rich Felker wrote:
> The "chk_guard_add" pattern used for loading the GOT slot address for
> __stack_chk_guard hard-codes use of r12 as a fixed GOT register and
> thus is not suitable for FDPIC, where the saved initial value of r12
> from function entry is what we need.
The
I've committed the attached obvious patch to fix
FAIL: compiler driver --help=target option(s): "^ +-.*[^:.]$" absent from
output: " -mfdpic Generate ELF FDPIC code"
popping up after SH fdpic patch applied.
Regards,
kaz
--
2015-10-2
--
2015-10-26 Kaz Kojima <kkoj...@gcc.gnu.org>
PR target/68091
* config/sh/sh.c (sh_vector_mode_supported_p): Use
TARGET_SHMEDIA_FPU instead of TARGET_FPU_ANY.
diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c
index f8187e4..a153845 100644
--- a/gcc/config/sh/sh.c
+++
Eric Botcazou wrote:
> No, it is not if you don't need to make the variable addressable. In any
> case, the failure mode is another ICE in make_decl_rtl so easy to spot.
Thanks for your explanation! It clarifies the intent of
the original i386 patch.
Regards,
Oleg Endo wrote:
> On Mon, 2015-10-05 at 23:15 -0400, Rich Felker wrote:
>> - Is the use of self specs (see DRIVER_SELF_SPECS in sh.h) an
>> acceptable way to set the default? I brought this up before but
>> don't think anyone answered. I find this method more clear and
Oleg Endo wrote:
>> So apparently the strange behavior I observed is intended. Presumably
>> there is some mechanism to ensure that these functions are always
>> static-linked? But I don't see it. The libgcc spec I see is:
>>
>> *libgcc:
>> %{static|static-libgcc:-lgcc
>>
eded for SH targets. I'd like to
apply it anyway, because it fixes the ICEs and there are no
new failures on sh4-unknown-linux-gnu. Committed.
Regards,
kaz
--
2015-10-05 Kaz Kojima <kkoj...@gcc.gnu.org>
PR c/65345
* config/sh/sh.c (sh_atomic_assign_expand_fenv): Adju
Rich Felker wrote:
> I worked around it and opened an issue for it:
>
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67812
>
> But trying the patch on vanilla GCC trunk without my usual J2 target
> setup revealed some additional issues I need to address. I'm getting
> ICE in
I've committed the attached patch to fix PR target/67716. It
implements targetm.override_options_after_change for SH. Tested
on sh4-unknown-linux-gnu.
Regards,
kaz
--
2015-09-29 Kaz Kojima <kkoj...@gcc.gnu.org>
PR target/67716
* config/s
. Tested on sh4-unknown-linux-gnu.
Committed as revision 227953.
Regards,
kaz
--
2015-09-21 Kaz Kojima <kkoj...@gcc.gnu.org>
Backport from mainline
2015-09-16 Kaz Kojima <kkoj...@gcc.gnu.org>
PR target/67573
* config/sh/sh.md (call_pcre
I've committed the attached obvious fix for build failure for SH.
object_allocator is changed so to remove the 2nd argument of its
constructor.
Regards,
kaz
--
2015-09-17 Kaz Kojima <kkoj...@gcc.gnu.org>
* config/sh/sh.c (label_ref_list_d_pool):
I've committed the attached patch to fix PR67573. LRA reveals
that scratch registers in *call_*pcrel should be defined as
early clobbered. The patch is tested on sh4-unkown-linux-gnu.
Regards,
kaz
--
2015-09-16 Kaz Kojima <kkoj...@gcc.gnu.org>
PR target/67573
*
Rich Felker wrote:
> 2015-09-14 Rich Felker
>
> * gcc/configure.ac: Change target pattern for sh TLS support
> test from "sh[34]-*-*" to "sh[123456789lbe]*-*-*".
> * gcc/configure: Regenerate.
The patch is OK. I've committed it with
Rich Felker wrote:
> Bad patterns caused configure to always disable TLS for big-endian sh
> targets and for anything other than sh 3/4.
Could you please give a patch for the trunk with an appropriate
ChangeLog entry?
Regards,
kaz
Rich Felker wrote:
> I'm pretty sure this will still apply to trunk, but I can check that
> and add the changelog entry. Is there something I should read on the
> form or just follow the example from my last patch where you added it?
The latter would be enough for this, though
Rich Felker dal...@libc.org wrote:
A missing * in the pattern for sh targets prevents the --with-cpu
configure option from being accepted for certain targets (e.g. ones
with explicit endianness, like sh2eb).
Looks good to me, though we need the trunk patch first with
the appropriate ChangeLog
I've committed the patch with the attached ChangeLog entry
after testing on sh-elf and i686-pc-linux-gnu. I'd like to
backport it to the 5-branch after a week or so.
Rich, thanks for the patch.
Regards,
kaz
--
2015-08-30 Rich Felker dal...@libc.org
* config.gcc
for
pc relative sibcall jump targets if needed. It's tested on
sh4-unknown-linux-gnu with no new failures.
Regards,
kaz
--
2015-08-24 Kaz Kojima kkoj...@gcc.gnu.org
PR target/66609
* config/sh/sh.c (sh_asm_output_addr_const_extra): Handle
UNSPEC_PCREL
.
Regards,
kaz
--
2015-08-07 Kaz Kojima kkoj...@gcc.gnu.org
PR target/67002
* config/sh/sh.c (sh_recog_treg_set_expr): Return false when
currently_expanding_to_rtl is set.
diff --git a/config/sh/sh.c b/config/sh/sh.c
index f429193..450d634 100644
--- a/config/sh
Richard Sandiford richard.sandif...@arm.com wrote:
This patch converts the code to do everything via the optabs interface.
This required a change to the sh.md cmpstrn pattern, where the length
predicate was immediate_operand but where the expander code wanted
to handle nonimmediates too. I
I've committed the one liner below to fix PR target/67049 which causes
build failures for sh64-elf on 5/6. There is a typo in GOTaddr2picreg,
which is my bad. Tested on sh64-unknown-elf.
Regards,
kaz
--
2015-07-31 Kaz Kojima kkoj...@gcc.gnu.org
PR target/67049
backport it to 4.9 later and
to 5 when it reopens.
Regards,
kaz
--
2015-07-16 Kaz Kojima kkoj...@gcc.gnu.org
PR target/65249
* config/sh/sh.md (movdi): Split simple reg move to two movsi
when the destination is R0.
diff --git a/config/sh/sh.md b/config/sh/sh.md
Richard Biener rguent...@suse.de wrote:
Note this opens the window for other important wrong-code fixes - please
CC me on any you'd like to propose for GCC 5.2 and wait for my
explicit approval.
Can I backport the patch in
[SH] Fix PR target/66780
Richard Biener rguent...@suse.de wrote:
Can I backport the patch in
[SH] Fix PR target/66780
https://gcc.gnu.org/ml/gcc-patches/2015-07/msg00472.html
to gcc-5.2? It's a few lines change for a SH specific wrong code bug
with -fstack-protector which is disastrous for Debian SH folks who
target/65249. I'll
backport it to 4.9 later and to 5 when the branch reopens.
Regards,
kaz
--
2015-07-07 Kaz Kojima kkoj...@gcc.gnu.org
PR target/66780
* config/sh/sh.md (symGOT_load): Revert a part of 2015-03-03
change for target/65249.
diff --git a/config/sh
the length of casesi_worker_1 to 8 for PIC so to
avoid that misplacement of the constant pool. It's tested on
sh4-unknown-linux-gnu. Committed on trunk. I'll backport it
to 5 and 4.9.
Regards,
kaz
--
2015-06-30 Kaz Kojima kkoj...@gcc.gnu.org
PR target/64833
* config/sh/sh.md
backport it to 5 later and to 4.9 when it reopens.
Regards,
kaz
--
2015-06-24 Kaz Kojima kkoj...@gcc.gnu.org
PR target/66563
* config/sh/sh.md (GOTaddr2picreg): Add a new operand for
an additional element of the unspec vector. Modify indices
of operands
.
It looks to be rare even on SH in the actual codes and seems that
pre-allocating R0 for that index term in sh.c:prepare_move_operands
is enough ATM. The patch is tested on sh4-unknown-linux-gnu with
and without -mlra. CSiBE shows no visible regression.
Regards,
kaz
--
2015-06-19 Kaz
.
There are no visible changes over generated objects with -mno-lra
in CSiBE. Committed on trunk.
Regards,
kaz
--
2015-06-10 Kaz Kojima kkoj...@gcc.gnu.org
* config/sh/sh.md (tstsi_t): Add '?' modifier to 'r' alternative
of the second operand.
diff --git a/config/sh/sh.md b
.
The patch disparages this case for RA. It fixes PR and various
libstdc++ test failures happen on trunk with -mlra. Tested on
sh4-unknown-linux-gnu with no new failures. Committed.
Regards,
kaz
--
2015-06-05 Kaz Kojima kkoj...@gcc.gnu.org
PR target/66410
* config/sh
Uros Bizjak ubiz...@gmail.com wrote:
2015-05-27 Uros Bizjak ubiz...@gmail.com
* config/linux/sh/futex_bits.h (sys_futex0) Change operands
op and val to int.
Untested.
OK for mainline?
OK.
Although it looks obvious, I've confirmed that there is no build
issue/regression on
Hi,
I've committed the attached patches to fix PR target/65979
which is a 5/6 regression in behalf of Oleg. The problematic
peephole can clobber a register before its use. See PR65979 for
details. The first patch is for trunk and the second one is
a slightly different version against
. Tested on sh4-unknown-linux-gnu.
Regards,
kaz
--
2015-05-04 Kaz Kojima kkoj...@gcc.gnu.org
PR target/65987
* config/sh/sh.c (output_far_jump): Take into account crossing jumps.
(split_branches): Likewise.
diff --git a/config/sh/sh.c b/config/sh/sh.c
index 1cf6ed0
Steven Bosscher stevenb@gmail.com wrote:
This patch merely papers over another issue, probably a missing
CROSSING_JUMP_P test.
Perhaps. Surely it has looked the current DBR is not so well for
crossing jumps and my fix might be a bit ad-hoc.
The first part of the patch could be rewritten
Oleg Endo oleg.e...@t-online.de wrote:
I think the same should be done in t-sh and in t-linux we could add the
SH1 little endian exception, too ... just in case (see attached patch).
I'm not sure whether TM_MULTILIB_EXCEPTIONS_CONFIG is needed in t-linux
or not. Moreover, I don't understand
Yoshinori Sato ys...@users.sourceforge.jp wrote:
* config/sh/t-linux (MULTILIB_EXCEPTIONS): Define for m2a cases.
[snip]
It works fine.
Thanks for checking. I've committed it on trunk as revision 221287.
Regards,
kaz
Oleg Endo oleg.e...@t-online.de wrote:
Backporting of the fix went into GCC 5 seems to intrusive for the
released branches. Hence I'd propose to remove the problematic patterns
altogether, as they can silently generate wrong code. The attached
patch does that. Tested briefly with 'make all'
Oleg Endo oleg.e...@t-online.de wrote:
diff --git a/gcc/config/sh/t-linux b/gcc/config/sh/t-linux
index d33c638..22b8e3e 100644
--- a/gcc/config/sh/t-linux
+++ b/gcc/config/sh/t-linux
@@ -1,2 +1,3 @@
MULTILIB_DIRNAMES=
-MULTILIB_MATCHES =
+MULTILIB_MATCHES =
+MULTILIB_EXCEPTIONS = m2a
, SH is still in
transition to LRA and we have no chance for 4.9.
Tested with sh4-unknown-linux-gnu on trunk and 4.9 branch.
Committed on trunk and 4.9.
Regards,
kaz
--
2015-03-03 Kaz Kojima kkoj...@gcc.gnu.org
PR target/65249
* config/sh/sh.md (symGOT_load): Use R0 reg
Oleg Endo oleg.e...@t-online.de wrote:
These are the peepholes as mentioned in PR 65153 and in PR 61142. They
try to wallpaper some bad RA choices and reduce the CSiBE code size by
approx. 3.9K bytes.
A problem I ran into with this one is that the peephole2 pass drops
REG_INC notes, which
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65153
for details.
Tested on sh4-unknwon-linux-gnu with no new failures. Committed
on trunk. I'll backport it to 4.9 branch later.
Regards,
kaz
--
2015-02-23 Kaz Kojima kkoj...@gcc.gnu.org
PR target/65153
* config/sh/sh.md
I've committed the attached patch to fix two failures of
tree-ssa tests on SH. Tested on sh4-unknown-linux-gnu
and i686-pc-linux-gnu.
Regards,
kaz
--
2015-02-19 Kaz Kojima kkoj...@gcc.gnu.org
* gcc.dg/tree-ssa/20040204-1.c: Don't XFAIL on sh*-*-*.
* gcc.dg/tree-ssa/sra
Thomas Schwinge tho...@codesourcery.com wrote:
To resolve the immediate problem: is my approval enough for Kaz to
commit the patch, or does that need a more authoritative approval?
I'd like to commit my patch as a quick fix in a few days if
no one objects.
I think I copied this approach from
Oleg Endo oleg.e...@t-online.de wrote:
The attached patch fixes the lost mem aliasing info for atomic ops on SH
and allows the utilization of reg+disp address modes for atomic ops.
Actually it was supposed to be a pretty straight forward patch that just
replaces the open coded 'mem:QIHISI
Jeff Law l...@redhat.com wrote:
Ping?
https://gcc.gnu.org/ml/gcc-patches/2015-01/msg02345.html
Presumably you're pinging due to the reorg/doc changes? Those are
fine :-)
Thanks! I've committed it as revision 220552.
Regards,
kaz
This patch adds a new jump insn for the jump crossing between hot/cold
pertitions and reenables -freorder-blocks-and-partition on SH in
some cases.
--
PR target/64761
* config/sh/sh.c (sh_option_override): Don't change
-freorder-blocks-and-partition to -freorder-blocks
Hi,
Several goacc/acc_on_device tests fail for a few targets:
hppa2.0w-hp-hpux11.11 (PR testsuite/64850)
https://gcc.gnu.org/ml/gcc-testresults/2015-01/msg02659.html
m68k-unknown-linux-gnu
https://gcc.gnu.org/ml/gcc-testresults/2015-01/msg02960.html
sh4-unknown-linux-gnu
Kaz Kojima kkoj...@rr.iij4u.or.jp wrote:
2015-01-27 Joern Rennecke joern.renne...@embecosm.com
Kaz Kojima kkoj...@gcc.gnu.org
PR target/64761
* config/sh/sh-protos.h (sh_can_redirect_branch): Don't declare.
* config/sh/sh.c (TARGET_CAN_FOLLOW_JUMP): Redefine
Jeff Law l...@redhat.com wrote:
OK. I'm a bit surprised we're still finding this kind of stuff 10
years after NOTE_INSN_SWITCH_TEXT_SECTIONS went in. Sigh.
Thanks for reviewing. I've committed it as revision 220235
after testing the patch independently.
Regards,
kaz
This patch is to fix 2 issues found in dbr_schedule when trying to
fix PR target/64761. The first is relax_delay_slots removes
the jump insn in the insns like below:
(jump_insn/j 74 58 59 (set (pc) (label_ref:SI 29)) ...)
(barrier 59 74 105)
(note 105 59 29 NOTE_INSN_SWITCH_TEXT_SECTIONS)
[i'd like to add Joern to CC list because this is based on his patch.]
Hi,
This patch series is to fix PR target/64761 which is formally a 4.9/5
regression. The fix is splitted into 3 pieces:
[PATCH 1/3] Replace MD_REDIRECT_BRANCH with TARGET_CAN_FOLLOW_JUMP
[PATCH 2/3] [SH] Add jump insn for
This patch adds a new jump insn for the jump crossing between hot/cold
pertitions and reenables -freorder-blocks-and-partition on SH in
some cases.
--
PR target/64761
* config/sh/sh.c (sh_option_override): Don't change
-freorder-blocks-and-partition to -freorder-blocks
This is an updated patch of the patch proposed by Joern
https://gcc.gnu.org/ml/gcc-patches/2013-04/msg01332.html
which replaces MD_REDIRECT_BRANCH of which SH is the last user
with TARGET_CAN_FOLLOW_JUMP.
--
2015-01-27 Joern Rennecke joern.renne...@embecosm.com
Kaz Kojima kkoj
Oleg Endo oleg.e...@t-online.de wrote:
The updated treg_set_expr patch is attached, which should fix the GBR
issues. Tests here OK.
Kaz, could you please try again?
New tests that FAIL:
libgomp.fortran/udr14.f90 -O3 -g (internal compiler error)
libgomp.fortran/udr14.f90 -O3 -g (test
Oleg Endo oleg.e...@t-online.de wrote:
Kaz, could you please test the patch on your sh4-linux setup and report
your findings? Even though it's a bit late, I'd like to get this in for
GCC 5, if it doesn't break too many things.
Looks wrong code problem for tls and atomic constructs.
Here is
-exec-5.c is fixed with it on that target.
Regards,
kaz
--
2015-01-12 Kaz Kojima kkoj...@gcc.gnu.org
* config/sh/sh.c (sh_atomic_assign_expand_fenv): New function.
(TARGET_ATOMIC_ASSIGN_EXPAND_FENV): Define.
(sh_builtin_get_fpscr, sh_builtin_set_fpscr): New variables
Hi,
The attached patch is to fix libffi build failure for
sh4-unknown-linux-gnu. Without it, configure fails with:
configure: error: libffi has not been ported to sh4-unknown-linux-gnu.
on that target. OK for trunk?
Regards,
kaz
--
2015-01-13 Kaz Kojima kkoj...@gcc.gnu.org
Kaz Kojima kkoj...@gcc.gnu.org
PR target/64533
* config/sh/sh.md (*addsi3_compact): Use u constraint instead
of r for the second alternative of the destination operand.
diff --git a/gcc/config/sh/sh.md b/gcc/config/sh/sh.md
index 37d2a20..6e0b97f 100644
--- a/gcc/config/sh
It would be nice to have a small test case for this problem with
compiler options to reproduce it.
Thanks for the detailed explanation. The original issue has found
with the older sh-lra branch which was based on trunk at this September.
Now I've found that the original test case in
Vladimir Makarov vmaka...@redhat.com wrote:
I don't think it will be easy to solve this problem by following reg
pressure. I guess R0 will be in the same pressure reg class. I
believe some hook is an adequate solution here.
--
* lra-constraints.c (get_equiv): Don't return memory
Vladimir Makarov vmaka...@redhat.com wrote:
* lra.c (lra_update_insn_regno_info): Take account of arguments
via memory which could be implicit usage of pseudo regs.
It could be a solution but I believe the problem should be solved in
some other way. The patch will generate a
Vladimir Makarov vmaka...@redhat.com wrote:
* lra-constraints.c (process_address_1): Try if target can split
displacement with targetm.legitimize_address_displacement.
* target.def (legitimize_address_displacement): New hook.
* targhooks.c
This patch series is to make SH target use LRA and is discussed
in the PR target/55212:
[SH] Switch to LRA
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55212
I think there are issues which should be solved before defaulting
LRA on SH and the helps from the experts are needed. The series
are
This patch is discussed in PR55212
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55212#c47
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55212#c48
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55212#c49
and is to avoid segfault in remove_pseudos.
In the problematic case in #c47, a call_insn has a
This was discussed in PR55212
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55212#c52
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55212#c53
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55212#c55
and is to fix ICE in assign_by_spills.
In that case, rtlanal.c:decompose_mem_address guesses base and
This was discussed in PR55212
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55212#c25
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55212#c58
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55212#c69
and is to fix another ICEs in assign_by_spills.
This patch introduces a new target hook to disable
This patch adds a target macro discussed in PR55212
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55212#c76
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55212#c78
is to avoid bad codes on SH.
SH has very limited base+displacement addressing and it looks
that the old reload has some mechanism so
This patch adds -mlra option to SH. -mno-lra is default ATM.
--
* config/sh/sh.c (sh_lra_p): New function.
(TARGET_LRA_P): Define.
(sh_legitimize_reload_address): Return false if sh_lra_p is true.
* config/sh/sh.opt (mlra): New option.
diff --git a/config/sh/sh.c
This patch fixes various issues found when enabling LRA. The essential
works were done by oleg in PR55212.
--
* config/sh/predicates.md (general_movsrc_operand): Allow only
valid plus address expressions.
(general_movdst_operand): Likewise.
(t_reg_operand): Allow
This patch is discussed in PR55212
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55212#c40
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55212#c41
and is to fix reload loop issues which happen with movsf_ie/movsi_ie.
It seems that LRA behaves differently from old reload with the choice
of
This patch is discussed in PR55212
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55212#c65
and is to make LRA's register elimination work well on SH.
The problem is SH has very limited add instructions only and expands
rA := rB + N to (set rA (const_int N)) and (set rA (plus rA rB))
instead of
This patch is discussed in PR55212
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55212#c77
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55212#c82
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55212#c83
and is to improve code quality with LRA.
SH HI/QImode load/store instructions take r0 as the
Oleg Endo oleg.e...@t-online.de wrote:
Kaz, could you please check if the patch doesn't break anything on
sh4-linux? If so, I'd like to commit this to trunk.
Build and test ok on sh4-unknown-linux-gnu.
Regards,
kaz
Hi,
I've got odd ICEs with some bitmap operations when working on
sh-lra branch.
bitmap_ior and bitmap_ior_and_compl are the bitmap operations
for DST = A | B and DST = A | (B ~KILL) respectively. It
looks they could make bitmaps with the wrong current pointer.
One small example is
DST: [(bit
Richard Biener richard.guent...@gmail.com wrote:
Huh? Wasn't this fixed by Mike a few weeks ago?
Ugh. I've missed that thread. Sorry for the noise.
Regards,
kaz
Mike Stump m...@mrs.kithrup.com wrote:
While I had testing on my target, there were plenty of other regressions
from trunk intermixed, so I wanted to do a normal bootstrap on Linux which
I had not done yet. Kaz, you can check your patch, if the same, pretty
sure it is, it has been approved
James Greenhalgh james.greenha...@arm.com wrote:
I tried building a compiler and there were no fires, but otherwise,
I have no reasonable way to test this patch. If one of the sh
maintainers wants to pick it up and test it, that would be much
appreciated.
SH portion looks fine. No new
James Greenhalgh james.greenha...@arm.com wrote:
This patch moves sh to TARGET_MOVE_BY_PIECES_PROFITABLE_P.
I tried building a compiler and there were no fires, but otherwise,
I have no reasonable way to test this patch. If one of the sh
maintainers wants to pick it up and test it, that
it to branches in a week or so.
Regards,
kaz
--
2014-09-29 Kaz Kojima kkoj...@gcc.gnu.org
* config/sh/sh.md: Use define_c_enum for unspec and unspecv.
--- ORIG/trunk/gcc/config/sh/sh.md 2014-09-20 08:59:46.0 +0900
+++ trunk/gcc/config/sh/sh.md 2014-09-29 09:36
Mike Stump mikest...@comcast.net wrote:
BTW, Jeff's comment on pr39228.c makes me think that this test
can be moved into execute/ieee. Thought?
I don’t see a down side, specially if we know that the test case is picky
about ieee.
Thanks for suggestion. The patch below simply moves it
me think that this test
can be moved into execute/ieee. Thought?
Regards,
kaz
--
2014-09-04 Kaz Kojima kkoj...@gcc.gnu.org
* gcc.c-torture/execute/pr44683.c: Remove dg-options for sh*-*-*.
--- ORIG/trunk/gcc/testsuite/gcc.c-torture/execute/pr44683.c2014-08-26
09:26
Uros Bizjak ubiz...@gmail.com wrote:
-/* { dg-options -mieee { target sh*-*-* alpha*-*-* } } */
+/* { dg-options -w -mieee { target sh*-*-* alpha*-*-* } } */
/* { dg-skip-if No Inf/NaN support { spu-*-* } * } */
Please use /* { dg-add-options ieee } */ directive here. There is
another one
Jeff Law l...@redhat.com wrote:
* gcc.c-torture/execute/pr39228.c: Use dg-additional-options
instead of dg-options and remove sh*-*-* from its target list.
Add inline keyword to test functions.
Wouldn't we be better off moving this into execute/ieee?
I've tried it and found
Hi,
gcc.c-torture/execute/pr39228.c fails with (test for excess errors)
on SH for recent revisions. My gcc.log says:
gcc.c-torture/execute/pr39228.c:20:43: warning: always_inline function might
not be inlinable [-Wattributes]
...
It looks that alpha has the similar issue:
Oleg Endo oleg.e...@t-online.de wrote:
-mieee should be the default on sh* and thus can be removed from the
dg-options line, or is it not? If -mieee is still needed (for alpha) maybe
it's better to use dg-additional-options instead?
Sure. The attached is a revised one.
Regards,
,
kaz
--
2014-08-27 Kaz Kojima kkoj...@gcc.gnu.org
PR target/62261
* config/sh/sh.md (ashlsi3): Handle negative shift count for
TARGET_SHMEDIA.
(ashldi3, ashrsi3, ashrdi3, lshrsi3, lshrdi3): Likewise.
--- ORIG/trunk/gcc/config/sh/sh.md 2014-07-03 09:10
for details. Tested on sh64-elf and sh4-unknown-linux-gnu with
no new failures. I'll backport this to 4.9 in a week or so.
Regards,
kaz
--
2014-08-25 Kaz Kojima kkoj...@gcc.gnu.org
PR target/62111
* config/sh/predicates.md (general_extend_operand): Disable
it. Committed on trunk.
Regards,
kaz
--
2014-06-18 Kaz Kojima kkoj...@gcc.gnu.org
PR target/61550
* config/sh/sh.c (prepare_move_operands): Don't process TLS
addresses here if reload in progress or completed.
--- ORIG/trunk/gcc/config/sh/sh.c 2014-06-17
Christian Bruel christian.br...@st.com wrote:
This patch reduces the number of unnecessary PR mode switches for single
precision moves. When FPSCR.SZ is not forced. Test illustration in the patch
Regtested for sh-none-elf with -m4, (-m2a still running), bootstrapped
on sh4-linux-elf board.
1 - 100 of 384 matches
Mail list logo