Bug 63536 - [5 Regression] bootstrap failed when configured with --with-cpu=slm
Summary: [5 Regression] bootstrap failed when configured with --with-cpu=slm
Status: RESOLVED FIXED
Alias: None
Product: gcc
Classification: Unclassified
Component: bootstrap (show other bugs)
Version: 5.0
: P3 normal
Target Milestone: 5.0
Assignee: Not yet assigned to anyone
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-10-14 14:51 UTC by H.J. Lu
Modified: 2014-11-11 15:53 UTC (History)
4 users (show)

See Also:
Host:
Target:
Build:
Known to work:
Known to fail:
Last reconfirmed: 2014-10-14 00:00:00


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description H.J. Lu 2014-10-14 14:51:33 UTC
On Linux/x86, r216154 failed to bootstrap when configured with --with-cpu=slm:

.../configure --with-arch=corei7 --with-cpu=intel --prefix=/usr/5.0.0 --enable-clocale=gnu --with-system-zlib --enable-shared --with-demangler-in-ld i686-linux --with-fpmath=sse --enable-languages=c,c++,fortran,java,lto,ob

../../../src-trunk/libjava/jvmti.cc: In function âjvmtiError _Jv_JVMTI_AddToBootstrapClassLoaderSearch(jvmtiEnv*, const char*)â:
make[6]: *** [classpath/tools/libgcj_tools_la-tools.lo] Error 1
make[5]: *** [all-recursive] Error 1
make[4]: *** [all-target-libjava] Error 2
make[3]: *** [bootstrap] Error 2
make[2]: *** [bootstrap] Error 2
                 from ../../../../../src-trunk/libjava/classpath/tools/gnu/classpath/tools/jar/Main.java:144,
                 from ../../../../../src-trunk/libjava/classpath/tools/gnu/classpath/tools/jar/Main.java:202,
                 from ../../../../../src-trunk/libjava/classpath/tools/gnu/classpath/tools/jar/Messages.java:64,
                 from ../../../../../src-trunk/libjava/classpath/tools/gnu/classpath/tools/jar/Entry.java:68,
                 from ../../../../../src-trunk/libjava/classpath/tools/gnu/classpath/tools/jar/Main.java:114,
                 from ../../../../../src-trunk/libjava/classpath/tools/gnu/classpath/tools/jar/Main.java:209,
                 from ../../../../../src-trunk/libjava/classpath/tools/gnu/classpath/tools/jar/Main.java:235,
                 from ../../../../../src-trunk/libjava/classpath/tools/gnu/classpath/tools/jar/Lister.java:111,
                 from ../../../../../src-trunk/libjava/classpath/tools/gnu/classpath/tools/jar/Action.java:47,
                 from ../../../../../src-trunk/libjava/classpath/tools/gnu/classpath/tools/jar/Main.java:172,
                 from ../../../../../src-trunk/libjava/classpath/tools/gnu/classpath/tools/jar/Updater.java:96,
                 from ../../../../../src-trunk/libjava/classpath/tools/gnu/classpath/tools/jar/Main.java:242,
                 from ../../../../../src-trunk/libjava/classpath/tools/gnu/classpath/tools/jar/Creator.java:250,
                 from ../../../../../src-trunk/libjava/classpath/tools/gnu/classpath/tools/tnameserv/Main.java:62,
                 from ../../../../../src-trunk/libjava/classpath/tools/gnu/classpath/tools/tnameserv/Main.java:75,
                 from ../../../../../src-trunk/libjava/classpath/tools/gnu/classpath/tools/tnameserv/Main.java:85,
                 from ../../../../../src-trunk/libjava/classpath/tools/gnu/classpath/tools/tnameserv/Messages.java:65,
                 from ../../../../../src-trunk/libjava/classpath/tools/sun/rmi/rmic/Main.java:58,
                 from ../../../../../src-trunk/libjava/classpath/tools/sun/rmi/rmic/Messages.java:64,
                 from com/sun/javadoc/SerialFieldTag.java:1,
                 from com/sun/javadoc/ConstructorDoc.java:1,
                 from com/sun/javadoc/ThrowsTag.java:1,
                 from com/sun/javadoc/Doc.java:1,
                 from com/sun/javadoc/Doclet.java:95,
                 from com/sun/javadoc/MemberDoc.java:1,
                 from com/sun/javadoc/DocErrorReporter.java:0,
                 from com/sun/javadoc/TypeVariable.java:0,
                 from com/sun/javadoc/RootDoc.java:1,
                 from com/sun/javadoc/ParamTag.java:2,
                 from com/sun/javadoc/PackageDoc.java:1,
                 from com/sun/javadoc/Tag.java:1,
                 from com/sun/javadoc/SeeTag.java:0,
                 from com/sun/javadoc/SourcePosition.java:2,
                 from com/sun/javadoc/ClassDoc.java:1,
                 from com/sun/javadoc/Type.java:1,
                 from com/sun/javadoc/ProgramElementDoc.java:1,
                 from com/sun/javadoc/FieldDoc.java:0,
                 from com/sun/javadoc/ExecutableMemberDoc.java:1,
                 from com/sun/javadoc/MethodDoc.java:0,
                 from com/sun/javadoc/Parameter.java:5,
                 from com/sun/tools/javadoc/Main.java:45,
                 from ../../../../../src-trunk/libjava/classpath/tools/com/sun/tools/javac/Main.java:157,
                 from ../../../../../src-trunk/libjava/classpath/tools/com/sun/tools/javac/Messages.java:64,
                 from ../../../../../src-trunk/libjava/classpath/tools/com/sun/tools/javah/Main.java:57,
                 from com/sun/tools/doclets/Taglet.java:1,
                 from <built-in>:3:
