From owner-freebsd-ports@FreeBSD.ORG Sat Apr 12 02:15:08 2003 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 422B237B401 for ; Sat, 12 Apr 2003 02:15:08 -0700 (PDT) Received: from arthur.vortex4.net (arthur.vortex4.net [216.27.179.169]) by mx1.FreeBSD.org (Postfix) with SMTP id D015343F75 for ; Sat, 12 Apr 2003 02:15:05 -0700 (PDT) (envelope-from friend@vortex4.net) Received: (qmail 89031 invoked by uid 1000); 12 Apr 2003 09:15:05 -0000 Date: Sat, 12 Apr 2003 02:15:05 -0700 From: Dave To: ports@freebsd.org Message-ID: <20030412021505.E84868@vortex4.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i X-Operating-System: FreeBSD arthur.vortex4.net 4.8-RC FreeBSD 4.8-RC X-System-Stats: 11:02AM up 19 days, 15:47, 2 users, load averages: 0.02, 0.05, 0.01 Subject: -march=pca56 blows up nethack34-nox11 (fwd) X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 12 Apr 2003 09:15:08 -0000 This was intended for the maintainer listed in /usr/ports/games/nethack34-nox11/Makefile, but mail to that address is bouncing, so I'm resending to the address listed in /usr/ports/games/nethack34/Makefile. Thanks, Dave ----- Forwarded message from Dave ----- Delivered-To: friend@arthur.vortex4.net Delivered-To: friend@vortex4.net Delivered-To: freebsd-alpha@freebsd.org Date: 12 Apr 2003 09:06:57 -0000 To: FreeBSD-gnats-submit@freebsd.org From: Dave X-send-pr-version: 3.113 X-GNATS-Notify: Cc: yoshi@parodius.com Cc: alpha@freebsd.org Subject: -march=pca56 blows up nethack34-nox11 X-BeenThere: freebsd-alpha@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: Dave List-Id: Porting FreeBSD to the Alpha List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: owner-freebsd-alpha@freebsd.org >Submitter-Id: current-users >Originator: Dave >Organization: vortex4.net >Confidential: no >Synopsis: -march=pca56 blows up nethack34-nox11 >Severity: non-critical >Priority: low >Category: ports >Class: sw-bug >Release: FreeBSD 5.0-RELEASE-p6 alpha >Environment: System: FreeBSD frane.vortex4.net 5.0-RELEASE-p6 FreeBSD 5.0-RELEASE-p6 #2: Tue Mar 25 04:13:12 PST 2003 root@frane.vortex4.net:/usr/src/sys/alpha/compile/FRANE alpha PC164SX Alpha system cvsup'ed to current built & installed world with the following options set in /etc/make.conf: CPUTYPE?=pca56 CFLAGS= -O -pipe CXXFLAGS+= -fmemoize-lookups -fsave-memoized MAKE_SHELL?=sh COPTFLAGS= -O -pipe WANT_FORCE_OPTIMIZATION_DOWNGRADE=1 Most notably. Send me mail if you need the rest of my make.conf the FRANE kernel pretty much GENERIC minus the hardware that isn't in this box. >Description: Built the nethack34-nox11 port. Builds cleanly, appears to run fine until after the class/race/alignment selection process (or letting the game choose), at which point the program exits with "illegal instruction". Posted this problem to alpha@freebsd.org 3/27/2003. Ran gdb at the promping of Andrew Gallatin with the following results: Shall I pick a character's race, role, gender and alignment for you? [ynq] y(no debugging symbols found)... Program received signal SIGILL, Illegal instruction. 0x1201046d4 in intersect () (gdb) bt #0 0x1201046d4 in intersect () #1 0x1201048c4 in split_rects () #2 0x120120550 in create_room () #3 0x12009c8b8 in makerooms () #4 0x12009deac in makelevel () #5 0x12009f0d0 in mklev () #6 0x120003f34 in newgame () #7 0x12017288c in main () #8 0x120002704 in _start () #9 0x1601c9944 in _rtld_start () from /usr/libexec/ld-elf.so.1 #10 0x1601c9944 in _rtld_start () from /usr/libexec/ld-elf.so.1 #11 0x1601c9944 in _rtld_start () from /usr/libexec/ld-elf.so.1 #12 0x1601c9944 in _rtld_start () from /usr/libexec/ld-elf.so.1 #13 0x1601c9944 in _rtld_start () from /usr/libexec/ld-elf.so.1 #14 0x1601c9944 in _rtld_start () from /usr/libexec/ld-elf.so.1 #15 0x1601c9944 in _rtld_start () from /usr/libexec/ld-elf.so.1 #16 0x1601c9944 in _rtld_start () from /usr/libexec/ld-elf.so.1 #17 0x1601c9944 in _rtld_start () from /usr/libexec/ld-elf.so.1 #18 0x1601c9944 in _rtld_start () from /usr/libexec/ld-elf.so.1 #19 0x1601c9944 in _rtld_start () from /usr/libexec/ld-elf.so.1 #20 0x1601c9944 in _rtld_start () from /usr/libexec/ld-elf.so.1 #21 0x1601c9944 in _rtld_start () from /usr/libexec/ld-elf.so.1 #22 0x1601c9944 in _rtld_start () from /usr/libexec/ld-elf.so.1 ---Type to continue, or q to quit--- ...it goes on like that (gdb) disassemble 0x1201046d0 Dump of assembler code for function intersect: 0x120104660 : ldbu t1,0(a1) 0x120104664 : sextb t1,t1 0x120104668 : ldbu t0,2(a0) 0x12010466c : sextb t0,t0 0x120104670 : cmple t1,t0,t1 0x120104674 : beq t1,0x1201046c0 0x120104678 : ldbu t1,1(a1) 0x12010467c : sextb t1,t1 0x120104680 : ldbu t0,3(a0) 0x120104684 : sextb t0,t0 0x120104688 : cmple t1,t0,t1 0x12010468c : beq t1,0x1201046c0 0x120104690 : ldbu t1,2(a1) 0x120104694 : sextb t1,t1 0x120104698 : ldbu t0,0(a0) 0x12010469c : sextb t0,t0 0x1201046a0 : cmplt t1,t0,t1 0x1201046a4 : bne t1,0x1201046c0 0x1201046a8 : ldbu t1,3(a1) 0x1201046ac : sextb t1,t1 0x1201046b0 : ldbu t0,1(a0) 0x1201046b4 : sextb t0,t0 0x1201046b8 : cmplt t1,t0,t1 0x1201046bc : beq t1,0x1201046c8 0x1201046c0 : clr v0 0x1201046c4 : ret 0x1201046c8 : ldbu t1,0(a0) 0x1201046cc : ldbu t0,0(a1) 0x1201046d0 : maxsb8 t1,t0,t1 0x1201046d4 : stb t1,0(a2) 0x1201046d8 : ldbu t2,1(a0) 0x1201046dc : ldbu t0,1(a1) 0x1201046e0 : maxsb8 t2,t0,t4 0x1201046e4 : stb t4,1(a2) 0x1201046e8 : ldbu t2,2(a1) 0x1201046ec : ldbu t0,2(a0) 0x1201046f0 : minsb8 t2,t0,t2 0x1201046f4 : stb t2,2(a2) 0x1201046f8 : ldbu t3,3(a1) 0x1201046fc : ldbu t0,3(a0) 0x120104700 : minsb8 t3,t0,t3 0x120104704 : stb t3,3(a2) 0x120104708 : sextb t1,t1 0x12010470c : sextb t2,t2 0x120104710 : cmple t1,t2,t1 0x120104714 : beq t1,0x12010472c 0x120104718 : sextb t4,t0 0x12010471c : sextb t3,t1 0x120104720 : cmple t0,t1,t0 0x120104724 : lda v0,1 0x120104728 : bne t0,0x120104730 0x12010472c : clr v0 0x120104730 : ret 0x120104734 : unop 0x120104738 : nop 0x12010473c : unop End of assembler dump. At Andrew's prompting, I compiled and ran the following program on my system: > #include > #include > #include > #include > #include > > main() > { > u_int8_t byte; > u_int16_t word; > u_int32_t lng; > u_int64_t hack = 0x123456789abcdef; > u_int64_t va = ((u_int64_t)&hack)+4UL; > > printf("implver = 0x%lx\n", alpha_implver()); > printf("amask = 0x%lx\n", alpha_amask(-1L)); > printf ("0x%lx\n", hack); > byte = ldbu(va); > printf ("0x%x\n", byte); > stb(va, 0xff); > printf ("0x%lx\n", hack); > } > with the following results: $ cc -O -pipe -mcpu=pca56 test.c $ ./a.out implver = 0x1 amask = 0xfffffffffffffffe 0x123456789abcdef 0x67 0x12345ff89abcdef Andrew's guess was that nethack was trapping on a BWX instruction, but indicated that from the program output my box could handle those instructions. Here is my dmesg output, if that's at all helpful: Copyright (c) 1992-2003 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD 5.0-RELEASE-p6 #2: Tue Mar 25 04:13:12 PST 2003 root@frane.vortex4.net:/usr/src/sys/alpha/compile/FRANE Preloaded elf kernel "/boot/kernel/kernel" at 0xfffffc000062c000. EB164 Digital AlphaPC 164SX 533 MHz, 531MHz 8192 byte page size, 1 processor. CPU: PCA56 (21164PC) major=9 minor=2 extensions=0x1 OSF PAL rev: 0x1000600020116 real memory = 534921216 (510 MB) avail memory = 514654208 (490 MB) Initializing GEOMetry subsystem cia0: <2117x Core Logic chipset> cia0: Pyxis, pass 1 cia0: extended capabilities: 1 pcib0: <2117x PCI host bus adapter> on cia0 pci0: on pcib0 sym0: <875> port 0x10000-0x100ff mem 0x82040000-0x82040fff,0x82042000-0x820420ff irq 9 at device 5.0 on pci0 sym0: Tekram NVRAM, ID 7, Fast-20, SE, parity checking sym0: interrupting at CIA irq 9 isab0: at device 8.0 on pci0 isa0: on isab0 pci0: at device 8.1 (no driver attached) pci0: at device 8.2 (no driver attached) pci0: at device 8.3 (no driver attached) xl0: <3Com 3c905B-TX Fast Etherlink XL> port 0x10100-0x1017f mem 0x82042100-0x82 04217f irq 8 at device 9.0 on pci0 xl0: interrupting at CIA irq 8 xl0: Ethernet address: 00:50:da:80:2c:11 miibus0: on xl0 xlphy0: <3Com internal media interface> on miibus0 xlphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto atkbdc0: at port 0x64,0x60 on isa0 atkbd0: irq 1 on atkbdc0 atkbd0: interrupting at ISA irq 1 fdc0: at port 0x3f7,0x3f 0-0x3f5 irq 6 drq 2 on isa0 fdc0: interrupting at ISA irq 6 mcclock0: at port 0x70-0x71 on isa0 sio0 at port 0x3f8-0x3ff irq 4 on isa0 sio0: type 16550A, console sio0: interrupting at ISA irq 4 sio1 at port 0x2f8-0x2ff irq 3 on isa0 sio1: type 16550A sio1: interrupting at ISA irq 3 Timecounter "i8254" frequency 1193182 Hz Timecounter "alpha" frequency 533159245 Hz Timecounters tick every 0.976 msec Waiting 10 seconds for SCSI devices to settle da0 at sym0 bus 0 target 0 lun 0 da0: Fixed Direct Access SCSI-3 device da0: 40.000MB/s transfers (20.000MHz, offset 16, 16bit), Tagged Queueing Enabled da0: 8683MB (17783249 512 byte sectors: 255H 63S/T 1106C) Mounting root from ufs:/dev/da0a It is with a heavy heart that I mark this low/non-critical. It's nethack, after all :> >How-To-Repeat: Problem is consistent on each execution of nethack built with the -march=pca56 flag >Fix: pkg_delete nethack-nox11-3.4.0_1 edit make.conf, comment out CPUTYPE?=pca56 cd /usr/ports/games/nethack34-nox11 ; make all install clean without -mcpu=pca56, the game runs without problems _______________________________________________ freebsd-alpha@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-alpha To unsubscribe, send any mail to "freebsd-alpha-unsubscribe@freebsd.org" ----- End forwarded message ----- -- Dave Cotton friend@vortex4.net