Hi all, I've run into a problem having to do with the assembly language output by the TI C compiler.
I'm compiling the lwip stack. In it you'll find this code:

At line 75, msg.function is assigned the address of the do_newconn function. Simple enough. Here's the assembler output as provided by a disassembly window:
Here's where it gets a little fuzzy for me because I'm new to ARM assembly, but I think R0 is getting assigned the 32-bit value located at $C$CON1.
This is where I get lost competely. 0x200075B8 is definately not the location of the do_newconn function. Here's the do_newconn function:
It's at 0xCE7A. Wait, gets better. Here's the registers just after the load of $C$CON1 into R0:

0xCE7B? Ignore the fact that I don't understand where that value came from--it's one byte off anyway. That's a problem, of course.
If anyone has a little time to show me what I'm missing, I'd really appreciate it!
Thanks!