11.07.2015 Views

PicC 9.50 dsPIC Manual.pdf

PicC 9.50 dsPIC Manual.pdf

PicC 9.50 dsPIC Manual.pdf

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

FilesC Language Features•The abbreviation "bss" stands for Block Started by Symbol and was an assembler pseudoopused in IBM systems back in the days when computers were coal-fired. The continuedusage of this term is still appropriate.The name of the bss psect is rbss.The block clear of the bss psect may be omitted by disabling the clear suboption of --RUNTIME.For example:--RUNTIME=default,-clearWith this part of the runtime startup code absent, the contents of uninitialized variables will beunpredictable when the program begins execution.Variables whose contents should be preserved over a reset, or even power off, should be qualifiedwith persistent, see Section 3.4.9.1. Such variables are linked at a different area of memory and arenot altered by the runtime startup code in anyway.3.3.4.3 Linking in the C LibrariesBy default, a set of libraries are automatically passed to the linker to be linked in with user’s program.The libraries can be omitted by disabling the clib suboption of --RUNTIME. For example:--RUNTIME=default,-clibWith this part of the runtime startup code absent, the user must provide alternative library or sourcefiles to allow calls to library routines. This suboption may be useful if alternative library or sourcefiles are available and you wish to ensure that no HI-TECH C library routines are present in the finaloutput.•Some C statements produce assembler code that call library routines even though nolibrary function was called by the C code. These calls perform such operations as divisionor floating-point arithmetic. If the C libraries have been excluded from the codeoutput, these implicit library calls will also require substitutes.28

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!