public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/58424] New: [ARM]gcc.target/arm/pr42575.c failed on arm
@ 2013-09-15 8:04 amker.cheng at gmail dot com
2014-03-11 15:40 ` [Bug target/58424] " ramana at gcc dot gnu.org
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: amker.cheng at gmail dot com @ 2013-09-15 8:04 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58424
Bug ID: 58424
Summary: [ARM]gcc.target/arm/pr42575.c failed on arm
Product: gcc
Version: 4.9.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: amker.cheng at gmail dot com
gcc is at revision r202599 and is configured as:
../gcc/configure
build=i686-linux-gnu
host=i686-linux-gnu
target=arm-none-eabi
prefix=.../trunk-orig/target/
disable-decimal-float
disable-libffi
disable-libgomp
disable-libmudflap
disable-libquadmath
disable-libssp
disable-libstdcxx-pch
disable-nls
disable-shared
disable-threads
disable-tls
with-gnu-as
with-gnu-ld
with-newlib
with-headers=yes
with-sysroot=.../trunk-orig/target/arm-none-eabi
with-host-libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm'
with-mode=thumb
with-arch=armv7-m
disable-multilib
enable-lto
enable-languages=c,c++,lto
The source code is:
/* { dg-options "-O2" } */
/* Make sure RA does good job allocating registers and avoids
unnecessary moves. */
/* { dg-final { scan-assembler-not "mov" } } */
long long longfunc(long long x, long long y)
{
return x * y;
}
The generated assembly is:
longfunc:
@ args = 0, pretend = 0, frame = 0
@ frame_needed = 0, uses_anonymous_args = 0
@ link register save eliminated.
mul r3, r0, r3
push {r4, r5}
mla r1, r2, r1, r3
umull r4, r5, r0, r2
add r5, r5, r1
mov r0, r4
mov r1, r5
pop {r4, r5}
bx lr
.size longfunc, .-longfunc
But I think the case would fail for other configurations too.
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Bug target/58424] [ARM]gcc.target/arm/pr42575.c failed on arm
2013-09-15 8:04 [Bug target/58424] New: [ARM]gcc.target/arm/pr42575.c failed on arm amker.cheng at gmail dot com
@ 2014-03-11 15:40 ` ramana at gcc dot gnu.org
2014-03-12 10:38 ` amker.cheng at gmail dot com
2014-03-13 9:28 ` ramana at gcc dot gnu.org
2 siblings, 0 replies; 4+ messages in thread
From: ramana at gcc dot gnu.org @ 2014-03-11 15:40 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58424
Ramana Radhakrishnan <ramana at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |WAITING
Last reconfirmed| |2014-03-11
CC| |ramana at gcc dot gnu.org
Known to work| |4.9.0
Ever confirmed|0 |1
Known to fail| |4.8.0, 4.8.1
--- Comment #1 from Ramana Radhakrishnan <ramana at gcc dot gnu.org> ---
Appears to be fixed on trunk with and without LRA with -O2 -mthumb / -marm
-mcpu=cortex-m4 / -march=armv7-a
longfunc:
@ args = 0, pretend = 0, frame = 0
@ frame_needed = 0, uses_anonymous_args = 0
@ link register save eliminated.
mul r3, r0, r3
mla r3, r2, r1, r3
umull r0, r1, r0, r2
add r1, r1, r3
bx lr
This is with a build from around 20140307 .
while 4.8 still appears to have this problem.
Bin : can you please check ?
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Bug target/58424] [ARM]gcc.target/arm/pr42575.c failed on arm
2013-09-15 8:04 [Bug target/58424] New: [ARM]gcc.target/arm/pr42575.c failed on arm amker.cheng at gmail dot com
2014-03-11 15:40 ` [Bug target/58424] " ramana at gcc dot gnu.org
@ 2014-03-12 10:38 ` amker.cheng at gmail dot com
2014-03-13 9:28 ` ramana at gcc dot gnu.org
2 siblings, 0 replies; 4+ messages in thread
From: amker.cheng at gmail dot com @ 2014-03-12 10:38 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58424
--- Comment #2 from bin.cheng <amker.cheng at gmail dot com> ---
Yes, It works for below combination of options:
-mthumb -mcpu=cortex-m4
-mthumb/-marm -march=armv7-a/-mcpu=cortex-a7
But still happens for:
-mthumb -mcpu=cortex-m3
-mthumb/-marm
-mcpu=cortex-a7/-mcpu=cortex-a12/-mcpu=cortex-a9/-mcpu=cortex-a15
Maybe it has something to do with the rtx cost. I will look into it later.
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Bug target/58424] [ARM]gcc.target/arm/pr42575.c failed on arm
2013-09-15 8:04 [Bug target/58424] New: [ARM]gcc.target/arm/pr42575.c failed on arm amker.cheng at gmail dot com
2014-03-11 15:40 ` [Bug target/58424] " ramana at gcc dot gnu.org
2014-03-12 10:38 ` amker.cheng at gmail dot com
@ 2014-03-13 9:28 ` ramana at gcc dot gnu.org
2 siblings, 0 replies; 4+ messages in thread
From: ramana at gcc dot gnu.org @ 2014-03-13 9:28 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58424
Ramana Radhakrishnan <ramana at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|WAITING |NEW
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2014-03-13 9:28 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-09-15 8:04 [Bug target/58424] New: [ARM]gcc.target/arm/pr42575.c failed on arm amker.cheng at gmail dot com
2014-03-11 15:40 ` [Bug target/58424] " ramana at gcc dot gnu.org
2014-03-12 10:38 ` amker.cheng at gmail dot com
2014-03-13 9:28 ` ramana at gcc dot gnu.org
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).