Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 17 Aug 1999 08:05:20 -0700 (PDT)
From:      ganssauge@gmx.de
To:        freebsd-gnats-submit@freebsd.org
Subject:   gnu/13200: The assembler chokes on very long operands when called with -k
Message-ID:  <19990817150520.54A4E15714@hub.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         13200
>Category:       gnu
>Synopsis:       The assembler chokes on very long operands when called with -k
>Confidential:   no
>Severity:       serious
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Tue Aug 17 08:10:01 PDT 1999
>Closed-Date:
>Last-Modified:
>Originator:     Gottfried Ganßauge
>Release:        2.2.8-STABLE
>Organization:
>Environment:
FreeBSD gg3pc.lasec.de 2.2.8-STABLE FreeBSD 2.2.8-STABLE #0: Wed Dec  9 08:39:17 CET 1998     Root@gg3pc.lasec.de:/.tmp_mount/lasecpc/usr/src/sys/compile/GG3PC  i386
>Description:
When compiling C++ programs heavily using templates with EGCS-1.1.2
the compilation is aborted with a message stating that the assembler 
terminated with signal 11.
The same problem should happen when compiling to a.out on FreeBSD 3.2.
>How-To-Repeat:
Try to compile kdelibs11 from the ports collection using egcs-1.1.2.
the problem occurs at kab/addressbook.cc and on kab/keyvaluemap.cc.
>Fix:
Here is a patch to the assembler:
--- gnu/usr.bin/as/config/tc-i386.c     Fri Feb  5 12:53:30 1999
+++ /usr/src/gnu/usr.bin/as/config/tc-i386.c    Tue Aug 17 16:57:48 1999
@@ -1608,7 +1608,7 @@
                        register char *cp;
                        if (picmode &&
                                (cp = strchr(input_line_pointer,'@'))) {
-                               char tmpbuf[BUFSIZ];
+                               char *tmpbuf = alloca (cp - input_line_pointer +
 20);

                                if (strncmp(cp+1, "PLT", 3) == 0) {
                                        i.disp_reloc[this_operand] = RELOC_JMP_T
BL;


>Release-Note:
>Audit-Trail:
>Unformatted:


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19990817150520.54A4E15714>