[Bug target/56875] vax target miscompiles short negative constants for 64bit values

2013-09-21 Thread martin at netbsd dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56875 Martin Husemann changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution|---

[Bug target/56875] vax target miscompiles short negative constants for 64bit values

2013-09-20 Thread jbglaw at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56875 --- Comment #6 from jbglaw at gcc dot gnu.org --- Author: jbglaw Date: Fri Sep 20 19:00:02 2013 New Revision: 202796 URL: http://gcc.gnu.org/viewcvs?rev=202796&root=gcc&view=rev Log: Work around buggy gas not properly sign-extending a 64bit value

[Bug target/56875] vax target miscompiles short negative constants for 64bit values

2013-09-20 Thread jbg...@lug-owl.de
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56875 --- Comment #5 from Jan-Benedict Glaw --- Created attachment 30872 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=30872&action=edit Updated patch including testcase.

[Bug target/56875] vax target miscompiles short negative constants for 64bit values

2013-09-17 Thread jbg...@lug-owl.de
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56875 --- Comment #4 from Jan-Benedict Glaw --- You're quite right, Martin! It's a simple fix on the GCC side working around a buggy gas, and it would also work with a fixed gas. However, gas isn't too simple to fix, at least not with a well-architecte

[Bug target/56875] vax target miscompiles short negative constants for 64bit values

2013-09-17 Thread martin at netbsd dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56875 --- Comment #3 from Martin Husemann --- Of course I do not mind fixing gas, but the whole point of the "D" formatting code is to work around this assembler bug, and while this might be mostly irrelevant nowadays, isn't gcc supposed to work with ot

[Bug target/56875] vax target miscompiles short negative constants for 64bit values

2013-09-16 Thread jbg...@lug-owl.de
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56875 --- Comment #2 from Jan-Benedict Glaw --- This is gas's tc-vax.c: 3158 if ((is_absolute) && (expP->X_op != O_big)) 3159 { 3160 /* If nbytes > 4, then we are scrod

[Bug target/56875] vax target miscompiles short negative constants for 64bit values

2013-09-16 Thread jbg...@lug-owl.de
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56875 --- Comment #1 from Jan-Benedict Glaw --- The `gas' bug seems to only show up on 32bit host platform. Creating a cross-gas on a amd64 systems seems to always result in "correct" VAX binary output, even for old 2.21 releases. (Will further check th