rtems with matlab autocode problems
Jiri Gaisler
jiri at gaisler.com
Thu Jun 17 14:36:05 UTC 2010
João Rasta wrote:
>>From the rtems user_c doc:
>
> Some of the reasons that rtems/confdefs.h may reserve too much memory
> for RTEMS are:
> • All tasks/threads are assumed to be floating point.
This might apply for the stack space, but not for enabling the
FPU on the SPARC port ...
I would try this define:
#define CONFIGURE_INIT_TASK_ATTRIBUTES RTEMS_FLOATING_POINT
Jiri.
>
>
> Best,
> JM
>
> On Thu, Jun 17, 2010 at 12:51 PM, Jiri Gaisler <jiri at gaisler.com
> <mailto:jiri at gaisler.com>> wrote:
>
>
> Since you are using floating-point operands (%f8), you need to
> enable FPU support
> in the Init task ....
>
> Jiri.
>
> João Rasta wrote:
> > Well, i'm using regular printf. I would not point to the encoding
> since
> > it allways prints the same thing no matter what i pass to printf().
> >
> > I removed the 3 optimization in the gcc flags and removed the
> other ones
> > and the same problem occurs. If i remove the printf the application
> > exits on the following instruction
> >
> > IU in error mode (tt = 0x2b)
> > 4000ca8c d127bfec st %f8, [%fp - 0x14]
> >
> > . I'm initializing rtems with:
> >
> > #define CONFIGURE_INIT
> > #define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
> > #define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
> >
> > #define CONFIGURE_LIBIO_MAXIMUM_FILE_DESCRIPTORS 10
> > #define CONFIGURE_POSIX_INIT_THREAD_STACK_SIZE (300*1024)
> >
> > #define CONFIGURE_MAXIMUM_POSIX_THREADS 10
> > #define CONFIGURE_MAXIMUM_POSIX_MUTEXES 10
> > #define CONFIGURE_MAXIMUM_POSIX_SEMAPHORES 5
> >
> > #define CONFIGURE_POSIX_INIT_THREAD_TABLE
> >
> > I think i have enough stack space.
> > Also, if i point CONFIGURE_POSIX_INIT_THREAD_ENTRY_POINT to a
> function
> > declared on the autocode the printfs do not work well, which does not
> > happen if i point it to a function declared on the main code.
> >
> > The autocode is compiled with sparc-rtems-gcc and a library
> libgnc.a is
> > created which is then passed to the compiler at link time with -lgnc.
> > The library is created with
> >
> > ar ruvs libgnc.a *.o
> >
> > Does it make sense that there may be a problem with the compiled
> .o's of
> > the library? If so, how can its declared functions be messing up with
> > memory operations and not on the main code? They use the same
> compiler..
> >
> >
> > Best,
> > JM
> >
> > On Thu, Jun 17, 2010 at 4:18 AM, Ralf Corsepius
> > <ralf.corsepius at rtems.org <mailto:ralf.corsepius at rtems.org>
> <mailto:ralf.corsepius at rtems.org <mailto:ralf.corsepius at rtems.org>>>
> wrote:
> >
> > On 06/16/2010 07:48 PM, João Rasta wrote:
> >
> > Yes, here goes
> >
> > // dummy printf test code
> > int upa(void)
> > {
> > int i = 0;
> >
> > for (i=0; i< 20; i++)
> > printf("B\n");
> >
> > exit(0);
> >
> > }
> >
> > And the result is:
> >
> >
> > ¬ÖUf
> > ¬ÖUf
> > ¬ÖUf
> > ¬ÖUf
> > ¬ÖUf
> > ¬ÖUf
> > ¬ÖUf
> > ¬ÖUf
> > ¬ÖUf
> > ¬ÖUf
> > ¬ÖUf
> > ¬ÖUf
> > ¬ÖUf
> > ¬ÖUf
> > ¬ÖUf
> > ¬ÖUf
> > ¬ÖUf
> > ¬ÖUf
> > ¬ÖUf
> > ¬ÖUf
> >
> > Program exited normally.
> >
> > Hmm, I am seeing "4 characters per line" instead of "1 or 2
> > characters per line" as one would expect.
> >
> > Are you sure your code uses the right printf? 4 chars instead of 1
> > could indicate using UTF8 or UTF16 encoding instead of ACSII.
> >
> >
> > sparc-rtems-gcc -c -O3 -g3 -ffloat-store -fPIC -DUSE_RTMODEL
> > -DMODEL=gnc
> > -DRT -DNUMST=1 -DTID01EQ=0 -DNCSTATES=0 -DUNIX -DMT=0
> -DHAVESTDI
> > O -I. -I../../rtwlt/matlab/simulink/include
> > -I../../rtwlt/matlab/extern/include
> -I../../rtwlt/matlab/rtw/c/src
> > -I../../rtwlt/matlab/rtw/c/
> > src/ext_mode/common -I. -I.. -I../../rtwlt/matlab/rtw/c/libsrc
> > ../../rtwlt/matlab/rtw/c/src/rt_sim.c
> >
> >
> > ... -O3 -g3 -ffloat-store -fPIC
> > certainly leave room for speculation on incompatibility.
> >
> > -03 ... switches on dangerous optimizations
> > -ffloat-store ... could be incompatible to rtems-gcc/newlib
> > -fPIC ... unneeded, unused by the rtems-toolchains, unknown
> > side effects on rtems-gcc/newlib
> >
> > Ralf
> >
> >
> >
> >
> > _______________________________________________
> > rtems-users mailing list
> > rtems-users at rtems.org <mailto:rtems-users at rtems.org>
> > http://www.rtems.org/mailman/listinfo/rtems-users
> _______________________________________________
> rtems-users mailing list
> rtems-users at rtems.org <mailto:rtems-users at rtems.org>
> http://www.rtems.org/mailman/listinfo/rtems-users
>
>
More information about the users
mailing list