Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 29 Dec 2004 10:21:05 +0300 (MSK)
From:      Igor Sysoev <is@rambler-co.ru>
To:        Kris Kennaway <kris@obsecurity.org>
Cc:        freebsd-stable@freebsd.org
Subject:   Re: icc8 failed on 4.10: Illegal instruction
Message-ID:  <20041229101325.R73628@is.park.rambler.ru>
In-Reply-To: <20041229064721.GA21602@xor.obsecurity.org>
References:  <20041228162708.P73628@is.park.rambler.ru> <20041229093312.P73628@is.park.rambler.ru> <20041229064721.GA21602@xor.obsecurity.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 28 Dec 2004, Kris Kennaway wrote:

> On Wed, Dec 29, 2004 at 09:41:32AM +0300, Igor Sysoev wrote:
> > On Tue, 28 Dec 2004, Kris Kennaway wrote:
> >
> > > On Tue, Dec 28, 2004 at 04:34:35PM +0300, Igor Sysoev wrote:
> > > > I have cvsup'ed ports to use icc-8.1.024 on FreeBSD 4.10-RELEASE.
> > > > Then I installed the port and I ran /usr/local/intel_cc_80/bin/icc,
> > > > but it always failed with message "Illegal instruction".
> > >
> > > You forgot to mention what type of CPU you have.
> > >
> > > > Does icc-8.1.024 work on FreeBSD 4.x ?
> >
> > Sorry, it was so obvious for me that is not CPU problem in this case,
> > so I forgot to mention it. From dmesg:
> >
> > CPU: Intel(R) Pentium(R) 4 CPU 2.66GHz (2679.56-MHz 686-class CPU)
> >   Origin = "GenuineIntel"  Id = 0xf27  Stepping = 7
> >
> > I should also say that Linux binaries from linux_base-8-8.0_4 runs
> > without problems.
> >
> > Is there way to get the core of Linux binary and look it in gdb ?
>
> The linux_devtools port includes a linux version of gdb.

>/usr/compat/linux/usr/bin/gdb /usr/local/intel_cc_80/bin/iccbin
GNU gdb Red Hat Linux (5.2.1-4)
Copyright 2002 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-redhat-linux"...
(gdb) run
Starting program: /usr/local/intel_cc_80/bin/iccbin

Program received signal SIGILL, Illegal instruction.
0x080b13d7 in __intel_proc_init_ftzdaz ()
(gdb) bt
#0  0x080b13d7 in __intel_proc_init_ftzdaz ()
#1  0x080b133d in __intel_proc_init.H ()
#2  0x2830e54d in __libc_start_main () from /lib/libc.so.6
(gdb) info registers
...
eip            0x80b13d7        0x80b13d7
...
(gdb) disassemble $eip
...
0x80b13d3 <__intel_proc_init_ftzdaz+75>:        mov    0x2c(%esp,1),%esi
0x80b13d7 <__intel_proc_init_ftzdaz+79>:        stmxcsr (%esp,1)
0x80b13db <__intel_proc_init_ftzdaz+83>:        mov    (%esp,1),%eax
...
(gdb)

Strange, the code in __intel_proc_init_ftzdaz looks like the right code.
Right now I can not say from what extention "stmxcsr" come from.
Here is the features from dmesg:
  Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,C
MOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE>


Igor Sysoev
http://sysoev.ru/en/



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