From mboxrd@z Thu Jan 1 00:00:00 1970 From: Nielsen Linus To: ecos-discuss@sources.redhat.com Subject: RE: [ECOS] Help! Date: Fri, 06 Apr 2001 04:09:00 -0000 Message-id: <63E7EC6F3685D311B640080006279198035835FA@visbur.siemens.se> X-SW-Source: 2001-04/msg00050.html Well, I don't know the first thing about ARM7, but how about floating point support? Is it in hardware or is it emulated in software? If you have compiled the code for an ARM with hardware floating point support, and then run it on a system without hardware floating point, you might get a problem like this. Maybe the floating point emulation library needs some initialisation or the like? /Linus > We have ported ecos to our arm7 system.It seems work well,But > division fail always confuses us. > > the function which list below is my thread entry,I will > create and execute it in cyg_user_start > > void our_app1(int argc,char* argv[]) > { > float numerator,denominator; > numerator = 4000; > denominator = 100; > numerator /= denominator; ==>every time step over > here,gdb will report "bus error",Why? > } > Who can tell me why the gdb alway report bus error,and what > should I do? > > > > the function _simple_mkdate in wallclock.inl maybe miss a > parentheses,doesn't it? > > static void > _simple_mkdate(time_t time, > cyg_uint32* year, cyg_uint32* mon, > cyg_uint32* day, cyg_uint32* hour, > cyg_uint32* min, cyg_uint32* sec) > { > cyg_int32 days, hms, y, m, *dpm; > > days = (cyg_int32) (time / (24*60*60)); > hms = (cyg_int32) (time % (24*60*60)); > > // Nothing fancy about the time - no leap year magic involved > *sec = hms % 60; > *min = (hms % (60*60)) / 60; > *hour = hms / 60*60; ==============> *hour = hms/(60*60); > > ..... > } > > > Best regards > Windy >