https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64003
Ilya Enkovich changed:
What|Removed |Added
Status|UNCONFIRMED |RESOLVED
CC|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64003
Uroš Bizjak changed:
What|Removed |Added
CC||dcb314 at hotmail dot com
--- Comment #29
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64003
Uroš Bizjak changed:
What|Removed |Added
Status|RESOLVED|REOPENED
Last reconfirmed|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64003
Uroš Bizjak changed:
What|Removed |Added
Status|REOPENED|ASSIGNED
Assignee|enkovich.gnu a
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64003
--- Comment #32 from uros at gcc dot gnu.org ---
Author: uros
Date: Fri Jul 24 16:25:56 2015
New Revision: 226173
URL: https://gcc.gnu.org/viewcvs?rev=226173&root=gcc&view=rev
Log:
PR target/64003
* config/i386/i386.h (ADJUST_INSN
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64003
Uroš Bizjak changed:
What|Removed |Added
Status|ASSIGNED|RESOLVED
Resolution|---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64003
--- Comment #6 from dmalcolm at gcc dot gnu.org ---
If I'm reading things right, this loop in shorten_branches populates
insn_lengths[uid] in order of the NEXT_INSN () iteration:
int (*length_fun) (rtx_insn *) = increasing ? insn_min_length :
i
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64003
--- Comment #7 from dmalcolm at gcc dot gnu.org ---
A more minimal reproducer:
$ cat get-attr-length-i386.c
int test_pr64003 (int p)
{
if (p == 0)
return 5;
if (p == 1)
return 7;
return 0;
}
$ valgrind ./cc1 get-attr-length-i386.c
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64003
--- Comment #8 from dmalcolm at gcc dot gnu.org ---
Created attachment 34165
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=34165&action=edit
Patch to add instrumentation to final.c to track the reads/writes of
insn_lengths
The attached pat
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64003
--- Comment #9 from dmalcolm at gcc dot gnu.org ---
Created attachment 34166
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=34166&action=edit
Dump of RTL from the reproducer
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64003
--- Comment #10 from dmalcolm at gcc dot gnu.org ---
Created attachment 34167
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=34167&action=edit
Log from gdb session, with a conditional breakpoint to trap uninitialized reads
This is a log of
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64003
--- Comment #11 from dmalcolm at gcc dot gnu.org ---
Investigating the backtrace at the point of the uninit read shows that
the issue occurs in shorten_branches here:
#5 0x006f3263 in shorten_branches (first=0x71687700) at
../../src/
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64003
--- Comment #12 from dmalcolm at gcc dot gnu.org ---
(In reply to dmalcolm from comment #11)
> Running valgrind with vgdb to get the precise location of its
> warnings indicates they are here within get_attr_length_nobnd in
> insn-attrtab.c:19152:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64003
--- Comment #13 from Jorn Wolfgang Rennecke ---
(In reply to David Malcolm from comment #6)
> If I'm reading things right, this loop in shorten_branches populates
> insn_lengths[uid] in order of the NEXT_INSN () iteration:
>
> int (*length_fun
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64003
Jeffrey A. Law changed:
What|Removed |Added
Assignee|amylaar at gcc dot gnu.org |enkovich.gnu at gmail
dot com
-
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64003
--- Comment #15 from Jeffrey A. Law ---
Just to be clear, that was a "Damn" as in "Damn good find", sorry if it came
out the wrong way.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64003
Jorn Wolfgang Rennecke changed:
What|Removed |Added
CC||amylaar at gcc dot gnu.org
---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64003
--- Comment #17 from Ilya Enkovich ---
(In reply to Jorn Wolfgang Rennecke from comment #13)
>
> AFAICS, the length attribute was broken in r217125
> https://gcc.gnu.org/ml/gcc-cvs/2014-11/msg00133.html
If I understand the problem correctly th
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64003
--- Comment #18 from Jorn Wolfgang Rennecke ---
(In reply to Ilya Enkovich from comment #17)
> If I understand the problem correctly the root is in attempt to get length
> of following instructions computing length for forwrad jump instruction.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64003
--- Comment #19 from Jeffrey A. Law ---
I was thinking more along the lines of documented in the texi documention for
Length attributes.Useful to have in sh.md, but better documented in a
location that is more likely to be read.
I don't thin
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64003
--- Comment #20 from Jeffrey A. Law ---
Ilya, it's the function call in this code I think:
(cond [(eq_attr "length_nobnd" "!0")
(plus (symbol_ref ("ix86_bnd_prefixed_insn_p (insn)"))
(attr "length_nobnd"))
You're c
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64003
--- Comment #21 from Ilya Enkovich ---
(In reply to Jeffrey A. Law from comment #20)
> Ilya, it's the function call in this code I think:
>
> (cond [(eq_attr "length_nobnd" "!0")
>(plus (symbol_ref ("ix86_bnd_prefixed_insn_p (insn)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64003
--- Comment #22 from Ilya Enkovich ---
Created attachment 34195
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=34195&action=edit
Proposed patch
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64003
--- Comment #23 from Uroš Bizjak ---
(In reply to Ilya Enkovich from comment #21)
> Then we have three problematic patterns and the easiest way to handle it is
> to get rid of ix86_bnd_prefixed_insn_p call in length computation for them.
> I th
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64003
--- Comment #24 from Uroš Bizjak ---
(In reply to Uroš Bizjak from comment #23)
> (In reply to Ilya Enkovich from comment #21)
>
> > Then we have three problematic patterns and the easiest way to handle it is
> > to get rid of ix86_bnd_prefixed_
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64003
rsandifo at gcc dot gnu.org changed:
What|Removed |Added
CC||rsandifo at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64003
--- Comment #26 from Ilya Enkovich ---
(In reply to rsand...@gcc.gnu.org from comment #25)
>
> If all you want to do is add 1 byte to the length to account for a prefix
> then it might be cleaner to use ADJUST_INSN_LENGTH. You could then keep
>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64003
--- Comment #27 from ienkovich at gcc dot gnu.org ---
Author: ienkovich
Date: Fri Dec 5 16:00:52 2014
New Revision: 218426
URL: https://gcc.gnu.org/viewcvs?rev=218426&root=gcc&view=rev
Log:
PR target/64003
* config/i386/i386.md (*jcc_1_b
28 matches
Mail list logo