Hi, The problem is, it happens at the start of the below mentioned function TDmain::Initialise (this=0x176c4c8) at crutil2.cpp:7571 Before there was a call to srand(time(NULL)) there(the first line), i thought that was the problem, i have removed it now but it comes on the very first line of the function -- the call stack seems like corrupted, for i don't know what reason!
cat /proc/cpuinfo vendor_id : IBM/S390 # processors : 1 bogomips per cpu: 348.97 processor 0: version = FF, identification = 0ECA7E, machine = 2096 ------------------------------------------- This is what I am getting using gdb bt [New Thread 1081117632 (LWP 11301)] [New Thread 1083214784 (LWP 11302)] Program received signal SIGILL, Illegal instruction. [Switching to Thread 1079019904 (LWP 11298)] TDmain::Initialise (this=0x176c4c8) at crutil2.cpp:7571 7571 header = NULL; (gdb) bt #0 TDmain::Initialise (this=0x176c4c8) at cutil2.cpp:7571 #1 0x007ccfe4 in TDmain (this=0x176c4c8, nm=0x1163c20 "Meta DLL", fcache=0x17562a0, icache=0x174db48) at crutil2.cpp:7636 ----------------------------------------------------- info reg r0 0x0 0 r1 0x27f 639 r2 0x176c4d0 24560848 r3 0x0 0 r4 0x807ccfda -2139303974 r5 0x0 0 r6 0x0 0 r7 0x7ffff4a8 2147480744 r8 0x422d40 4336960 r9 0x800ae330 -2146770128 r10 0x40015be4 1073830884 r11 0x7fffa540 2147460416 r12 0x2000 8192 r13 0x807cc730 -2139306192 r14 0x807ccfe4 -2139303964 r15 0x7fffa540 2147460416 pc 0x7cc76e 0x7cc76e <TDmain::Initialise()+70> cc 0x2 2 ------------------------------------------------ This is the output for the top instruction from call stack (gdb) print Initialise $1 = &TDmain::Initialise() (gdb) x/i Initialise 0x7cc728 <_ZN7TDmain10InitialiseEv>: stm %r11,%r15,44(%r15) (gdb) x/i 0x007ccfe4 0x7ccfe4 <TDmain+236>: l %r1,104(%r11) Also what should i set in -march - should it be g5, z900 or leave it to default i.e. nothing? Thanks for all the help on this matter. Regards, Raja On Fri, Nov 20, 2009 at 6:55 AM, John Summerfield < [email protected]> wrote: > rui wrote: > >> Hi all, >> >> This is my first message to this list and I am having a strange problem on >> s390x system. >> >> uname -a >> Linux suse9 2.6.5-7.97-s390x #1 SMP Fri Jul 2 14:21:59 UTC 2004 s390x >> s390x >> s390x GNU/Linux >> >> I am building my software on this system with these compiler/linker >> options >> as 32bit build. >> CC="g++ -m31" >> >> COPTS_LINUX_OS390="-L. -Wall -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE >> -D_THREAD_SAFE -D_REENTRANT -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED >> -D_POSIX_C_SOURCE=199506L" >> >> LOPTS_LINUX_OS390="-L. -Wall -lpthread -lm -lnsl -lrt -ldl -lcrypt >> -L/usr/X11R6/lib" >> >> The build is fine but when I execute my software and for a certain >> operation >> i receive SIGILL, which I don't seem to understand -- it happens at a >> start >> of a c++ based constructor in which the only difference from the rest of >> the >> application is that stl is used. >> >> I can't seem to get to the bottom of this, are there any compile/link >> flags, >> which I am not using correctly or is there something else. >> >> The code is built as 32bit on hp, solaris, suse linux and redhat linux >> without any problem and works fine, even on 64 bit version of redhat >> linux. >> >> Can anybody help me out with this, please? >> > > What model of CPU are you using? > cat /proc/cpuinfo > > Can you use gdb to find just what the instruction is that it's failing > on and post the hex code to the list? > > Just for giggles (and if you have the time), fire up Hercules on a PC > and try on that. I don't think that you can actually choose the CPU it > emulates (I've not used it for some time, I used to specify "model=3168" > and that ran Linux just fine), but it's a different processor. > > > > > -- > > Cheers > John > > -- spambait > [email protected] [email protected] > -- Advice > http://webfoot.com/advice/email.top.php > http://www.catb.org/~esr/faqs/smart-questions.html > http://support.microsoft.com/kb/555375 > > You cannot reply off-list:-) > > > ---------------------------------------------------------------------- > For LINUX-390 subscribe / signoff / archive access instructions, > send email to [email protected] with the message: INFO LINUX-390 or > visit > http://www.marist.edu/htbin/wlvindex?LINUX-390 > ---------------------------------------------------------------------- For LINUX-390 subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO LINUX-390 or visit http://www.marist.edu/htbin/wlvindex?LINUX-390
