Yahoo Groups archive

Lpc2000

Index last updated: 2026-04-28 23:31 UTC

Message

Re: [lpc2100] GCC-3.4 2003-12-17 snapshot

2003-12-18 by Bill Knight

Answers/Comments interspersed and start with +

-Bill


On Thu, 18 Dec 2003 13:21:15 -0300, Pablo Bleyer Kocik wrote:
  Hello Bill. Thank you for your comments.

At 11:02 18-12-2003, you wrote:
>   I downloaded the new release this morning then recompiled my
>operational thumb-interwork(ing) program.  A quick look at the return
>code in the ISRs showed they were not returning via the 'bx'
>instruction as required to restore the appropriate ARM/THUMB mode.  I
>loaded the code into my eval board via a JTAG interface & gdb
>anyway and it crashed out almost immediately.  I reloaded it into the
>simulator in gdb and got the same results.  Think I'll hold off until
>the final version of 3.4 is available.

  Please, can you send me your compilation options? I *assume* you are 
using the "thumb-interwork" switch, aren't you?

+ yes, thumb files are compiled with both -mthumb & -mthumb-interwork
and ARM files are compiled with -mthumb-interwork.  Linking is done with
-mthumb-interwork.  This code works fine with a GNUpro version of tools
I have been using for about a year now.

  BTW, ISRs do not return with the bx instruction. ISRs restore the CPSR 
saved in the link register (r14). This will preserve the mode the processor 
was in before the interrupt.

+ I was going to show you how smart I was in this section but in seaching
for collaborating evidence, I am now uncertain what the problem is.  The
ONLY thing that I am certain of is (err, let me recheck that--- <insert
explitive here>  Well I just cleaned out everything and rebuilt the whole
project with the new tools.  Seems to work fine.  It has two ISRs (timer
overflow & uart) and a cooperative multi-tasker which, when called, saves
all un-clobbered registers on the stack, changes to the next task's stack
space, recovers its registers and returns.  All of that is running OK
(at least so far).  So ummm, never-mind.

I will continue using the new stuff until/unless I find a major oops.  And
will let you know when/if I do.

Now if I just had Insight....

Thanks for the patience.

-Bill

Attachments

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.