Hi,
The attached patch fixes PR 101469.
Tested by the original reporter Rin Okuyama on NetBSD with GCC 10.5.
Applied to master, GCC 11, GCC 12, GCC 13 after 'make all' sanity check.
Cheers,
Oleg
gcc/ChangeLog:
PR target/101469
* config/sh/sh.md (peephole2): Handle case where el
ote result.
From 3ce4e99303d01d348229cca22bf8d3dd63004e01 Mon Sep 17 00:00:00 2001
From: Oleg Endo
Date: Fri, 20 Oct 2023 18:48:34 +0900
Subject: [PATCH] SH: Fix PR 101177
Fix accidentally inverted comparison.
gcc/ChangeLog:
PR target/101177
* config/sh/sh.md (unnamed split pattern): Fix com
combine.cc (sh_treg_combine::record_set_of_reg):
Skip over nop move insns.
From 4414818f4e5de54ea3c353e2ebb2e79a89ae211b Mon Sep 17 00:00:00 2001
From: Oleg Endo
Date: Mon, 23 Oct 2023 22:08:37 +0900
Subject: [PATCH] SH: Fix PR 111001
gcc/ChangeLog:
PR target/111001
* config/sh/sh_treg_
On Mon, 2022-03-14 at 18:04 -0700, Andrew Pinski via Gcc-patches wrote:
> On Mon, Mar 14, 2022 at 5:33 PM Joern Rennecke
> wrote:
> >
> > Most microprocessors have efficient ways to perform CRC operations, be
> > that with lookup tables, rotates, or even special instructions.
> > However, because
On Fri, 2022-01-28 at 15:18 -0700, Jeff Law via Gcc-patches wrote:
>
> On 1/12/2022 2:02 AM, Yoshinori Sato wrote:
> > sh-linux not supported any SH1 and SH2a little-endian.
> > Add exceptios it.
> >
> > gcc/ChangeLog:
> >
> > * config/sh/t-linux (MULTILIB_EXCEPTIONS): Add m1, mb/m1 and m2a.
On Sat, 2019-10-26 at 12:21 -0600, Jeff Law wrote:
> On 10/25/19 11:39 AM, Craig Blackmore wrote:
> > This patch aims to allow more load/store instructions to be
> > compressed by
> > replacing a load/store of 'base register + large offset' with a new
> > load/store
> > of 'new base + small offset'
On Sat, 2019-10-26 at 14:04 -0600, Jeff Law wrote:
> On 10/26/19 1:33 PM, Andrew Waterman wrote:
> > I don't know enough to say whether the legitimize_address hook is
> > sufficient for the intended purpose, but I am sure that RISC-V's
> > concerns are not unique: other GCC targets have to cope wit
On Tue, 2019-10-29 at 11:26 +0100, Richard Biener wrote:
> While I converted other iterators requiring special BREAK_FROM_XYZ
> a few years ago FOR_EACH_IMM_USE_STMT is remaining. I've pondered
> a bit but cannot arrive at a "nice" solution here with just one
> iterator as the macros happen to use
On Fri, 2019-10-11 at 23:27 +0900, Oleg Endo wrote:
> On Thu, 2019-10-03 at 19:34 -0600, Jeff Law wrote:
> >
> > So probably the most interesting target for this test is v850-elf
> > as
> > it's got a reasonably well functioning simulator, hard and soft FP
>
On Wed, 2019-10-30 at 10:27 +0100, Richard Biener wrote:
>
> Hmm, not sure - I'd like to write
>
> for (gimple *use_stmt : imm_stmt_uses (SSAVAR))
>for (use_operand_p use_p : from
> above>)
> ...
>
> I don't see how that's possible. It would need to be "awkward" like
>
> for (auto
On Thu, 2019-11-07 at 21:37 +, Jozef Lawrynowicz wrote:
> The code size bloat added by building C++ programs using libraries containing
> support for exceptions is significant. When using simple constructs such as
> static variables, sometimes many kB from the libraries are unnecessarily
> pull
On Thu, 2019-11-07 at 21:31 +, Jozef Lawrynowicz wrote:
> When building small programs for MSP430, the impact of the unused
> functions pulled in from the CRT libraries is quite noticeable. Most of these
> relates to feature that will never be used for MSP430 (Transactional memory,
> supporting
On Fri, 2019-11-08 at 13:27 +, Jozef Lawrynowicz wrote:
>
> Yes, I should have used -flto in my examples. But it doesn't help remove these
> CRT library functions which are normally either directly added to the
> list of functions to run before main (via .init, .ctors or .init_array) or
> use
On Tue, 2019-12-03 at 12:05 -0600, Segher Boessenkool wrote:
> On Tue, Dec 03, 2019 at 10:33:48PM +0900, Oleg Endo wrote:
> > On Mon, 2019-11-25 at 16:47 -0600, Segher Boessenkool wrote:
> > >
> > > > > - sh (that's sh4-linux):
> > > > >
>
On Fri, 2019-12-06 at 16:51 -0600, Segher Boessenkool wrote:
> On Wed, Dec 04, 2019 at 07:43:30PM +0900, Oleg Endo wrote:
> > On Tue, 2019-12-03 at 12:05 -0600, Segher Boessenkool wrote:
> > > > Hmm ... the R0 problem ... SH doesn't override class_likely_spilled
> >
On Tue, 2019-11-26 at 07:38 +0100, ste...@franke.ms wrote:
> > On 11/21/19 10:30 AM, ste...@franke.ms wrote:
> > > Hi there,
> > >
> > > here is mc68k's patch to switch the m68k architecture over to ccmode and
> > > lra. See https://github.com/mc68kghost/gcc 68k-ccmode branch.
> >
> > Bernd Schmi
On Fri, 2019-12-13 at 05:03 -0600, Segher Boessenkool wrote:
> On Thu, Dec 12, 2019 at 09:32:27AM +, Richard Sandiford wrote:
> > I doubt it will be long before we deprecate
> > all targets that require old reload.)
>
> Do we wait until GCC 12 (to remove old reload completely)? If not, we
> s
On Fri, 2019-12-13 at 08:09 -0600, Segher Boessenkool wrote:
> On Fri, Dec 13, 2019 at 10:06:20PM +0900, Oleg Endo wrote:
> > On Fri, 2019-12-13 at 05:03 -0600, Segher Boessenkool wrote:
> > > On Thu, Dec 12, 2019 at 09:32:27AM +, Richard Sandiford
> > > wrote:
>
On Fri, 2019-12-13 at 15:57 +0100, John Paul Adrian Glaubitz wrote:
> Hello Segher!
>
> > With LRA, sh builds fine (with the combine2 patches). I have no idea
> > if correct code is generated, but it doesn't ICE anymore.
>
> What are the combine2 patches?
See the other thread that I've linked i
On Fri, 2019-12-13 at 16:09 +0100, John Paul Adrian Glaubitz wrote:
> Hi!
>
> On 12/13/19 4:06 PM, Oleg Endo wrote:
> > > What are the combine2 patches?
> >
> > See the other thread that I've linked in my message.
>
> I don't see any patch there
On Wed, 2021-06-02 at 00:05 -0500, Kewen Lin wrote:
> gcc/ChangeLog:
>
> * config/sh/sh.md (doloop_end_split): Fix empty split condition.
> ---
> gcc/config/sh/sh.md | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/gcc/config/sh/sh.md b/gcc/config/sh/sh.md
> index e
where the input
is not an insn, but e.g. a code label.
From 4ff8ffe7331cf174668cf5c729fd68ff327ab014 Mon Sep 17 00:00:00 2001
From: Oleg Endo
Date: Sun, 3 Mar 2024 14:58:58 +0900
Subject: [PATCH] SH: Fix 101737
gcc/ChangeLog:
PR target/101737
* config/sh/sh.cc (sh_is_nott_insn): Handle case wher
he right solution here.
>
> It is also worth noting I'm bootstrapping and regression testing the
> m68k weekly.
>
>
Jeff, could you please consider sharing your test setup so that others can
reproduce it as well?
I'd be really better if more people had access to a unified test setup and
methodology.
Best regards,
Oleg Endo
On Sun, 2024-01-21 at 19:14 -0700, Jeff Law wrote:
> The change for pr111267 twiddled code generation for sh/pr59533-1.c
>
> We end up eliminating two comparisons, but require two shll instructions
> to do so. And in a couple places we're using an addc sequence rather
> than a subc sequence.
On Sun, 2023-11-19 at 17:47 -0700, Jeff Law wrote:
> This is work originally started by Joern @ Embecosm.
>
> There's been a long standing sense that we're generating too many
> sign/zero extensions on the RISC-V port. REE is useful, but it's really
> focused on a relatively narrow part of th
On Sun, 2023-11-19 at 19:51 -0700, Jeff Law wrote:
>
> On 11/19/23 18:22, Oleg Endo wrote:
> >
> > On Sun, 2023-11-19 at 17:47 -0700, Jeff Law wrote:
> > > This is work originally started by Joern @ Embecosm.
> > >
> > > There's been a
On Sun, 2023-09-24 at 00:05 +0100, Joern Rennecke wrote:
>
> Although maybe Oleg Endo's library, as mentioned in
> https://gcc.gnu.org/pipermail/gcc-patches/2022-March/591748.html ,
> might be suitable? What is the license for that?
>
>
I haven't published the library, but I think I could do t
r6,r8
add r8,r0
lds.l @r15+,pr
rts
mov.l @r15+,r8
.L4:
.align 2
.L3:
.long _test01
Best regards,
Oleg Endo
On Wed, 2024-06-26 at 16:39 -0600, Jeff Law wrote:
>
> On 6/26/24 4:12 PM, Oleg Endo wrote:
> >
> >
> > On Wed, 2024-06-26 at 07:22 -0600, Jeff Law wrote:
> > > Surya's recent patch to IRA improves the code for sh/pr54602-1.c
> > > slight
the last delay slot is not
stuffed, although the 'add r1,r0' could go in there.
I'd like to revert the removal of this test case, as it catches a valid
issue.
Best regards,
Oleg Endo
n/opt-out so keep the
compile times down.
Best regards,
Oleg Endo
bc for... mostly bad reasons).
>
> Deferring maybe again to the few SH users... how do you usually do it?
>
>
I think it would make sense to test it using sh-sim on SH2 big-endian and
little endian at least, as that doesn't have an FPU and hence would run
tests utilizing soft-fp.
After building the toolchain for --target=sh-elf, you can use this to run
the testsuite in the simulator:
make -k check RUNTESTFLAGS="--target_board=sh-sim\{-m2/-ml,-m2/-mb}"
(add make -j parameter according to you needs -- it will be slow)
Let me know if you have any further questions.
Best regards,
Oleg Endo
s "#".
>
> This patch fixes the most obvious & egregious cases by bringing the
> split condition into the insn's predicate and leaving "&& 1" as the
> split condition. That's enough to get sh4-linux-gnu bootstrapping again
> and I'm hoping it does the same for sh4eb-linux-gnu.
>
> Pushing to the trunk.
>
Thanks, Jeff!
Best regards,
Oleg Endo
b38918e/attachment.bin
>
> This is almost certainly a poorly written pattern. I just fixed a bunch
> of these, but not this one. Essentially a recent change in the generic
> parts of the compiler is exposing some bugs in the SH backend.
The patterns were written and tested to the best of our knowledge at that
time many years ago. Nobody thought that we'll get a 2nd combine pass after
RA. Anyway, I'll have a look at the remaining patterns.
Sebastien, in the meantime you could also try out and test your changes on
the latest GCC 14 branch, which shouldn't have those issues.
Best regards,
Oleg Endo
s,
originally contracted by Hitachi to complement their own in-house C compiler
and also to allow sh-linux to happen at some point. It was entertained by
Renesas for a while through further contracted support work but eventually
they have abandoned it. STmicro was also a licensee of the SH4 CPU for
their TV set top boxes and had a few guys submitting patches now and then
for a while. But the whole thing basically went on life support about 10
years ago.
Perhaps Jeff or others can give more insight on the historical parts.
Best regards,
Oleg Endo
basically to run an additional loop pass after combine and
split1. The main purpose is to hoist constant loads out of loops. Such
constant loads might be formed (in this particular case) during combine
transformations.
The patch adds a new file gcc/config/sh/sh_loop.cc, which has some boiler-
plate code copy pasted from other places to get the loop pass setup and
going.
Any thoughts on this way of doing it?
Best regards,
Oleg Endo
Hi!
On Sun, 2024-06-02 at 22:01 -0500, Kewen Lin wrote:
> This is to remove macro LONG_DOUBLE_TYPE_SIZE define in
> sh port, and add new port specific hook implementation
> sh_c_mode_for_floating_type.
>
The SH parts look OK to me.
Best regards,
Oleg Endo
>
potting this. Makes sense, please install.
Best regards,
Oleg Endo
>
> gcc/
> * config/sh/sh.md (*minus_plus_one): Add constraints.
> ---
> gcc/config/sh/sh.md | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/gcc/config/sh/sh.md b/gcc
sium-elf 1392 1106286 79.45% -7984 -2
> xstormy16-elf 2577 2071506 80.36% -13061 -1
>
>
Since you have already briefly compared some of the code, can you share
those cases which get worse and might require some potential follow up
patches?
Best regards,
Oleg Endo
Hi,
I've committed the attached patch to fix the full gcc + libstdc++ build on
sh-elf.
Best regards,
Oleg Endo
On Sat, 2024-07-06 at 07:35 -0600, Jeff Law wrote:
>
> On 7/5/24 1:28 AM, Sébastien Michelland wrote:
> > Hi Oleg!
> >
> > > I don't understand
s in some cases for debug insn
> related stuff.
>
> Build and tested for sh4-linux-gnu.
Thanks so much!
I think it should be safe to install this on all open branches.
Best regards,
Oleg Endo
>
> PR target/116189
>
> gcc/ChangeLog:
>
> * config/sh
Hi,
I've been working on a SH specific RTL pass and just adapted it to the
new pass handling. One thing that bugged me was pass registration. How
about adding an overload for 'register_pass' as in the attached patch?
Registering a pass is then as simple as:
register_pass (make_new_ifcvt_sh (g
On Wed, 2013-08-07 at 21:24 +0200, Oleg Endo wrote:
> On Wed, 2013-08-07 at 15:08 -0400, Michael Meissner wrote:
> > On Tue, Aug 06, 2013 at 11:45:40PM +0200, Oleg Endo wrote:
> > > On Mon, 2013-08-05 at 13:25 -1000, Richard Henderson wrote:
> > > > On 08/05/
On Thu, 2013-08-29 at 20:51 +0200, Jakub Jelinek wrote:
> On Thu, Aug 29, 2013 at 08:45:33PM +0200, Oleg Endo wrote:
> > Sorry for the delay. I've just backported the 2 patches to 4.8.
> > Tested with 'make all-gcc' for SH and PPC cross compilers.
> > Committe
On Thu, 2013-09-12 at 15:37 +0200, Christian Bruel wrote:
> The attached patch fixes an ice while building the linux kernel. Reduced
> in the included testcase.
>
> The problem is that we are generating a movhi_reg_reg insn that accepts
> only registers as operands. Spilling a pseudo on the stack
On Wed, 2013-09-18 at 09:55 +0200, Christian Bruel wrote:
> Hi Richard,
>
> On 09/16/2013 07:10 PM, Richard Sandiford wrote:
> > Hi Christian,
> >
> > Christian Bruel writes:
> >> @@ -6893,11 +6894,14 @@ label:
> >> ;; reloading MAC subregs otherwise. For that probably special patterns
> >> ;;
On Thu, 2013-09-19 at 08:15 +0900, Kaz Kojima wrote:
> Christian Bruel wrote:
> > && (!can_create_pseudo_p () && REG_P (operands[0]) && REG_P (operands[1]))"
> >
> > is necessary ?
>
> It looks an another hack to allow the 2nd and 3rd alternatives only
> when reloading. If so, it might be a bit
Hi,
On Thu, 2013-09-19 at 10:44 +0200, Christian Bruel wrote:
> Hi Kaz, Oleg,
>
> On 09/19/2013 01:15 AM, Kaz Kojima wrote:
> > Christian Bruel wrote:
> >> && (!can_create_pseudo_p () && REG_P (operands[0]) && REG_P (operands[1]))"
> >>
> >> is necessary ?
> > It looks an another hack to allow t
On Tue, 2013-09-24 at 12:31 +0200, Richard Biener wrote:
> On Tue, Sep 24, 2013 at 11:13 AM, bin.cheng wrote:
> > Hi,
> > This patch fix two minor bugs when computing offset in IVOPT.
> > 1) Considering below example:
> > #define MAX 100
> > struct tag
> > {
> > int i;
> > int j;
> > }
> > str
Hello,
The attached patch fixes a few formatting nits in sh.md.
Committed as rev. 202876.
Cheers,
Oleg
gcc/ChangeLog:
config/sh/sh.md: Fix formatting.
Index: gcc/config/sh/sh.md
===
--- gcc/config/sh/sh.md (revision 202873)
On Fri, 2012-09-28 at 21:12 -0700, Benjamin De Kosnik wrote:
> ... found while working on arm-eabisim cross, using --enable-cxx-flags
> was not working as AM_CXXFLAGS was being over-ridden by CXXFLAGS.
> (Despite the comments warning about this.)
>
> Fixed.
>
> Also patchlet for the last commit,
Hello,
This implements the changes as proposed PR, albeit with some small
differences:
* I decided to go for a more verbose option name '-matomic-model'
instead of just '-matomic'.
* In addition to the soft-tcb model I've also added a soft-imask model.
Interrupt-flipping atomics might not be t
On Mon, 2012-10-01 at 08:38 +0900, Kaz Kojima wrote:
> Oleg Endo wrote:
> > This implements the changes as proposed PR, albeit with some small
> > differences:
>
> > --- gcc/config/sh/sh.c (revision 191865)
> > +++ gcc/config/sh/sh.c (working copy)
>
Hello,
This handles the case where the T bit is stored to a reg as the value
0x7FFF or 0x8000.
Tested on rev 191894 with
make -k check RUNTESTFLAGS="--target_board=sh-sim
\{-m2/-ml,-m2/-mb,-m2a/-mb,-m4/-ml,-m4/-mb,-m4a/-ml,-m4a/-mb}"
and no new failures.
OK?
Cheers,
Oleg
gcc/ChangeLog:
Hello,
This is the patch as proposed in the PR to make
libgcc/config/sh/linux-atomic use the appropriate compiler generated
atomic built-in functions depending on the currently selected
atomic-model.
Tested on 191894 with 'make all-gcc' and by compiling code to see if the
__SH_ATOMIC_MODEL_*__ de
Hello,
This adds the two common built-in functions __builtin_thread_pointer and
__builtin_set_thread_pointer to the SH port.
I've done it in a way so that hopefully it can be transitioned to target
independent thread pointer built-ins easily, as suggested by Richard a
while ago:
http://gcc.gnu.org
On Wed, 2012-10-03 at 23:21 +0200, Oleg Endo wrote:
> testsuite/ChangeLog:
>
> PR target/54760
> * gcc.target/sh/pr54706-1.c: New.
> * gcc.target/sh/pr54706-2.c: New.
> * gcc.target/sh/pr54706-3.c: New.
Obviously there is a typo in the file names
Hello,
Since the -mieee behavior has been fixed, is enabled by default on SH
and the additional flags in libgcc can be removed.
OK?
Cheers,
Oleg
libgcc/ChangeLog:
PR target/33135
* config/sh/t-sh (HOST_LIBGCC2_CFLAGS): Delete.
* config/sh/t-netbsd (HOST_LIBGCC2_CFLAGS):
Hello,
The atomic options of SH have been changed recently. The attached patch
updates the 4.8 changes.html accordingly, plus some minor wording fixes.
OK?
Cheers,
Oleg
? www_4_8_sh_changes_2.patch
Index: htdocs/gcc-4.8/changes.html
==
On Thu, 2012-10-04 at 11:52 +0900, Kaz Kojima wrote:
> sh4-unknown-linux-gnu build failed during compiling libmudflap:
>
> /exp/ldroot/dodes/xsh-gcc/./gcc/xgcc -B/exp/ldroot/dodes/xsh-gcc/./gcc/
> -B/usr/local/sh4-unknown-linux-gnu/bin/
> -B/usr/local/sh4-unknown-linux-gnu/lib/ -isystem
> /usr
After commiting the last SH changes updates for 4.8 I was kindly
informed that the br tags were left open. I've committed the attached
fix as obvious.
Cheers,
Oleg
? www_4_8_sh_changes_2_close_br.patch
Index: htdocs/gcc-4.8/changes.html
On Fri, 2012-10-05 at 21:55 +0900, Kaz Kojima wrote:
> Oleg Endo wrote:
> > Do you mean something like the attached patch as a preparation step?
> > (checked with 'make all')
>
> Yes. The patch is OK with removing the first line of the ChangeLog
> entry for PR
Hello,
The attached patch improves comparisons such as
'unsigned int <= 0x7FFF' on SH.
As mentioned in the PR, for some reason, those comparisons do not go
through the cstore expander. As a consequence the comparison doesn't
get the chance to be canonicalized by the target code and ends up as
On Sat, 2012-10-06 at 12:31 +0900, Kaz Kojima wrote:
> Oleg Endo wrote:
> > The attached patch is the next step that adds the thread pointer
> > builtins. The GBR address mode stuff will follow afterwards separately.
> > Tested on rev 192142 with 'make all
ill follow soon.
>
> On Thu, 4 Oct 2012, Oleg Endo wrote:
> > The atomic options of SH have been changed recently. The attached patch
> > updates the 4.8 changes.html accordingly, plus some minor wording fixes.
>
> Looking at the list of parameters to -matomic-model=, it
On Sun, 2012-10-07 at 18:01 +, Weddington, Eric wrote:
>
> > -Original Message-
> > From: Georg-Johann Lay []
> > Sent: Friday, October 05, 2012 9:55 AM
> > To: gcc-patches@gcc.gnu.org
> > Cc: Denis Chertykov; Weddington, Eric; Joerg Wunsch
> > Subject: [Patch,avr]: Remove -mshort-call
On Sun, 2012-10-07 at 21:37 +0200, Georg-Johann Lay wrote:
> Oleg Endo wrote:
> > Maybe would be better to first make the option a no-op that prints a
> > warning in GCC, remove it from all documentations and mention the
> > deprecation in the wwwdocs changes. Then, in
On Mon, 2012-10-08 at 09:45 +0900, Kaz Kojima wrote:
> Oleg Endo wrote:
> > The attached patch improves comparisons such as
> > 'unsigned int <= 0x7FFF' on SH.
> > As mentioned in the PR, for some reason, those comparisons do not go
> > through th
On Mon, 2012-10-08 at 03:53 +0200, Oleg Endo wrote:
> On Mon, 2012-10-08 at 09:45 +0900, Kaz Kojima wrote:
> > Oleg Endo wrote:
> > > The attached patch improves comparisons such as
> > > 'unsigned int <= 0x7FFF' on SH.
> > > As mentioned in
Hello,
This adds documentation on the new thread pointer built-ins that were
added recently to the SH target.
Tested with 'make info dvi pdf'.
OK?
Cheers,
Oleg
gcc/ChangeLog:
PR target/54760
* doc/extend.texi (Target Builtins): Add SH built-in section.
Document __builtin
Hello,
This documents the new thread pointer built-ins in the SH www changes
for 4.8.
OK?
Cheers,
Oleg
? www_4_8_sh_changes_3.patch
Index: htdocs/gcc-4.8/changes.html
===
RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-4.8/changes.html,v
retri
Hello,
This adds the reduced test case as mentioned by Kaz in the PR to the
test suite.
Tested with
make -k check-gcc RUNTESTFLAGS="compile.exp=pr34777*
--target_board=sh-sim
\{-m2/-ml,-m2/-mb,-m2a/-mb,-m4/-ml,-m4/-mb,-m4a/-ml,-m4a/-mb}"
OK?
Cheers,
Oleg
testsuite/ChangeLog:
PR target/
On Tue, 2012-10-09 at 18:33 +0900, Kaz Kojima wrote:
> Oleg Endo wrote:
> > This adds the reduced test case as mentioned by Kaz in the PR to the
> > test suite.
> > Tested with
> > make -k check-gcc RUNTESTFLAGS="compile.exp=pr34777*
> > --target_board=sh-
Hello,
This is the same patch I posted in the PR. It seems to fix the issue.
Tested on rev 192200 with
make -k check RUNTESTFLAGS="--target_board=sh-sim
\{-m2/-ml,-m2/-mb,-m2a/-mb,-m4/-ml,-m4/-mb,-m4a/-ml,-m4a/-mb}"
and no new failures.
OK?
Cheers,
Oleg
gcc/ChangeLog:
PR target/52480
Hello,
This one further improves T bit stores and conditional branches on SH
for cases like described in comment #53 in the PR.
Tested on rev 192200 with
make -k check RUNTESTFLAGS="--target_board=sh-sim
\{-m2/-ml,-m2/-mb,-m2a/-mb,-m4/-ml,-m4/-mb,-m4a/-ml,-m4a/-mb}"
and no new failures.
Cheers,
On Thu, 2012-10-11 at 23:11 +0800, Chung-Lin Tang wrote:
> This patch set has been committed, thanks to all maintainers who
> reviewed the respective parts.
>
> Thanks,
> Chung-Lin
>
This broke the recently added thread pointer built-ins on SH, but I was
prepared for that, so no problem here. T
Hello,
The attached patch fixes PR 54680.
Tested on rev 192200 with
make -k check RUNTESTFLAGS="--target_board=sh-sim
\{-m2/-ml,-m2/-mb,-m2a/-mb,-m4/-ml,-m4/-mb,-m4a/-ml,-m4a/-mb}"
and no new failures.
OK?
Cheers,
Oleg
gcc/ChangeLog:
PR target/54680
* config/sh/sh.c (sh_fsca_sf
Hello,
This fixes the issue of PR 54602 as proposed in the PR.
Tested on rev 192200 with
make -k check RUNTESTFLAGS="--target_board=sh-sim
\{-m2/-ml,-m2/-mb,-m2a/-mb,-m4/-ml,-m4/-mb,-m4a/-ml,-m4a/-mb}"
and no new failures.
OK?
Cheers,
Oleg
gcc/ChangeLog:
PR target/54602
* confi
On Sat, 2012-10-13 at 17:33 +0800, Chung-Lin Tang wrote:
> On 2012/10/12 06:55 AM, Oleg Endo wrote:
> > This broke the recently added thread pointer built-ins on SH, but I was
> > prepared for that, so no problem here. The attached patch is a straight
> > forward fix.
>
On Wed, 2012-10-10 at 07:46 +0900, Kaz Kojima wrote:
> Oleg Endo wrote:
> > Uhm, yes, I forgot to add the -fschedule-insns and -mprefergot options.
> > Regarding the -Os option, I think it's better to test this one at
> > multiple optimization levels, just in case. I
Hello,
The attached patch adds documentation for SH specific function
attributes which haven't been documented yet.
Tested with 'make info dvi pdf'.
OK?
Cheers,
Oleg
gcc/ChangeLog:
* config/sh/sh.c: Update function attribute comments.
* doc/extend.texi (function_vector): Rephras
Hello,
I somehow initially forgot to implement DImode GBR based loads/stores.
Attached patch does that and also fixes a problem with the GBR address
mode optimization.
Tested on rev 192417 with
make -k check RUNTESTFLAGS="--target_board=sh-sim
\{-m2/-ml,-m2/-mb,-m2a/-mb,-m4/-ml,-m4/-mb,-m4a/-ml,-m
Hello,
This one refactors some copy pasta that my previous patch regarding this
matter introduced and catches more unnecessary sign/zero extensions of T
bit stores. It also fixes the bug reported in PR 54925 which popped up
after the last patch for PR 51244.
Tested on rev 192417 with
make -k chec
Hello,
This adds the test case from the PR.
Tested together with the patch posted here
http://gcc.gnu.org/ml/gcc-patches/2012-10/msg01380.html
OK?
Cheers,
Oleg
testsuite/ChangeLog:
PR target/54925
* gcc.c-torture/compile/pr54925.c: New.
Index: gcc/testsuite/gcc.c-torture/compil
On Mon, 2012-10-15 at 20:37 +0900, Kaz Kojima wrote:
> Oleg Endo wrote:
> > This adds the test case from the PR.
> > Tested together with the patch posted here
> > http://gcc.gnu.org/ml/gcc-patches/2012-10/msg01380.html
> >
> > OK?
>
> It would be bet
On Wed, 2012-10-17 at 00:45 +0200, Gerald Pfeifer wrote:
> On Tue, 9 Oct 2012, Oleg Endo wrote:
> > This documents the new thread pointer built-ins in the SH www changes
> > for 4.8.
>
> Thanks, Oleg.
>
> I've got one change and one question:
>
> +Ad
Hello,
I've committed the obvious fix for PR 55042 as rev 192877.
Cheers,
Oleg
gcc/ChangeLog:
PR target/55042
* config/sh/sh.c (sh1_builtin_p): Comment out unused function.
Index: gcc/config/sh/sh.c
===
--- gcc/con
Hello,
This fixes the issues of PR 54988.
Tested on rev 192482 with
make -k check RUNTESTFLAGS="--target_board=sh-sim
\{-m2/-ml,-m2/-mb,-m2a/-mb,-m4/-ml,-m4/-mb,-m4a/-ml,-m4a/-mb}"
and no new failures.
Cheers,
Oleg
gcc/ChangeLog:
PR target/54988
* config/sh/sh.md (tstqi_t_zero)
Hello,
This is the latest proposed patch from the PR.
Tested on rev 192482 with
make -k check RUNTESTFLAGS="--target_board=sh-sim
\{-m2/-ml,-m2/-mb,-m2a/-mb,-m4/-ml,-m4/-mb,-m4a/-ml,-m4a/-mb}"
and no new failures.
Pre-approved by Kaz in the PR.
Committed as rev 192983.
Cheers,
Oleg
gcc/ChangeLo
On Fri, 2012-10-26 at 17:05 +0200, Jan Hubicka wrote:
> > Hi,
> >
> > On Tue, Oct 23, 2012 at 3:03 AM, Jan Hubicka wrote:
> > >> Ping.
> > >>
> > >>
> > >> On Wed, Oct 17, 2012 at 1:48 PM, Easwaran Raman
> > >> wrote:
> > >> > Hi,
> > >> > This patch fixes bugs introduced by my previous patch
Hello,
Some of the things I've done in 4.8 to improve SH T bit handling turned
out to produce wrong code. The attached patch fixes that by introducing
an SH specific RTL pass.
Tested on rev 202876 with
make -k check RUNTESTFLAGS="--target_board=sh-sim
\{-m2/-ml,-m2/-mb,-m2a/-mb,-m4/-ml,-m4/-mb,-
On Fri, 2013-09-27 at 11:38 -0700, Mike Stump wrote:
> Can the sh people weigh in on this? Are the PSI and PDI precisions 32 and 64?
PSI is used for representing FPSCR (floating point control register),
which has only max. 22 bits (as far as I know).
PDI is used on SH-5 for representing target a
On Mon, 2013-10-07 at 10:30 +0200, Christian Bruel wrote:
> Hi Oleg,
>
> +/*
> +This pass tries to optimize for example this:
> + mov.l @(4,r4),r1
> + tst r1,r1
> + movtr1
> + tst r1,r1
> + bt/s.L5
> +
> +into something simpler:
> + mov.l @(4,r4),r1
> +
On Mon, 2013-10-07 at 07:44 +0900, Kaz Kojima wrote:
> Oleg Endo wrote:
> > Forgot to handle a case in function can_remove_cstore, thanks for
> > catching it. Fixed in the attached patch and also added test cases.
> > Retested as before without new failures.
>
> Ok fo
Hi,
On Thu, 2013-10-17 at 16:13 +0200, Christian Bruel wrote:
> Hello,
>
> This patch just reorganizes the SH code used for memory builtins into
> its own file, in preparation of the RTL strcmp hoisting in the next part.
>
Since GCC is now being compiled as C++, it's probably better to name
new
Hi,
On Thu, 2013-10-17 at 16:15 +0200, Christian Bruel wrote:
> Hello,
>
> This patch adds support to inline an optimized version of strcmp when
> not optimizing for size. The generated code makes use of the cmp/str
> instruction to test 4 bytes at a time when correctly aligned.
>
> note that a
On Fri, 2013-10-18 at 09:38 +0200, Christian Bruel wrote:
> On 10/18/2013 12:53 AM, Oleg Endo wrote:
> > Hi,
> >
> > On Thu, 2013-10-17 at 16:13 +0200, Christian Bruel wrote:
> >> Hello,
> >>
> >> This patch just reorganizes the SH code use
On Fri, 2013-10-18 at 09:59 +0200, Christian Bruel wrote:
> On 10/18/2013 01:05 AM, Oleg Endo wrote:
> > I was wondering, in file sh-mem.c, the new function
> > 'sh4_expand_cmpstr' ... why is it SH4-something? It's a bit confusing,
> > since cmp/str has be
Hello,
The test case pr54089-3.c started to fail a while ago, because of the
broken test for load of constant 31. Committed as obvious to trunk and
4.8 branch.
Cheers,
Oleg
testsuite/ChangeLog:
* gcc.target/sh/pr54089-3.c: Fix test for load of constant 31.
Index: gcc/testsuite/gcc.targ
Hello,
The attached patch fixes volatile mem stores on SH so that they won't
result in redundant sign/zero extensions and will utilize available
addressing modes. This is similar to what has been done to fix memory
loads in http://gcc.gnu.org/ml/gcc-patches/2013-06/msg01315.html
Tested on rev 20
1 - 100 of 761 matches
Mail list logo