../../../../../src-trunk/libjava/classpath/tools/external/asm/org/objectweb/asm/xml/ASMContentHandler.java:1018:0: note: non-delegitimized UNSPEC UNSPEC_GOTOFF (1) found in variable location

In method '_Jv_global_static_constructor()':
jc1: internal compiler error: Segmentation fault
0x86132f1 crash_signal
	../../src-trunk/gcc/toplev.c:340
0x819ffb2 put_decl_node
	../../src-trunk/gcc/java/lang.c:378
0x81a054a lang_printable_name(tree_node*, int)
	../../src-trunk/gcc/java/lang.c:472
0x81a06cf java_print_error_function
	../../src-trunk/gcc/java/lang.c:498
0x866249d diagnostic_report_current_function(diagnostic_context*, diagnostic_info*)
	../../src-trunk/gcc/tree-diagnostic.c:43
0x86624c9 default_tree_diagnostic_starter
	../../src-trunk/gcc/tree-diagnostic.c:50
0x8ca9c68 diagnostic_report_diagnostic(diagnostic_context*, diagnostic_info*)
	../../src-trunk/gcc/diagnostic.c:812
0x8ca9f99 inform(unsigned int, char const*, ...)
	../../src-trunk/gcc/diagnostic.c:941
0x82a2627 const_ok_for_output_1
	../../src-trunk/gcc/dwarf2out.c:11501
0x82a4d67 const_ok_for_output
	../../src-trunk/gcc/dwarf2out.c:11582
0x82d0f4c mem_loc_descriptor(rtx_def*, machine_mode, machine_mode, var_init_status)
	../../src-trunk/gcc/dwarf2out.c:12664
0x82d0dbd mem_loc_descriptor(rtx_def*, machine_mode, machine_mode, var_init_status)
	../../src-trunk/gcc/dwarf2out.c:12760
0x82bfe17 gen_subprogram_die
	../../src-trunk/gcc/dwarf2out.c:18730
0x82c59f1 gen_decl_die
	../../src-trunk/gcc/dwarf2out.c:20646
0x82c71cf dwarf2out_function_decl
	../../src-trunk/gcc/dwarf2out.c:21086
