From: SourceForge.net <no...@so...> - 2009-09-25 10:24:27
|
Bugs item #2862332, was opened at 2009-09-19 22:17 Message generated for change (Comment added) made by bughunter2 You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=100599&aid=2862332&group_id=599 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: mcs51(8051) target Group: unreproducable >Status: Open Resolution: Works For Me Priority: 5 Private: No Submitted By: Jelle Geerts (bughunter2) Assigned to: Maarten Brock (maartenbrock) Summary: code generation bug Initial Comment: 1. For sample code, please see the 'sample.c' attachment. 2. Exact command used to run SDCC on the sample code: Tried both 'sdcc -mmcs51 sample.c' and 'sdcc -mmcs51 --model-medium sample.c'. With the former command, the code works as expected. With the --model-medium option however, the code does not work as expected. 3. SDCC : mcs51/gbz80/z80/avr/ds390/pic16/pic14/TININative/xa51/ds400/hc08 2.9.2 #5492 (Aug 17 2009) (MINGW32) 4. Depending on the options specified, sometimes some code is not executed. Please see the 'sample.c' attachment for more information. ---------------------------------------------------------------------- >Comment By: Jelle Geerts (bughunter2) Date: 2009-09-25 12:24 Message: Forgot to specify --xram-loc. But even if I am going to specify it correctly, it might not work because --model-medium (and --medium-large?) are not supported by SDCC on my device (at least at this moment)? ---------------------------------------------------------------------- Comment By: Maarten Brock (maartenbrock) Date: 2009-09-25 12:16 Message: I've looked briefly into the datasheet and to my surprise there was no sfr map. They claim it is fully 8052 compatible, though I think that is unlikely with internal xdata. I doubt if setting P2 to 0xFD, 0xFE or 0xFF before a MOVX @Ri instruction will target the internal xdata, but who knows. My guess is that it is only possible to access it with MOVX @DPTR and thus --model-medium does not work. Moreover this would also mean that xdata initialization (crtxinit.asm) will not work and must be adapted. Finally, did you specify --xram-loc while linking your app. because the internal xdata is not at 0x0000? Maarten ---------------------------------------------------------------------- Comment By: Jelle Geerts (bughunter2) Date: 2009-09-25 10:41 Message: Maarten, I'm using the TUSB3210 which has an 8052 MCU. It does have internal XDATA, which isn't disabled by default. Also, I have not defined _XPAGE. If you want to have a look at the data manual of the device, see: http://www.tusb3210.com/Download/tusb3210.pdf HTH, Jelle ---------------------------------------------------------------------- Comment By: Maarten Brock (maartenbrock) Date: 2009-09-24 17:34 Message: Jelle, I cannot reproduce this bug. Looking at the generated asm all seems fine. What mcu are you using? Does it have internal XDATA? Is it disabled by default? Is _XPAGE correctly defined? Maarten ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=100599&aid=2862332&group_id=599 |