From: SourceForge.net <no...@so...> - 2009-11-30 10:16:12
|
Bugs item #2905892, was opened at 2009-11-30 20:16 Message generated for change (Tracker Item Submitted) made by jwinfphase You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=100599&aid=2905892&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: pic16 target Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: jwinfphase (jwinfphase) Assigned to: Nobody/Anonymous (nobody) Summary: sdcc 2.9 fails to do banksel within interrupt on pic18f46j50 Initial Comment: at least thats what I think is happening i can set global variables but the interrupt handler reads them as zero if I force the interrupt handler to write to those global variables first with good values the thing works so obviously the global scope and the interrupt hanlder are not accessing the same memory. I collected the snippets together in the attachment. I can prepare a small isolated testcase if you think the bug can be fixed. the code worked previously on a pic18f4550 SDCC 2.6.1 I cant go back to this because I need to use the 46J50 SDCC : mcs51/gbz80/z80/avr/ds390/pic16/pic14/TININative/xa51/ds400/hc08 2.9.4 #5564 (Nov 4 2009) (UNIX) gputils-0.13.7 /root/c_and_c++_compilers_and_cint/sdcc/bin/sdcc -o bootloader_NOT.hex --optimize-goto --denable-peeps --obanksel=9 --opt-code-size --optimize-cmp --optimize-df --fstack --use-crt=crt0.o -Wl-s18f46j50.lkr,-m -mpic16 -p18f46j50 -llibio18f46j50.lib -llibc18f.lib application_iface.o boot_main.o boot_iface.o usb.o usb_descriptors.o ep0.o ep1.o ep2.o flash.o config.o interrupt_iface.o joh...@in... ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=100599&aid=2905892&group_id=599 |