4.2.2 #pragma directive

Below are #pragma directives supported as extended language specifications.

Table 4.14

List of Supported #pragma Directive

#pragma directive

Definition

#pragma interrupt [(]Function-name[(interrupt specification [,...])][)]

Hardware interrupt handler

#pragma interrupt_brk [(]Function-name[(interrupt specification [,...])][)]

Software interrupt handler

#pragma section [ section-type][ new-section-name]

Changing compiler output section name

#pragma rtos_interrupt [(]Function-name[(vect=address)][)]

Interrupt handler for RTOS

#pragma rtos_task [(]task-function-name [ ,...][)]

Task function for RTOS

#pragma inline [(]function-name [,...][)]

Inline expansion of function

#pragma noinline [(] function-name [,...][)]

#pragma inline_asm [(]function-name [,...][)]

Describing assembler instruction

#pragma address [(]variable-name=absolute-address[,...][)]

Absolute address allocation specification

#pragma saddr [(]variable-name[,...][)]

Using saddr area

#pragma callt [(]function-name[,...][)]

callt function

#pragma stack_protector [(] function-name [(num=number)][)]

Generating a code for detection of stack smashing [Professional Edition only]

#pragma no_stack_protector [(] function-name [)]