public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug java/12089] New: m68k-coff-gcj segmentation fault on array initilisation
@ 2003-08-28 6:13 john at atrove dot com
2003-08-29 13:32 ` [Bug target/12089] " pinskia at gcc dot gnu dot org
` (3 more replies)
0 siblings, 4 replies; 7+ messages in thread
From: john at atrove dot com @ 2003-08-28 6:13 UTC (permalink / raw)
To: gcc-bugs
PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=12089
Summary: m68k-coff-gcj segmentation fault on array initilisation
Product: gcc
Version: 3.3
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: java
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: john at atrove dot com
CC: gcc-bugs at gcc dot gnu dot org
GCC host triplet: i686-pc-cygwin
GCC target triplet: m68k-unknown-coff
When building libgcj for gcj m68k cross compiler the compiler segmentation
faults on java.lang.Character.java
== Host==
$ uname -a
CYGWIN_NT-5.1 RICHO 1.3.22(0.78/3/2) 2003-03-18 09:20 i686 unknown unknown
Cygwin
== Program which causes errors==
public final class Character
{
public static final String[] error = {
" 0", " 1", " 2", " 3", " 4", " 5", " 6", " 7", " 8", " 9",
"10", "11", "12", "13", "14"
};
}
== command line ==
/home/john/gnu/build/m68k-coff-test/gcc/gcc/gcj -v -da -Q -save-temps -
B/home/john/gnu/build/m68k-coff-test/gcc/gcc/ -B/home/john/H-i686-pc-
cygwin/m68k-coff-test/bin/ -B/home/john/H-i686-pc-cygwin/m68k-coff/lib/ -
isystem /home/john/H-i686-pc-cygwin/m68k-coff/include --encoding=UTF-8 -
fclasspath= -fbootclasspath=/home/john/gnu/build/m68k-coff-test/gcc/m68k-
coff/libjava -g -O0 -c Character.java -o Character.o
Reading specs from /home/john/gnu/build/m68k-coff-test/gcc/gcc/specs
Reading specs from libgcj.spec
rename spec lib to liborig
Configured with: /home/john/gnu/gcc-3.3/configure -v --prefix=/home/john/H-
i686-pc-cygwin --target=m68k-coff --enable-checking --enable-
languages=c,c++,java --disable-multilib --disable-java-net --with-newlib
Thread model: single
gcc version 3.3
/home/john/gnu/build/m68k-coff-test/gcc/gcc/jc1.exe Character.java -fuse-
divide-subroutine -fcheck-references -fuse-boehm-gc -fkeep-inline-functions -
dumpbaseCharacter.java -da -auxbase-strip Character.o -g -O0 -version -
fencoding=UTF-8 -fclasspath= -fbootclasspath=/home/john/gnu/build/m68k-coff-
test/gcc/m68k-coff/libjava -o Character.s
GNU Java version 3.3 (m68k-coff)
compiled by GNU C version 3.3.
GGC heuristics: --param ggc-min-expand=47 --param ggc-min-heapsize=32678
options passed: -fuse-divide-subroutine -fcheck-references -fuse-boehm-gc
-fkeep-inline-functions -auxbase-strip -g -O0 -fencoding=UTF-8
-fclasspath=
-fbootclasspath=/home/john/gnu/build/m68k-coff-test/gcc/m68k-coff/libjava
options enabled: -fpeephole -ffunction-cse -fkeep-inline-functions
-fkeep-static-consts -freg-struct-return -fgcse-lm -fgcse-sm
-fsched-interblock -fsched-spec -fbranch-count-reg -fexceptions
-funwind-tables -fasynchronous-unwind-tables -fnon-call-exceptions
-fcommon -fgnu-linker -fargument-alias -fzero-initialized-in-bss -fident
-fmath-errno -fbounds-check -m68020 -mc68020 -mbitfield -m68881 -m68030
-m68332 -mcpu32
Class path starts here:
./
/home/john/gnu/build/m68k-coff-test/gcc/m68k-coff/libjava/ (system)
class Character class java.lang.String class java.lang.Object interface
java.lang.CharSequence interface java.lang.Comparable interface
java.io.Serializable cl
ass java.lang.String$CaseInsensitiveComparator interface java.util.Comparator
[Character. ()] [Character. <clinit>()]Character.java: In class `Character':
Character.java: In method `<clinit>()':
Character.java:5: internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
== gdb output of jc1 run
This GDB was configured as "i686-pc-cygwin"...
(gdb) run
Starting program: /home/john/gnu/build/m68k-coff-test/gcc/gcc/jc1.exe
Character.
java -g0 -O0 -fclasspath= -fbootclasspath=/home/john/gnu/build/m68k-coff-
test/gc
c/m68k-coff/libjava -o Character.s
class Character class java.lang.String class java.lang.Object interface
java.la
ng.CharSequence interface java.lang.Comparable interface java.io.Serializable
cl
ass java.lang.String$CaseInsensitiveComparator interface java.util.Comparator
[C
haracter. ()] [Character. <clinit>()]
Program received signal SIGSEGV, Segmentation fault.
0x00531020 in emit_block_move_via_libcall (dst=0x12a2f60, src=0x12a2f90,
size=0x
12703f0) at /home/john/gnu/gcc-3.3/gcc/expr.c:1933
1933 size_mode = TYPE_MODE (unsigned_type_node);
(gdb) list
1928 src = copy_to_mode_reg (Pmode, XEXP (src, 0));
1929
1930 if (TARGET_MEM_FUNCTIONS)
1931 size_mode = TYPE_MODE (sizetype);
1932 else
1933 size_mode = TYPE_MODE (unsigned_type_node);
1934 size = convert_to_mode (size_mode, size, 1);
1935 size = copy_to_mode_reg (size_mode, size);
1936
1937 /* It is incorrect to use the libcall calling conventions to call
(gdb) where
#0 0x00531020 in emit_block_move_via_libcall (dst=0x12a2f60, src=0x12a2f90,
siz
e=0x12703f0) at /home/john/gnu/gcc-3.3/gcc/expr.c:1933
#1 0x00530d28 in emit_block_move (x=0x12a2f40, y=0x12a2f50, size=0x12703f0,
met
hod=BLOCK_OP_NORMAL) at /home/john/gnu/gcc-3.3/gcc/expr.c:1756
#2 0x00537959 in store_expr (exp=0x128f6d8, target=0x12a2950, want_value=0) at
/home/john/gnu/gcc-3.3/gcc/expr.c:4619
#3 0x0053b77c in store_field (target=0x12a2930, bitsize=480, bitpos=96,
mode=BL
Kmode, exp=0x128f6d8, value_mode=VOIDmode, unsignedp=0, type=0x12bb0e0,
alias_se
t=0) at /home/john/gnu/gcc-3.3/gcc/expr.c:5618
#4 0x00535cab in expand_assignment (to=0x12bc288, from=0x128f6d8,
want_value=0,
suggest_reg=0) at /home/john/gnu/gcc-3.3/gcc/expr.c:4128
#5 0x0049bb2d in java_expand_expr (exp=0x128f6f0, target=0x12a25f0,
tmode=SImod
e, modifier=0) at /home/john/gnu/gcc-3.3/gcc/java/expr.c:2573
#6 0x00554d0e in expand_expr (exp=0x128f6f0, target=0x12a25f0, tmode=SImode,
mo
difier=EXPAND_NORMAL) at /home/john/gnu/gcc-3.3/gcc/expr.c:9392
#7 0x005368cb in store_expr (exp=0x128f6f0, target=0x12a25f0, want_value=1) at
/home/john/gnu/gcc-3.3/gcc/expr.c:4379
#8 0x0053629e in expand_assignment (to=0x12a1620, from=0x128f6f0,
want_value=1,
suggest_reg=0) at /home/john/gnu/gcc-3.3/gcc/expr.c:4252
#9 0x00552bf0 in expand_expr (exp=0x128f708, target=0x0, tmode=VOIDmode,
modifi
er=EXPAND_NORMAL) at /home/john/gnu/gcc-3.3/gcc/expr.c:9031
#10 0x00541706 in expand_expr (exp=0x12ba2e0, target=0x0, tmode=VOIDmode,
modifi
er=EXPAND_NORMAL) at /home/john/gnu/gcc-3.3/gcc/expr.c:6831
#11 0x0049bedb in java_expand_expr (exp=0x12b8360, target=0x1270210,
tmode=VOIDm
ode, modifier=0) at /home/john/gnu/gcc-3.3/gcc/java/expr.c:2617
#12 0x00554d0e in expand_expr (exp=0x12b8360, target=0x0, tmode=VOIDmode,
modifi
er=EXPAND_NORMAL) at /home/john/gnu/gcc-3.3/gcc/expr.c:9392
#13 0x005ef75a in expand_expr_stmt_value (exp=0x12b8360, want_value=0,
maybe_las
t=1) at /home/john/gnu/gcc-3.3/gcc/stmt.c:2184
#14 0x005ef5ec in expand_expr_stmt (exp=0x12b8360) at /home/john/gnu/gcc-
3.3/gcc
/stmt.c:2138
#15 0x00439c6f in source_end_java_method () at /home/mitchell/gcc-3.3/gcc-
3.3/gc
c/java/parse.y:7506
#16 0x0043cfad in java_expand_method_bodies (class=0x12a1460)
at /home/mitchell/
gcc-3.3/gcc-3.3/gcc/java/parse.y:8203
#17 0x0044212b in java_expand_classes () at /home/mitchell/gcc-3.3/gcc-
3.3/gcc/j
ava/parse.y:9184
#18 0x004bb3bc in java_parse_file (set_yydebug=0) at /home/john/gnu/gcc-
3.3/gcc/
java/jcf-parse.c:1144
#19 0x004e333a in compile_file () at /home/john/gnu/gcc-3.3/gcc/toplev.c:2130
#20 0x004ea749 in do_compile () at /home/john/gnu/gcc-3.3/gcc/toplev.c:5370
#21 0x004ea79f in toplev_main (argc=8, argv=0x101126e0) at /home/john/gnu/gcc-
3.
3/gcc/toplev.c:5400
#22 0x004dacf0 in main (argc=8, argv=0x101126e0) at /home/john/gnu/gcc-
3.3/gcc/m
ain.c:35
(gdb)
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug target/12089] m68k-coff-gcj segmentation fault on array initilisation
2003-08-28 6:13 [Bug java/12089] New: m68k-coff-gcj segmentation fault on array initilisation john at atrove dot com
@ 2003-08-29 13:32 ` pinskia at gcc dot gnu dot org
2003-09-18 6:36 ` john at atrove dot com
` (2 subsequent siblings)
3 siblings, 0 replies; 7+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2003-08-29 13:32 UTC (permalink / raw)
To: gcc-bugs
PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=12089
pinskia at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Component|java |target
Keywords| |ice-on-valid-code
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug target/12089] m68k-coff-gcj segmentation fault on array initilisation
2003-08-28 6:13 [Bug java/12089] New: m68k-coff-gcj segmentation fault on array initilisation john at atrove dot com
2003-08-29 13:32 ` [Bug target/12089] " pinskia at gcc dot gnu dot org
@ 2003-09-18 6:36 ` john at atrove dot com
2003-09-18 6:37 ` [Bug middle-end/12089] " pinskia at gcc dot gnu dot org
2004-06-18 4:47 ` [Bug java/12089] " pinskia at gcc dot gnu dot org
3 siblings, 0 replies; 7+ messages in thread
From: john at atrove dot com @ 2003-09-18 6:36 UTC (permalink / raw)
To: gcc-bugs
PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=12089
------- Additional Comments From john at atrove dot com 2003-09-18 05:40 -------
The problem was also found in the cvs version. The problem is that the two
tree nodes (unsigned_type_node and const_ptr_type_node) needed by
emit_block_move_via_libcall (in expr.c) are not created in java/decl.c. These
nodes appear to be used when generating a memcpy or bcopy on CPUs which do not
have block/string move instructions, as is the case with the m68k. Adding the
following two lines seems to fix the problem
decl.c
485a
unsigned_type_node = make_unsigned_type (INT_TYPE_SIZE);
const_ptr_type_node
= build_pointer_type (build_type_variant (void_type_node, 1, 0));
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug middle-end/12089] m68k-coff-gcj segmentation fault on array initilisation
2003-08-28 6:13 [Bug java/12089] New: m68k-coff-gcj segmentation fault on array initilisation john at atrove dot com
2003-08-29 13:32 ` [Bug target/12089] " pinskia at gcc dot gnu dot org
2003-09-18 6:36 ` john at atrove dot com
@ 2003-09-18 6:37 ` pinskia at gcc dot gnu dot org
2004-06-18 4:47 ` [Bug java/12089] " pinskia at gcc dot gnu dot org
3 siblings, 0 replies; 7+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2003-09-18 6:37 UTC (permalink / raw)
To: gcc-bugs
PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=12089
pinskia at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Component|target |middle-end
Ever Confirmed| |1
Last reconfirmed|0000-00-00 00:00:00 |2003-09-18 06:09:42
date| |
------- Additional Comments From pinskia at gcc dot gnu dot org 2003-09-18 06:09 -------
Actually I think it is the other way around in that emit_block_move_via_libcall should not use
unsigned_type_node nor const_ptr_type_node because they are only C types and not generic types.
This is like the same assumptions that are made by -fprofile-arcs (bug 8260) which cause it to fail
also.
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug java/12089] m68k-coff-gcj segmentation fault on array initilisation
2003-08-28 6:13 [Bug java/12089] New: m68k-coff-gcj segmentation fault on array initilisation john at atrove dot com
` (2 preceding siblings ...)
2003-09-18 6:37 ` [Bug middle-end/12089] " pinskia at gcc dot gnu dot org
@ 2004-06-18 4:47 ` pinskia at gcc dot gnu dot org
3 siblings, 0 replies; 7+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-06-18 4:47 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2004-06-18 04:47 -------
Actually I am wrong, the Java front-end should be initializing these nodes.
--
What |Removed |Added
----------------------------------------------------------------------------
Component|middle-end |java
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=12089
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug java/12089] m68k-coff-gcj segmentation fault on array initilisation
[not found] <bug-12089-4@http.gcc.gnu.org/bugzilla/>
@ 2011-05-02 18:08 ` schwab@linux-m68k.org
0 siblings, 0 replies; 7+ messages in thread
From: schwab@linux-m68k.org @ 2011-05-02 18:08 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=12089
Andreas Schwab <schwab@linux-m68k.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #5 from Andreas Schwab <schwab@linux-m68k.org> 2011-05-02 18:04:47 UTC ---
expr.c no longer uses unsigned_type_node, and java/decl.c now initializes
const_ptr_type_node.
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug java/12089] m68k-coff-gcj segmentation fault on array initilisation
[not found] <bug-12089-6828@http.gcc.gnu.org/bugzilla/>
@ 2006-03-07 23:00 ` tromey at gcc dot gnu dot org
0 siblings, 0 replies; 7+ messages in thread
From: tromey at gcc dot gnu dot org @ 2006-03-07 23:00 UTC (permalink / raw)
To: gcc-bugs
------- Comment #4 from tromey at gcc dot gnu dot org 2006-03-07 23:00 -------
Defining these types seems ok to me.
It would be nice if there were front end documentation
explaining that front ends are required to, though.
FWIW Alexandre Oliva has a patch to bug 8620
the "other way" -- by changing gcc, not gcj.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=12089
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2011-05-02 18:08 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-08-28 6:13 [Bug java/12089] New: m68k-coff-gcj segmentation fault on array initilisation john at atrove dot com
2003-08-29 13:32 ` [Bug target/12089] " pinskia at gcc dot gnu dot org
2003-09-18 6:36 ` john at atrove dot com
2003-09-18 6:37 ` [Bug middle-end/12089] " pinskia at gcc dot gnu dot org
2004-06-18 4:47 ` [Bug java/12089] " pinskia at gcc dot gnu dot org
[not found] <bug-12089-6828@http.gcc.gnu.org/bugzilla/>
2006-03-07 23:00 ` tromey at gcc dot gnu dot org
[not found] <bug-12089-4@http.gcc.gnu.org/bugzilla/>
2011-05-02 18:08 ` schwab@linux-m68k.org
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).