0x833b2da rest_of_handle_final
	../../src-trunk/gcc/final.c:4504
0x833b2da execute
	../../src-trunk/gcc/final.c:4546
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.
make[6]: *** [classpath/tools/libgcj_tools_la-tools.lo] Error 1
make[6]: Leaving directory `/export/gnu/import/git/gcc-test-ia32corei7/bld/i686-linux/libjava'
make[5]: *** [all-recursive] Error 1
make[5]: Leaving directory `/export/gnu/import/git/gcc-test-ia32corei7/bld/i686-linux/libjava'
make[4]: *** [all-target-libjava] Error 2
make[4]: Leaving directory `/export/gnu/import/git/gcc-test-ia32corei7/bld'
make[3]: *** [bootstrap] Error 2
Comment 1 Stupachenko Evgeny 2014-10-15 13:19:24 UTC
That is most likely not "ebx enabling" issue, but java issue.
Comment 2 Stupachenko Evgeny 2014-10-15 13:25:22 UTC
"ebx enabling" changes triggered a warning for "_Jv_global_static_constructor()".

The function has NULL location and CONTEXT.
The ICE caused by passing NULL to
 lang_printable_name:

  if (current_function_decl != NULL
      && DECL_CONTEXT (current_function_decl) != last_error_function_context)
    {
      if (file)
        fprintf (stderr, "%s: ", file);
 
      last_error_function_context = DECL_CONTEXT (current_function_decl);
      fprintf (stderr, "In class '%s':\n",
               lang_printable_name (last_error_function_context, 0));
    }

an additional check
  if (current_function_decl != NULL
      && DECL_CONTEXT (current_function_decl) != NULL
      && DECL_CONTEXT (current_function_decl) != last_error_function_context)

should resolve the problem.
Checking bootstrap now.
Comment 3 H.J. Lu 2014-10-15 13:46:18 UTC
(In reply to Stupachenko Evgeny from comment #2)
> "ebx enabling" changes triggered a warning for
> "_Jv_global_static_constructor()".
> 
> The function has NULL location and CONTEXT.
> The ICE caused by passing NULL to
>  lang_printable_name:
> 
>   if (current_function_decl != NULL
>       && DECL_CONTEXT (current_function_decl) != last_error_function_context)
>     {
>       if (file)
>         fprintf (stderr, "%s: ", file);
>  
>       last_error_function_context = DECL_CONTEXT (current_function_decl);
>       fprintf (stderr, "In class '%s':\n",
>                lang_printable_name (last_error_function_context, 0));
>     }
> 
> an additional check
>   if (current_function_decl != NULL
>       && DECL_CONTEXT (current_function_decl) != NULL
>       && DECL_CONTEXT (current_function_decl) != last_error_function_context)
> 
> should resolve the problem.
> Checking bootstrap now.

Will it solve

../../../../../src-trunk/libjava/classpath/tools/external/asm/org/objectweb/asm/xml/ASMContentHandler.java:1018:0: note: non-delegitimized UNSPEC UNSPEC_GOTOFF (1) found in variable location

H.J.
Comment 4 Stupachenko Evgeny 2014-10-15 14:05:50 UTC
No. The changes has no influence on the note.

Anyway bootstrap have passed.
Comment 5 iverbin 2014-10-15 17:49:58 UTC
Author: iverbin
Date: Wed Oct 15 17:49:27 2014
New Revision: 216280

URL: https://gcc.gnu.org/viewcvs?rev=216280&root=gcc&view=rev
Log:
	PR target/63536
gcc/java/
	* lang.c (java_print_error_function): Add check on NULL function
	context.


Modified:
    trunk/gcc/java/ChangeLog
    trunk/gcc/java/lang.c
Comment 6 Igor Zamyatin 2014-10-17 08:41:32 UTC
Should be fixed now
Comment 7 H.J. Lu 2014-11-11 15:53:43 UTC
Fixed.