[Bug bootstrap/87013] Error: junk at end of line, first unrecognized character is `i'

2018-09-20 Thread aoliva at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87013

--- Comment #9 from Alexandre Oliva  ---
Author: aoliva
Date: Thu Sep 20 19:34:30 2018
New Revision: 264449

URL: https://gcc.gnu.org/viewcvs?rev=264449&root=gcc&view=rev
Log:
[PR87013] check for .loc is_stmt support in the assembler

Back when we had the logic to output is_stmt but never exercised it,
it didn't matter that we didn't test for assembler support for it.
But there are still assemblers out there that do not support it, so
now that we enable the formerly latent is_stmt logic, we'd better make
sure the assembler can deal with it.

for  gcc/ChangeLog

PR bootstrap/87013
* configure.ac: Check for .loc is_stmt support.
* configure, config.in: Rebuilt.
* dwarf2out.c (dwarf2out_source_line): Skip is_stmt
if not supported.

Modified:
trunk/gcc/ChangeLog
trunk/gcc/config.in
trunk/gcc/configure
trunk/gcc/configure.ac
trunk/gcc/dwarf2out.c

[Bug bootstrap/87013] Error: junk at end of line, first unrecognized character is `i'

2018-08-25 Thread mfe at live dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87013

martin  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #8 from martin  ---
Passed related point. Confirmed working. Thanks Alex for the patch!

[Bug bootstrap/87013] Error: junk at end of line, first unrecognized character is `i'

2018-08-23 Thread mfe at live dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87013

--- Comment #7 from martin  ---
Created attachment 44584
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=44584&action=edit
gcc\config.log

Hi, sry for the delayed answer. I wanted to make sure that the compiler passed
the related point, but I don't know how to verify this (the machine is still
compiling). So I assume the patch is working. I attached the config.log.

[Bug bootstrap/87013] Error: junk at end of line, first unrecognized character is `i'

2018-08-23 Thread aoliva at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87013

--- Comment #6 from Alexandre Oliva  ---
I wanted to ask, martin, can you please confirm that it does indeed fix the
problem for you?

[Bug bootstrap/87013] Error: junk at end of line, first unrecognized character is `i'

2018-08-23 Thread aoliva at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87013

Alexandre Oliva  changed:

   What|Removed |Added

  Attachment #44573|0   |1
is obsolete||

--- Comment #5 from Alexandre Oliva  ---
Created attachment 44581
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=44581&action=edit
tested patch

This is a complete patch, with all the generated files, that I tested on
x86_64-linux-gnu, with an assembler that supports is_stmt.  I've also manually
tested manually removing the #define HAVE_GAS_LOC_STMT in auto-host.h, and
checked that the compiler wouldn't output is_stmt directives.  (It would still
emit negate_stmt opcodes when generating line number programs itself)

[Bug bootstrap/87013] Error: junk at end of line, first unrecognized character is `i'

2018-08-22 Thread aoliva at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87013

Alexandre Oliva  changed:

   What|Removed |Added

 Status|WAITING |ASSIGNED
   Assignee|unassigned at gcc dot gnu.org  |aoliva at gcc dot 
gnu.org

--- Comment #4 from Alexandre Oliva  ---
Created attachment 44573
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=44573&action=edit
untested candidate patch

Yeah, it looks like we never checked for is_stmt support; we had it in
unconditionally, but it was never exercised, so it didn't come up.

This patch should be enough to avoid the problem, provided that gcc/configure
and gcc/config.in are regenerated after putting the configure.ac change in.

I'll turn that into a proper patch eventually, but I'd appreciate confirmation
that it does solve the problem indeed.  Thanks,

[Bug bootstrap/87013] Error: junk at end of line, first unrecognized character is `i'

2018-08-22 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87013

Richard Biener  changed:

   What|Removed |Added

 CC||aoliva at gcc dot gnu.org

--- Comment #3 from Richard Biener  ---
.loc 1 15 1 is_stmt 0

we don't seem to have an assembler test for is_stmt support.  Alex?

Martin, can you attach gcc/config.log?

[Bug bootstrap/87013] Error: junk at end of line, first unrecognized character is `i'

