From: Sandeep D. <sa...@dd...> - 2000-08-22 22:42:13
|
Hello Dai Yuwen Try compiling with --noloopinvariant & --noloop-induction options these typically increase the spils, Will shortly provide options to disable optimizations selectively. Also will provide infrastructure to reduce spills automatically. This is becoming more more of a serious issue as people try to compile larger & larger programs. Regards Sandeep -----Original Message----- From: sdc...@li... [mailto:sdc...@li...]On Behalf Of Dai Yuwen Sent: Tuesday, August 22, 2000 3:58 AM To: sdc...@li... Subject: [Sdcc-user] How to prevent DSEG from expanding over ISEG? Hi, I use SDCC to compile a large program. There're so many local variables located in the DSEG that some of them have addresses large than 0x80 which is the start address of ISEG. Then the generated asm code may be invalid: mov local, A where local is namely in DSEG and its address is 0xD8. However, we know that direct memory address above 0x80 is invalid in 8051. In order to force SDCC to put local variables in XSEG, I used the "module-large" option. But in vain. DSEG still expanded over ISEG. Some one can help? Thanks in advance. Dai Yuwen _______________________________________________ Sdcc-user mailing list Sdc...@li... http://lists.sourceforge.net/mailman/listinfo/sdcc-user |