[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [lwip-users] lwIP on 8032 with CS8900
From: |
kuwa |
Subject: |
Re: [lwip-users] lwIP on 8032 with CS8900 |
Date: |
Thu, 09 Sep 2004 17:32:17 +0900 (JST) |
Hi,
We are using Keil Cx51 compiler.
(I think 80C32 is a derivative of 8051 MCU.)
This error is related to Keil Cx51's implementation of function
parameter passing and indirect function call and reentrant function.
A workaround for this error is to add "reentrant" keyword to function
pointers, and callee functions (e.g. xxx_output).
Furthermore it might be related to how would you like to implement
your lwIP based system as a multi-threaded safe or not.
It is hard to judge which function should be added reentrant keyword
or not.
We chose a brute force method: add reentrant keyword to *all* lwIP
functions. It is stupid and bored but simple.
Hope that helps,
> Hello,
>
> I want to use lwIP with a 80C32 and a CS8900.
>
> When compiling lwIP with Keil C compiler, I get multiple errors:
> "error C212: indirect call: parameters do not fit within registers"
> These have to do with fuction calls like this one:
> netif->output(netif, header, dest);
>
> 1. Are there any settings in lwIP or the compiler to prevent this?
> 2. Has anyone done this (80C32 + CS8900) before and wants to share his
> experience with me?
>
> BR,
>
> Patrick
Shuji Kuwahara