2018-08-20 Thread mfe at live dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87013

--- Comment #2 from martin  ---
Created attachment 44565
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=44565&action=edit
conftest.s

Attached is the generated conftest.s file of the command

> /media/gcc-8.2.0-compiled/./gcc/xgcc -B/media/gcc-8.2.0-compiled/./gcc/ 
> -B/opt/gcc-8.2/sparc-linux/bin/ -B/opt/gcc-8.2/sparc-linux/lib/ -isystem 
> /opt/gcc-8.2/sparc-linux/include -isystem 
> /opt/gcc-8.2/sparc-linux/sys-include-c -g -O2 -save-temps conftest.c

I'm afraid I don't have any assembler tools installed (Only the gcc 7.2
enviroment for C and C++)


Let me know, if you need more information.

[Bug bootstrap/87013] Error: junk at end of line, first unrecognized character is `i'

2018-08-20 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87013

Jonathan Wakely  changed:

   What|Removed |Added

 Target||sparc-linux
 Status|UNCONFIRMED |WAITING
   Last reconfirmed||2018-08-20
Summary|xgcc: fatal error: no input |Error: junk at end of line,
   |files   |first unrecognized
   ||character is `i'
 Ever confirmed|0   |1

--- Comment #1 from Jonathan Wakely  ---
> xgcc: error: unrecognized command line option '-qversion'; did you mean 
> '--version'?
> xgcc: fatal error: no input files

That's not the problem, this error is supposed to happen, because your compiler
doesn't recognise the -qversion option.


> compilation terminated.
> configure:3458: $? = 1
> configure:3474: /media/gcc-8.2.0-compiled/./gcc/xgcc 
> -B/media/gcc-8.2.0-compiled/./gcc/ -B/opt/gcc-8.2/sparc-linux/bin/ 
> -B/opt/gcc-8.2/sparc-linux/lib/ -isystem /opt/gcc-8.2/sparc-linux/include 
> -isystem /opt/gcc-8.2/sparc-linux/sys-include-o conftest -g -O2   
> conftest.c  >&5
> /tmp/ccvuOEZf.s: Assembler messages:
> /tmp/ccvuOEZf.s:15: Error: junk at end of line, first unrecognized character 
> is `i'
> configure:3477: $? = 1
> configure:3665: checking for suffix of object files
> configure:3687: /media/gcc-8.2.0-compiled/./gcc/xgcc 
> -B/media/gcc-8.2.0-compiled/./gcc/ -B/opt/gcc-8.2/sparc-linux/bin/ 
> -B/opt/gcc-8.2/sparc-linux/lib/ -isystem /opt/gcc-8.2/sparc-linux/include 
> -isystem /opt/gcc-8.2/sparc-linux/sys-include-c -g -O2  conftest.c >&5
> /tmp/ccookNLX.s: Assembler messages:
> /tmp/ccookNLX.s:15: Error: junk at end of line, first unrecognized character 
> is `i'

This is the problem.

Try compiling the source below using the command above, adding -save-temps, and
then look at the resulting .s file. See why your assembler can't process it (do
you even have an assembler for your target?)


> configure:3691: $? = 1
> configure: failed program was:
> | /* confdefs.h */
> | #define PACKAGE_NAME "GNU C Runtime Library"
> | #define PACKAGE_TARNAME "libgcc"
> | #define PACKAGE_VERSION "1.0"
> | #define PACKAGE_STRING "GNU C Runtime Library 1.0"
> | #define PACKAGE_BUGREPORT ""
> | #define PACKAGE_URL "http://www.gnu.org/software/libgcc/";
> | /* end confdefs.h.  */
> | 
> | int
> | main ()
> | {
> | 
> |   ;
> |   return 0;
> | }
> configure:3705: error: in `/media/gcc-8.2.0-compiled/sparc-linux/libgcc':
> configure:3708: error: cannot compute suffix of object files: cannot compile
> See `config.log' for more details.