wrong code generated

wrong code generated

The program enclosed as an attachment gives segmentation fault error using the newest version of the Intel icc compiler on the Pentium (not on PentiumII/III/4) processor based platform.
(SuSE Linux 8.2, Kernel 2.4.20, glibc 2.3)

Below I enclosed the compilation command, execution command
and Intel debugger session respectively.

test> icc -V -mcpu=pentium -g sin_test.c
Intel C++ Compiler for 32-bit applications, Version 8.0 Build 20040716Z Package ID: l_cc_pc_8.0.066_pe070.1
Copyright (C) 1985-2004 Intel Corporation. All rights reserved.

Edison Design Group C/C++ Front End, version 3.2 (Jul 17 2004 11:23:20)
Copyright 1988-2003 Edison Design Group, Inc.

GNU ld version 20030121 (SuSE Linux)
Supported emulations:

test> a.out
Segmentation fault

test> idb a.out
Linux Application Debugger for 32-bit applications, Version 7.3.2, Build 20031209
object file name: a.out
Reading symbolic information from a.out...done
(idb) r
Thread received signal SEGV
WARNING: Subrange with non-literal bounds is NYI
stopped at [Assertion failed: tfa src/st/file/parsesymsdwarf2.C 6615
This is an unexpected condition and may indicate the presence of a defect.
If you wish to report this, please include the stack trace that follows.
Do not know how to unwind a stack on this machine!!
(idb) cont
Thread received signal SEGV
stopped at [main:29 0x80488c2]
29 xx = fp32bits*rand()/RAND_MAX;


1 post / 0 new
For more complete information about compiler optimizations, see our Optimization Notice.