https://gcc.gnu.org/bugzilla/show_bug.cgi?id=30354
Andrew Pinski changed:
What|Removed |Added
Severity|normal |enhancement
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=30354
Manuel López-Ibáñez changed:
What|Removed |Added
Last reconfirmed|2012-06-29 00:00:00 |2016-4-21
CC|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=30354
--- Comment #19 from Bernhard Reutner-Fischer ---
(In reply to Denis Vlasenko from comment #17)
> Any chance of this being finally done?
>
> I proposed a simple, working patch in 2007, it's 2016 now and all these
> years users of -Os suffer from
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=30354
--- Comment #18 from Denis Vlasenko ---
Created attachment 38297
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38297&action=edit
Comparison of generated code with 7.0.0.svn on i86
With div cost of 3:
:
- 0: 8b 44 24 04
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=30354
--- Comment #17 from Denis Vlasenko ---
Any chance of this being finally done?
I proposed a simple, working patch in 2007, it's 2016 now and all these years
users of -Os suffer from slow divisions in important cases usch as "signed_int
/ 16" and
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30354
--- Comment #16 from Denis Vlasenko
2013-01-18 10:29:12 UTC ---
(In reply to comment #15)
> Honza, did you find time to have a look?
>
> I think this regressed alot in 4.6
Not really - it's just .eh_frame section.
I re-ran the tests
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30354
Bernhard Reutner-Fischer changed:
What|Removed |Added
Keywords||missed-optimization
Last rec
--- Comment #14 from steven at gcc dot gnu dot org 2010-01-08 09:06 ---
Honza, you said in comment #13 that you would look at this -- got news?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30354
--- Comment #13 from hubicka at gcc dot gnu dot org 2009-06-30 13:36
---
Hmm,
looking at the cases it seems that main reason for the win is the fact that
idiv needs integer load instruction that has long immediate and we don't
optimize these for -Os well.
I suppose for -Os following is
--- Comment #12 from vda dot linux at googlemail dot com 2009-06-21 16:48
---
Created an attachment (id=18041)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=18041&action=view)
Comparison of generated code with 4.4.svn.20090528 on i86
--
http://gcc.gnu.org/bugzilla/show_bug.cg
--- Comment #11 from vda dot linux at googlemail dot com 2009-06-21 16:47
---
In 32-bit code, there are indeed a few cases of code growth.
Here is a full list (id_XXX are signed divides, ud_XXX are unsigned ones):
- 000f T id_x_4
+ 0012 T id_x_4
- 00
--- Comment #10 from rguenth at gcc dot gnu dot org 2009-06-21 16:25
---
Do we have correct size estimates on idiv with a constant argument at all?
I don't see length attributes on it ...
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30354
--- Comment #9 from vda dot linux at googlemail dot com 2009-06-21 16:12
---
Created an attachment (id=18040)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=18040&action=view)
Comparison of generated code with 4.4.svn.20090528 on x86_64
--
http://gcc.gnu.org/bugzilla/show_bug.
--- Comment #8 from vda dot linux at googlemail dot com 2009-06-21 16:11
---
(In reply to comment #7)
> It seems to make sense to bump cost of idiv a bit, given the fact that there
> are register pressure implications.
>
> I would like to however understand what code sequences we produ
--- Comment #7 from hubicka at gcc dot gnu dot org 2009-06-06 13:41 ---
It seems to make sense to bump cost of idiv a bit, given the fact that there
are register pressure implications.
I would like to however understand what code sequences we produce that are
estimated to be long but en
--- Comment #6 from aldot at gcc dot gnu dot org 2009-06-05 16:19 ---
CC'ing honza as i386 maintainer
--
aldot at gcc dot gnu dot org changed:
What|Removed |Added
--- Comment #5 from vda dot linux at googlemail dot com 2007-07-25 15:22
---
Forgot to mention:
* generator tests signed and unsigned divisions and modulus, both const / x and
x / const, and also tests u = a / b; v = a % b; construct.
* you need to filter gen_test output to weed out d
--- Comment #4 from vda dot linux at googlemail dot com 2007-07-25 15:17
---
Created an attachment (id=13975)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13975&action=view)
Test program generator
Test program was generated using gen_test.c
--
http://gcc.gnu.org/bugzilla/sh
--- Comment #3 from vda dot linux at googlemail dot com 2007-07-25 15:09
---
Created an attachment (id=13974)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13974&action=view)
Auto-generated test program with 15000 constant divs/mods
Test program, bzipped.
Build with
gcc -fomit-f
--- Comment #2 from vda dot linux at googlemail dot com 2007-07-25 15:05
---
Created an attachment (id=13973)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13973&action=view)
Fix: adjust div cost for -Os on i386
Patch was tested with 4.2.1, I guess it will apply to other version
--- Comment #1 from pinskia at gcc dot gnu dot org 2007-01-02 22:45 ---
I think this is really a cost issue with the x86 back-end, rather than with the
middle-end.
--
pinskia at gcc dot gnu dot org changed:
What|Removed |Added
-
21 matches
Mail list logo