\r
/*-----------------------------------------------------------*/\r
\r
-/* Interrupt wrapper and handler in which the jitter is measured. */\r
-void vTimer2_ISR_Wrapper( void ) __attribute__((naked));\r
-static void prvTimer2_ISR_Handler( void ) __attribute__((noinline));\r
+/* Interrupt handler in which the jitter is measured. */\r
+void vTimer2_ISR_Handler( void ) __attribute__((interrupt));\r
\r
/* Stores the value of the maximum recorded jitter between interrupts. This is\r
displayed on one of the served web pages. */\r
}\r
/*-----------------------------------------------------------*/\r
\r
-void vTimer2_ISR_Wrapper( void )\r
-{\r
- portENTER_INTERRUPT();\r
- prvTimer2_ISR_Handler();\r
- portEXIT_INTERRUPT();\r
-}\r
-/*-----------------------------------------------------------*/\r
-\r
-static void prvTimer2_ISR_Handler( void )\r
+void vTimer2_ISR_Handler( void )\r
{\r
volatile unsigned short usCurrentCount;\r
static unsigned short usMaxCount = 0;\r
static unsigned long ulErrorCount = 0UL;\r
\r
- /* We use the timer 1 counter value to measure the clock cycles between\r
+ /* This is the highest priority interrupt in the system, so there is no\r
+ advantage to re-enabling interrupts here.\r
+ \r
+ We use the timer 1 counter value to measure the clock cycles between\r
the timer 0 interrupts. First stop the clock. */\r
CMT.CMSTR1.BIT.STR3 = 0;\r
portNOP();\r
#define tmrTIMER_0_1_FREQUENCY ( 2000UL )\r
#define tmrTIMER_2_3_FREQUENCY ( 2001UL )\r
\r
-/* Wrappers and handlers for the two timers used. See the documentation page\r
+/* Handlers for the two timers used. See the documentation page \r
for this port on http://www.FreeRTOS.org for more information on writing\r
interrupt handlers. */\r
-void vT0_1_ISR_Wrapper( void ) __attribute((naked));\r
-void vT2_3_ISR_Wrapper( void ) __attribute((naked));\r
+void vT0_1_ISR_Handler( void ) __attribute((interrupt));\r
+void vT2_3_ISR_Handler( void ) __attribute((interrupt));\r
\r
void vInitialiseTimerForIntQueueTest( void )\r
{\r
}\r
/*-----------------------------------------------------------*/\r
\r
-void vT0_1_ISR_Wrapper( void )\r
+void vT0_1_ISR_Handler( void )\r
{\r
- /* This is a naked function. This macro saves registers then re-enables\r
- interrupts. See the documentation for htis port on http://www.FreeRTOS.org\r
- for more information on writing interrupts. */\r
- portENTER_INTERRUPT();\r
+ /* Re-enabled interrupts. */\r
+ __asm volatile( "SETPSW I" );\r
\r
/* Call the handler that is part of the common code - this is where the\r
non-portable code ends and the actual test is performed. */\r
portYIELD_FROM_ISR( xFirstTimerHandler() ); \r
-\r
- /* Restore registers, then return. */\r
- portEXIT_INTERRUPT();\r
}\r
/*-----------------------------------------------------------*/\r
\r
-void vT2_3_ISR_Wrapper( void )\r
+void vT2_3_ISR_Handler( void )\r
{\r
- /* This is a naked function. This macro saves registers then re-enables\r
- interrupts. See the documentation for htis port on http://www.FreeRTOS.org\r
- for more information on writing interrupts. */\r
- portENTER_INTERRUPT();\r
+ /* Re-enabled interrupts. */\r
+ __asm volatile( "SETPSW I" );\r
\r
/* Call the handler that is part of the common code - this is where the\r
non-portable code ends and the actual test is performed. */\r
portYIELD_FROM_ISR( xSecondTimerHandler() ); \r
-\r
- /* Restore registers, then return. */\r
- portEXIT_INTERRUPT();\r
}\r
/*-----------------------------------------------------------*/\r
\r
[LINKAGE_ORDER_Debug_RX600_E1_E20_SYSTEM]\r
[GENERAL_DATA_CONFIGURATION_Debug_RX600_E1_E20_SYSTEM]\r
[OPTIONS_Debug_with_optimisation_GNU Assembler]\r
-"Assembly source file" "09863a320aa5bc10" 4 \r
+"Assembly source file" "09863a320aa5bc10" 3 \r
[OPTIONS_Debug_with_optimisation_GNU Compiler]\r
-"C source file" "09863a320aa5bc10" 3 \r
-"C++ source file" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\BlockQ.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\GenQTest.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\IntQueue.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\PollQ.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\QPeek.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\blocktim.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\death.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\flash.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\flop.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\integer.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\recmutex.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\semtest.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\apps\httpd\http-strings.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\apps\httpd\httpd-fs.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\apps\httpd\httpd.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\psock.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\timer.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\uip.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\uip_arp.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\GNU-Files\hwinit.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\GNU-Files\inthandler.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\GNU-Files\start.asm" "09863a320aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\HighFrequencyTimerTest.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\IntQueueTimer.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\ParTest.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\Renesas-Files\hwsetup.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\main-blinky.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\main-full.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\uIP_Task.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\vects.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\webserver\EMAC.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\webserver\httpd-cgi.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\webserver\phy.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Source\list.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Source\portable\GCC\RX600\port.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Source\portable\MemMang\heap_2.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Source\queue.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Source\tasks.c" "09863a320aa5bc10" 3 \r
-"Preprocess Assembly file" "09863a320aa5bc10" 2 \r
+"C source file" "020673517aa5bc10" 2 \r
+"C++ source file" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\BlockQ.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\GenQTest.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\IntQueue.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\PollQ.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\QPeek.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\blocktim.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\death.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\flash.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\flop.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\integer.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\recmutex.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\semtest.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\apps\httpd\http-strings.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\apps\httpd\httpd-fs.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\apps\httpd\httpd.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\psock.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\timer.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\uip.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\uip_arp.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\GNU-Files\hwinit.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\GNU-Files\inthandler.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\GNU-Files\start.asm" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\HighFrequencyTimerTest.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\IntQueueTimer.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\ParTest.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\Renesas-Files\hwsetup.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\main-blinky.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\main-full.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\uIP_Task.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\vects.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\webserver\EMAC.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\webserver\httpd-cgi.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\webserver\phy.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Source\list.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Source\portable\GCC\RX600\port.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Source\portable\MemMang\heap_2.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Source\queue.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Source\tasks.c" "020673517aa5bc10" 2 \r
+"Preprocess Assembly file" "020673517aa5bc10" 2 \r
[OPTIONS_Debug_with_optimisation_GNU Library Generator]\r
"Single Shot" "097f0a320aa5bc10" 1 \r
[OPTIONS_Debug_with_optimisation_GNU Linker]\r
-"Single Shot" "09863a320aa5bc10" 5 \r
+"Single Shot" "09863a320aa5bc10" 4 \r
[OPTIONS_Debug_with_optimisation]\r
"" 0 \r
"[V|VERSION|2] [B|DOEXTF|1] [S|INCDIR|^"$(TCINSTALL)\rx-elf\lib\gcc\rx-elf\4.5-GNURX_v10.03^"|^"$(CONFIGDIR)^"] [B|RSARCH|1] [B|FIXUPLIBS|1] [S|ARCHIVE|lib$(PROJECTNAME).a*libgcc.a] [S|OUTFORM|BOTH] [B|MFILEGEN|1] [S|PLMFILE|^"$(CONFIGDIR)\$(PROJECTNAME).map^"] [S|OUTFILE|^"$(CONFIGDIR)\$(PROJECTNAME).x^"] [S|GROUPDET|.fvectors|0|0||1|0xFFFFFF80|0|1|0|.fvectors|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.text|0|0||1|0xFFF80000|0|0|0|.text|All-files|<<FEND>>|0|.text.*|All-files|<<FEND>>|0|P|All-files|<<FEND>>|1|etext|<<FEND>>|<<CEND>>|<<GEND>>|.rvectors|0|0||0||0|1|1|_rvectors_start|<<FEND>>|0|.rvectors|All-files|<<FEND>>|1|_rvectors_end|<<FEND>>|<<CEND>>|<<GEND>>|.init|0|0||0||0|0|0|.init|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.fini|0|0||0||0|0|0|.fini|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.got|0|0||0||0|0|0|.got|All-files|<<FEND>>|0|.got.plt|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.rodata|0|0||0||0|0|0|.rodata|All-files|<<FEND>>|0|.rodata.*|All-files|<<FEND>>|0|C_1|All-files|<<FEND>>|0|C_2|All-files|<<FEND>>|0|C|All-files|<<FEND>>|1|_erodata|<<FEND>>|<<CEND>>|<<GEND>>|.eh_frame_hdr|0|0||0||0|0|0|.eh_frame_hdr|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.eh_frame|0|0||0||0|0|0|.eh_frame|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.jcr|0|0||0||0|0|0|.jcr|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.tors|0|0||0||0|0|1|__CTOR_LIST__|<<FEND>>|1|___ctors|<<FEND>>|0|.ctors|All-files|<<FEND>>|1|___ctors_end|<<FEND>>|1|__CTOR_END__|<<FEND>>|1|__DTOR_LIST__|<<FEND>>|1|___dtors|<<FEND>>|0|.dtors|All-files|<<FEND>>|1|___dtors_end|<<FEND>>|1|__DTOR_END__|<<FEND>>|1|_mdata|<<FEND>>|<<CEND>>|<<GEND>>|.istack|0|0||1|0x00017FFC|0|0|1|_istack|<<FEND>>|<<CEND>>|<<GEND>>|.ustack|0|0||1|0x000179BC|0|0|1|_ustack|<<FEND>>|<<CEND>>|<<GEND>>|.data|0|2|_mdata|1|0x00001000|0|0|1|_data|<<FEND>>|0|.data|All-files|<<FEND>>|0|.data.*|All-files|<<FEND>>|0|D|All-files|<<FEND>>|0|D_1|All-files|<<FEND>>|0|D_2|All-files|<<FEND>>|1|_edata|<<FEND>>|<<CEND>>|<<GEND>>|.gcc_exc|0|0||0||0|0|0|.gcc_exc|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.bss|0|0||0||0|0|1|_bss|<<FEND>>|0|.bss|All-files|<<FEND>>|0|.bss.*|All-files|<<FEND>>|0|COMMON|All-files|<<FEND>>|0|B|All-files|<<FEND>>|0|B_1|All-files|<<FEND>>|0|B_2|All-files|<<FEND>>|1|_ebss|<<FEND>>|1|_end|<<FEND>>|<<CEND>>|<<GEND>>|] [S|APPTXT|^"-e _start^"] [S|CPUTYPE|RX600] [S|ENDIAN|LITTLE] [S|CPU|Other] [I|RMINTREGVAL|0] [I|RMMAXCONSTVAL|0] [I|RMMAXVARSVAL|0] [S|PROJECTTYPE|CAPPPROJECT] [B|DOOPTLIB|1] [B|DOPROJBUILT|1]\r
-" 5 \r
-"[V|VERSION|2] [S|INCDIR|^"$(TCINSTALL)\rx-elf\rx-elf\optlibinc^"|^"$(TCINSTALL)\rx-elf\lib\gcc\rx-elf\4.5-GNURX_v10.03\optlibinc^"|^"$(PROJDIR)\include^"|^"$(PROJDIR)\..\..\..\Source\include^"|^"$(PROJDIR)\..\..\..\Source\portable\GCC\RX600^"|^"$(PROJDIR)^"|^"$(PROJDIR)\..\..\Common\include^"|^"$(PROJDIR)\..\..\Common\Ethernet\FreeTCPIP^"|^"$(PROJDIR)\webserver^"] [S|DEFINES|DEBUG|INCLUDE_HIGH_FREQUENCY_TIMER_TEST] [S|OUTPUT|OBJECT] [S|OBJPATH|^"$(CONFIGDIR)\$(FILELEAF).o^"] [B|DEBUG|1] [S|DEBUGFT|Native] [I|DEBUGLV|2] [S|ALIGN4|ALL] [B|OPTIMIZE|1] [I|OPTLV|1] [B|NOSTDINC|1] [S|APPTXT|^"-Wa,-gdwarf2^"] [S|CPUTYPE|RX600] [S|ENDIAN|LITTLE] [S|CPU|Other] [I|RMINTREGVAL|0] [I|RMMAXCONSTVAL|0] [I|RMMAXVARSVAL|0] [S|PROJECTTYPE|CAPPPROJECT] [B|DOOPTLIB|1]\r
+" 4 \r
+"[V|VERSION|2] [S|INCDIR|^"$(TCINSTALL)\rx-elf\rx-elf\optlibinc^"|^"$(TCINSTALL)\rx-elf\lib\gcc\rx-elf\4.5-GNURX_v10.03\optlibinc^"|^"$(PROJDIR)\include^"|^"$(PROJDIR)\..\..\..\Source\include^"|^"$(PROJDIR)\..\..\..\Source\portable\GCC\RX600^"|^"$(PROJDIR)^"|^"$(PROJDIR)\..\..\Common\include^"|^"$(PROJDIR)\..\..\Common\Ethernet\FreeTCPIP^"|^"$(PROJDIR)\webserver^"] [S|DEFINES|DEBUG|INCLUDE_HIGH_FREQUENCY_TIMER_TEST] [S|OUTPUT|OBJECT] [S|OBJPATH|^"$(CONFIGDIR)\$(FILELEAF).o^"] [B|DEBUG|1] [S|DEBUGFT|Native] [I|DEBUGLV|2] [S|ALIGN4|ALL] [B|OPTIMIZE|1] [I|OPTLV|1] [B|NOSTDINC|1] [S|APPTXT|^"-Wall^"] [S|CPUTYPE|RX600] [S|ENDIAN|LITTLE] [S|CPU|Other] [I|RMINTREGVAL|0] [I|RMMAXCONSTVAL|0] [I|RMMAXVARSVAL|0] [S|PROJECTTYPE|CAPPPROJECT] [B|DOOPTLIB|1]\r
" 2 \r
-"[V|VERSION|2] [S|INCDIR|^"$(TCINSTALL)\rx-elf\rx-elf\optlibinc^"|^"$(TCINSTALL)\rx-elf\lib\gcc\rx-elf\4.5-GNURX_v10.03\optlibinc^"|^"$(PROJDIR)\include^"|^"$(PROJDIR)\..\..\..\Source\include^"|^"$(PROJDIR)\..\..\..\Source\portable\GCC\RX600^"|^"$(PROJDIR)^"|^"$(PROJDIR)\..\..\Common\include^"|^"$(PROJDIR)\..\..\Common\Ethernet\FreeTCPIP^"|^"$(PROJDIR)\webserver^"] [S|DEFINES|DEBUG|INCLUDE_HIGH_FREQUENCY_TIMER_TEST] [S|OUTPUT|OBJECT] [S|OBJPATH|^"$(CONFIGDIR)\$(FILELEAF).o^"] [B|DEBUG|1] [S|DEBUGFT|Native] [I|DEBUGLV|2] [S|ALIGN4|ALL] [B|OPTIMIZE|1] [I|OPTLV|1] [B|NOSTDINC|1] [S|CPUTYPE|RX600] [S|ENDIAN|LITTLE] [S|CPU|Other] [I|RMINTREGVAL|0] [I|RMMAXCONSTVAL|0] [I|RMMAXVARSVAL|0] [S|PROJECTTYPE|CAPPPROJECT] [B|DOOPTLIB|1]\r
-" 3 \r
-"[V|VERSION|2] [S|OBJPATH|^"$(CONFIGDIR)\$(FILELEAF).o^"] [I|DEBUGLV|2] [B|LINCHLS|1] [B|LINCASS|1] [B|LINCSYM|1] [S|LFILE|^"$(CONFIGDIR)\$(FILELEAF).^"] [S|PROJECTTYPE|CAPPPROJECT] [S|INCDIR|^"$(PROJDIR)^"] [S|CPUTYPE|RX600] [S|ENDIAN|LITTLE] [S|CPU|Other] " 4 \r
+"[V|VERSION|2] [S|OBJPATH|^"$(CONFIGDIR)\$(FILELEAF).o^"] [I|DEBUGLV|2] [B|LINCHLS|1] [B|LINCASS|1] [B|LINCSYM|1] [S|LFILE|^"$(CONFIGDIR)\$(FILELEAF).^"] [S|PROJECTTYPE|CAPPPROJECT] [S|INCDIR|^"$(PROJDIR)^"] [S|CPUTYPE|RX600] [S|ENDIAN|LITTLE] [S|CPU|Other] " 3 \r
"[V|VERSION|2] [S|OUTPUTPATH|^"$(CONFIGDIR)\lib$(PROJECTNAME).a^"] [B|OPTIMIZE|1] [I|OPTTYPE|1] [S|MODE|BUILD/CHANGED] [S|CPUTYPE|RX600] [S|ENDIAN|LITTLE] [S|CPU|Other] [B|DOPROJBUILT|1] [B|DOOPTLIB|1] [B|MATH|1] [B|STDIO|1] [B|STDLIB|1] [B|STRING|1] " 1 \r
[EXCLUDED_FILES_Debug_with_optimisation]\r
"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\main-blinky.c" \r
"DefaultSession" \r
"SessionRX600_E1_E20_SYSTEM" \r
[GENERAL_DATA_CONFIGURATION_Debug]\r
-"PROJECT_FILES_MODIFIED_DATA_TAG" "FALSE" \r
+"PROJECT_FILES_MODIFIED_DATA_TAG" "TRUE" \r
[SESSIONS_Debug]\r
"DefaultSession" \r
"SessionRX600_E1_E20_SYSTEM" \r
"{5F75FDA0-6FF0-11D5-B7CE-00E029352378}PACtrlViews" "0" \r
"{64753FED-D387-4B8C-A91D-D3419C869C07}C_EVAL_DENORMAL_MODE" "16777216" \r
"{64753FED-D387-4B8C-A91D-D3419C869C07}C_EVAL_ROUND_MODE" "768" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_0" "000000000000719C" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_1" "00000000000031A4" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_10" "000000000000007B" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_11" "0000000000000001" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_12" "0000000000003570" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_13" "00000000A5A5A5A5" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_14" "0000000000000000" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_15" "0000000000006F2C" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_16" "000000000000719C" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_0" "000000000000BB7C" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_1" "000000000000C574" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_10" "000000000000C588" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_11" "000000000000C584" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_12" "000000000000C580" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_13" "000000000000C57C" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_14" "00000000419C0000" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_15" "000000000000C58C" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_16" "000000000000BB7C" \r
"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_17" "0000000000017FE0" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_18" "0000000000030003" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_19" "00000000FFF8FA33" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_2" "0000000000006F2C" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_20" "00000000FFF925E0" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_18" "0000000000030000" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_19" "00000000FFF91288" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_2" "000000000000C594" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_20" "00000000FFF92658" \r
"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_21" "0000000080000000" \r
"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_22" "0000000000000000" \r
"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_23" "0000000000000000" \r
"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_24" "0000000000000100" \r
"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_25" "1234567887650000" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_3" "0000000000000000" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_4" "0000000000000001" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_5" "0000000000006F2C" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_6" "00000000A5A5A5A5" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_7" "0000000000000000" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_8" "00000000A5A5A5A5" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_9" "00000000A5A5A5A5" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_3" "000000000000C598" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_4" "0000000000000000" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_5" "000000000000C590" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_6" "0000000000000000" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_7" "000000000000EB14" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_8" "0000000000000000" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_9" "000000000000C578" \r
"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_COUNT" "26" \r
"{6C4D5B81-FD67-46A9-A089-EA44DCDE47FD}RAMMonitorManagerCtrlBlockInfoFileDir" "" \r
"{6C4D5B81-FD67-46A9-A089-EA44DCDE47FD}RAMMonitorManagerCtrlBlockInfoFileName" "" \r
0 \r
[WINDOW_POSITION_STATE_DATA_VD1]\r
"Help" "TOOLBAR 0" 59419 1 5 "0.00" 0 0 0 0 0 17 0 "" "0.0" \r
-"{WK_00000001_CmdLine}" "WINDOW" 59422 0 1 "0.07" 252 0 0 100 100 17 0 "32771|32772|32778|<<separator>>|32773|32774|<<separator>>" "0.0" \r
+"{WK_00000001_CmdLine}" "WINDOW" 59422 0 1 "0.07" 400 0 0 100 100 17 0 "32771|32772|32778|<<separator>>|32773|32774|<<separator>>" "0.0" \r
"{WK_00000001_DEBUGCONSOLE}RTOSDemoSessionRX600_E1_E20_SYSTEM" "WINDOW" 59422 5 0 "1.00" 146 0 0 350 200 17 0 "57634|57637|57633|<<separator>>|32781|32782|<<separator>>|32780|32785|32787" "0.0" \r
"{WK_00000001_MEMORY}RTOSDemoSessionRX600_E1_E20_SYSTEM" "WINDOW" 59422 0 0 "0.27" 252 0 0 350 200 2065 0 "42202|42203|42204|42233|<<separator>>|42206|42205|42230|42229|42207|<<separator>>|42208|42209|42210|49076|42228|42227|<<separator>>|42231|42232|42234|42235|<<separator>>|42211|<<separator>>" "0.0" \r
-"{WK_00000001_OUTPUT}" "WINDOW" 59422 0 0 "1.00" 252 560 340 350 200 18 0 "36756|36757|36758|36759|<<separator>>|36746|36747|<<separator>>|39531|<<separator>>|39500|39534|<<separator>>|36687" "0.0" \r
+"{WK_00000001_OUTPUT}" "WINDOW" 59422 0 0 "1.00" 400 560 340 350 200 18 0 "36756|36757|36758|36759|<<separator>>|36746|36747|<<separator>>|39531|<<separator>>|39500|39534|<<separator>>|36687" "0.0" \r
"{WK_00000001_REGISTERS}RTOSDemoSessionRX600_E1_E20_SYSTEM" "WINDOW" 59421 0 0 "1.00" 413 0 0 350 200 2065 0 "" "0.0" \r
"{WK_00000001_WATCH}RTOSDemoSessionRX600_E1_E20_SYSTEM" "WINDOW" 59421 0 0 "1.00" 441 0 0 853 610 17 0 "32781|32783|<<separator>>|32771|32829|32772|32827|32773|<<separator>>|32786|<<separator>>|32810|32811" "0.0" \r
"{WK_00000002_WORKSPACE}" "WINDOW" 59420 0 0 "1.00" 342 560 340 350 200 18 0 "" "0.0" \r
"{WK_TB00000007_DEBUG}" "TOOLBAR 0" 59419 2 0 "0.00" 0 0 0 0 0 18 0 "" "0.0" \r
"{WK_TB00000008_DEBUGRUN}" "TOOLBAR 0" 59419 2 1 "0.00" 0 0 0 0 0 18 0 "" "0.0" \r
"{WK_TB00000009_VERSIONCONTROL}" "TOOLBAR 0" 59419 1 3 "0.00" 0 0 0 0 0 17 0 "" "0.0" \r
-"{WK_TB00000011_CPU}" "TOOLBAR 0" 59419 2 3 "0.00" 0 0 0 0 0 18 0 "" "0.0" \r
+"{WK_TB00000011_CPU}" "TOOLBAR 0" 59419 2 4 "0.00" 0 0 0 0 0 18 0 "" "0.0" \r
"{WK_TB00000012_MAP}" "TOOLBAR 0" 59419 1 4 "0.00" 0 0 0 0 0 17 0 "" "0.0" \r
-"{WK_TB00000013_SYMBOL}" "TOOLBAR 0" 59419 2 5 "0.00" 0 0 0 0 0 18 0 "" "0.0" \r
+"{WK_TB00000013_SYMBOL}" "TOOLBAR 0" 59419 2 6 "0.00" 0 0 0 0 0 18 0 "" "0.0" \r
"{WK_TB00000014_CODE}" "TOOLBAR 0" 59419 2 9 "0.00" 0 0 0 0 0 17 0 "" "0.0" \r
"{WK_TB00000015_PERFORMANCE}" "TOOLBAR 0" 59419 2 10 "0.00" 0 0 0 0 0 17 0 "" "0.0" \r
"{WK_TB00000016_GRAPHIC}" "TOOLBAR 0" 59419 2 8 "0.00" 0 0 0 0 0 17 0 "" "0.0" \r
"{WK_TB00000026_MACRO}" "TOOLBAR 0" 59419 1 6 "0.00" 0 0 0 0 0 17 0 "" "0.0" \r
"{WK_TB00000027_EVENT}" "TOOLBAR 0" 59419 2 7 "0.00" 0 0 0 0 0 17 0 "" "0.0" \r
"{WK_TB00000028_RTOSDEBUG}" "TOOLBAR 0" 59419 2 2 "0.00" 0 0 0 0 0 18 0 "" "0.0" \r
-"{WK_TB00000029_SYSTEMTOOL}" "TOOLBAR 0" 59419 2 4 "0.00" 0 0 0 0 0 17 0 "" "0.0" \r
+"{WK_TB00000029_SYSTEMTOOL}" "TOOLBAR 0" 59419 2 5 "0.00" 0 0 0 0 0 17 0 "" "0.0" \r
[WINDOW_POSITION_STATE_DATA_VD2]\r
[WINDOW_POSITION_STATE_DATA_VD3]\r
[WINDOW_POSITION_STATE_DATA_VD4]\r
[WINDOW_Z_ORDER]\r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\integer.c" \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\GNU-Files\start.asm" \r
"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\main-full.c" \r
[TARGET_NAME]\r
"RX600 E1/E20 SYSTEM" "" 0 \r
"SBK_TAR_EMUE100|Exception" 1 \r
"SBK_TAR_EMUE100|BreakCondition" 1 \r
"SBK_TAR_EMUE100|TaskID" 1 \r
-"SBK_TAR_EMUE100|PC" 1 \r
"SBK_TAR_EMUE100|ExecutionTime" 1 \r
+"SBK_TAR_EMUE100|PC" 1 \r
[STATUSBAR_DEBUGGER_PANESTATE_VD2]\r
[STATUSBAR_DEBUGGER_PANESTATE_VD3]\r
[STATUSBAR_DEBUGGER_PANESTATE_VD4]\r
configurations to use the same vector table. They are not used in this\r
demo, but linker errors will result if they are not defined. They can\r
be ignored. */\r
-void vT0_1_ISR_Wrapper( void ) {}\r
-void vT2_3_ISR_Wrapper( void ) {}\r
-void vEMAC_ISR_Wrapper( void ) {}\r
-void vTimer2_ISR_Wrapper( void ) {}\r
+void vT0_1_ISR_Handler( void ) {}\r
+void vT2_3_ISR_Handler( void ) {}\r
+void vEMAC_ISR_Handler( void ) {}\r
+void vTimer2_ISR_Handler( void ) {}\r
volatile unsigned long ulHighFrequencyTickCount = 0;
\ No newline at end of file
\r
/*-----------------------------------------------------------*/\r
\r
-void main(void)\r
+int main(void)\r
{\r
extern void HardwareSetup( void );\r
\r
vParTestInitialise();\r
\r
/* Start the reg test tasks which test the context switching mechanism. */\r
- xTaskCreate( prvRegTest1Task, "RegTst1", configMINIMAL_STACK_SIZE, ( void * ) mainREG_TEST_1_PARAMETER, tskIDLE_PRIORITY, NULL );\r
- xTaskCreate( prvRegTest2Task, "RegTst2", configMINIMAL_STACK_SIZE, ( void * ) mainREG_TEST_2_PARAMETER, tskIDLE_PRIORITY, NULL );\r
+ xTaskCreate( prvRegTest1Task, ( signed char * ) "RegTst1", configMINIMAL_STACK_SIZE, ( void * ) mainREG_TEST_1_PARAMETER, tskIDLE_PRIORITY, NULL );\r
+ xTaskCreate( prvRegTest2Task, ( signed char * ) "RegTst2", configMINIMAL_STACK_SIZE, ( void * ) mainREG_TEST_2_PARAMETER, tskIDLE_PRIORITY, NULL );\r
\r
/* The web server task. */\r
- xTaskCreate( vuIP_Task, "uIP", mainuIP_STACK_SIZE, NULL, mainuIP_TASK_PRIORITY, NULL );\r
+ xTaskCreate( vuIP_Task, ( signed char * ) "uIP", mainuIP_STACK_SIZE, NULL, mainuIP_TASK_PRIORITY, NULL );\r
\r
/* Start the check task as described at the top of this file. */\r
- xTaskCreate( prvCheckTask, "Check", configMINIMAL_STACK_SIZE, NULL, mainCHECK_TASK_PRIORITY, NULL );\r
+ xTaskCreate( prvCheckTask, ( signed char * ) "Check", configMINIMAL_STACK_SIZE, NULL, mainCHECK_TASK_PRIORITY, NULL );\r
\r
/* Create the standard demo tasks. */\r
vStartBlockingQueueTasks( mainBLOCK_Q_PRIORITY );\r
running. If we do reach here then it is likely that there was insufficient\r
heap available for the idle task to be created. */\r
for( ;; );\r
+ \r
+ return 0;\r
}\r
/*-----------------------------------------------------------*/\r
\r
extern void stack (void);\r
extern void vTickISR( void );\r
extern void vSoftwareInterruptISR( void );\r
-extern void vT0_1_ISR_Wrapper( void );\r
-extern void vT2_3_ISR_Wrapper( void );\r
-extern void vEMAC_ISR_Wrapper( void );\r
-extern void vTimer2_ISR_Wrapper( void );\r
+extern void vT0_1_ISR_Handler( void );\r
+extern void vT2_3_ISR_Handler( void );\r
+extern void vEMAC_ISR_Handler( void );\r
+extern void vTimer2_ISR_Handler( void );\r
\r
#define FVECT_SECT __attribute__ ((section (".fvectors")))\r
\r
//;0x0074 CMTU0_CMT1\r
(fp)INT_Excep_CMTU0_CMT1,\r
//;0x0078 CMTU1_CMT2\r
- (fp)vTimer2_ISR_Wrapper,\r
+ (fp)vTimer2_ISR_Handler,\r
//;0x007C CMTU1_CMT3\r
(fp)INT_Excep_CMTU1_CMT3,\r
//;0x0080 Ether\r
- (fp)vEMAC_ISR_Wrapper,\r
+ (fp)vEMAC_ISR_Handler,\r
//;0x0084 Reserved\r
(fp)0,\r
//;0x0088 Reserved\r
//;0x02B4 Reserved\r
(fp)0,\r
//;0x02B8 TMR0_CMI0A\r
- (fp)vT0_1_ISR_Wrapper,\r
+ (fp)vT0_1_ISR_Handler,\r
//;0x02BC TMR0_CMI0B\r
(fp)INT_Excep_TMR0_CMI0B,\r
//;0x02C0 TMR0_OV0I\r
//;0x02CC TMR1_OV1I\r
(fp)INT_Excep_TMR1_OV1I,\r
//;0x02D0 TMR2_CMI2A\r
- (fp)vT2_3_ISR_Wrapper,\r
+ (fp)vT2_3_ISR_Handler,\r
//;0x02D4 TMR2_CMI2B\r
(fp)INT_Excep_TMR2_CMI2B,\r
//;0x02D8 TMR2_OV2I\r
static void prvResetEverything( void );\r
\r
/*\r
- * Wrapper and handler for the EMAC peripheral. See the documentation for this\r
+ * Handler for the EMAC peripheral. See the documentation for this\r
* port on http://www.FreeRTOS.org for more information on defining interrupt\r
* handlers.\r
*/\r
-void vEMAC_ISR_Wrapper( void ) __attribute__((naked));\r
-static void vEMAC_ISR_Handler( void ) __attribute__((noinline));\r
+void vEMAC_ISR_Handler( void ) __attribute__((interrupt));\r
\r
/*-----------------------------------------------------------*/\r
\r
}\r
/*-----------------------------------------------------------*/\r
\r
-void vEMAC_ISR_Wrapper( void )\r
-{\r
- /* This is a naked function. See the documentation for this port on\r
- http://www.FreeRTOS.org for more information on writing interrupts. \r
- \r
- /* Save the registers and enable interrupts. */\r
- portENTER_INTERRUPT();\r
- \r
- /* Perform the actual EMAC processing. */\r
- vEMAC_ISR_Handler();\r
- \r
- /* Restore the registers and return. */\r
- portEXIT_INTERRUPT();\r
-}\r
-/*-----------------------------------------------------------*/\r
-\r
-static void vEMAC_ISR_Handler( void )\r
+void vEMAC_ISR_Handler( void )\r
{\r
unsigned long ul = EDMAC.EESR.LONG;\r
long lHigherPriorityTaskWoken = pdFALSE;\r
extern xSemaphoreHandle xEMACSemaphore;\r
static long ulTxEndInts = 0;\r
\r
+ /* Re-enabled interrupts. */\r
+ __asm volatile( "SETPSW I" );\r
+\r
/* Has a Tx end occurred? */\r
if( ul & emacTX_END_INTERRUPT )\r
{\r
[GENERAL_DATA]\r
[BREAKPOINTS]\r
[OPEN_WORKSPACE_FILES]\r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\integer.c" \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\GNU-Files\start.asm" \r
"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\main-full.c" \r
[WORKSPACE_FILE_STATES]\r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\integer.c" -4 -23 1314 626 1 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\GNU-Files\start.asm" 44 44 1130 405 0 1 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\main-full.c" 0 0 1314 608 0 0 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\main-full.c" -4 -23 1314 460 1 0 \r
[LOADED_PROJECTS]\r
"RTOSDemo" \r
[END]\r
\r
/*-----------------------------------------------------------*/\r
\r
-/* Interrupt wrapper and handler in which the jitter is measured. */\r
-void vTimer2_ISR_Wrapper( void ) __attribute__((naked));\r
-static void prvTimer2_ISR_Handler( void ) __attribute__((noinline));\r
+/* Interrupt handler in which the jitter is measured. */\r
+void vTimer2_ISR_Handler( void ) __attribute__((interrupt));\r
\r
/* Stores the value of the maximum recorded jitter between interrupts. This is\r
displayed on one of the served web pages. */\r
}\r
/*-----------------------------------------------------------*/\r
\r
-void vTimer2_ISR_Wrapper( void )\r
-{\r
- portENTER_INTERRUPT();\r
- prvTimer2_ISR_Handler();\r
- portEXIT_INTERRUPT();\r
-}\r
-/*-----------------------------------------------------------*/\r
-\r
-static void prvTimer2_ISR_Handler( void )\r
+void vTimer2_ISR_Handler( void )\r
{\r
volatile unsigned short usCurrentCount;\r
static unsigned short usMaxCount = 0;\r
static unsigned long ulErrorCount = 0UL;\r
\r
- /* We use the timer 1 counter value to measure the clock cycles between\r
+ /* This is the highest priority interrupt in the system, so there is no\r
+ advantage to re-enabling interrupts here.\r
+ \r
+ We use the timer 1 counter value to measure the clock cycles between\r
the timer 0 interrupts. First stop the clock. */\r
CMT.CMSTR1.BIT.STR3 = 0;\r
portNOP();\r
#define tmrTIMER_0_1_FREQUENCY ( 2000UL )\r
#define tmrTIMER_2_3_FREQUENCY ( 2001UL )\r
\r
-/* Wrappers and handlers for the two timers used. See the documentation page\r
+/* Handlers for the two timers used. See the documentation page \r
for this port on http://www.FreeRTOS.org for more information on writing\r
interrupt handlers. */\r
-void vT0_1_ISR_Wrapper( void ) __attribute((naked));\r
-void vT2_3_ISR_Wrapper( void ) __attribute((naked));\r
+void vT0_1_ISR_Handler( void ) __attribute((interrupt));\r
+void vT2_3_ISR_Handler( void ) __attribute((interrupt));\r
\r
void vInitialiseTimerForIntQueueTest( void )\r
{\r
}\r
/*-----------------------------------------------------------*/\r
\r
-void vT0_1_ISR_Wrapper( void )\r
+void vT0_1_ISR_Handler( void )\r
{\r
- /* This is a naked function. This macro saves registers then re-enables\r
- interrupts. See the documentation for htis port on http://www.FreeRTOS.org\r
- for more information on writing interrupts. */\r
- portENTER_INTERRUPT();\r
+ /* Re-enabled interrupts. */\r
+ __asm volatile( "SETPSW I" );\r
\r
/* Call the handler that is part of the common code - this is where the\r
non-portable code ends and the actual test is performed. */\r
portYIELD_FROM_ISR( xFirstTimerHandler() ); \r
-\r
- /* Restore registers, then return. */\r
- portEXIT_INTERRUPT();\r
}\r
/*-----------------------------------------------------------*/\r
\r
-void vT2_3_ISR_Wrapper( void )\r
+void vT2_3_ISR_Handler( void )\r
{\r
- /* This is a naked function. This macro saves registers then re-enables\r
- interrupts. See the documentation for htis port on http://www.FreeRTOS.org\r
- for more information on writing interrupts. */\r
- portENTER_INTERRUPT();\r
+ /* Re-enabled interrupts. */\r
+ __asm volatile( "SETPSW I" );\r
\r
/* Call the handler that is part of the common code - this is where the\r
non-portable code ends and the actual test is performed. */\r
portYIELD_FROM_ISR( xSecondTimerHandler() ); \r
-\r
- /* Restore registers, then return. */\r
- portEXIT_INTERRUPT();\r
}\r
/*-----------------------------------------------------------*/\r
\r
[OPTIONS_Debug_GNU Assembler]\r
"Assembly source file" "00d92b5b0aa5bc10" 3 \r
[OPTIONS_Debug_GNU Compiler]\r
-"C source file" "00c20b5b0aa5bc10" 2 \r
-"C++ source file" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\BlockQ.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\GenQTest.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\IntQueue.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\PollQ.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\QPeek.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\blocktim.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\death.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\flash.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\flop.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\integer.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\recmutex.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\semtest.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\apps\httpd\http-strings.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\apps\httpd\httpd-fs.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\apps\httpd\httpd.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\psock.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\timer.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\uip.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\uip_arp.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\GNU-Files\hwinit.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\GNU-Files\inthandler.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\GNU-Files\start.asm" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\HighFrequencyTimerTest.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\IntQueueTimer.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\ParTest.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\Renesas-Files\hwsetup.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\main-blinky.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\main-full.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\uIP_Task.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\vects.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\webserver\EMAC.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\webserver\httpd-cgi.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\webserver\phy.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Source\list.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Source\portable\GCC\RX600\port.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Source\portable\MemMang\heap_2.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Source\queue.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Source\tasks.c" "00c20b5b0aa5bc10" 2 \r
-"Preprocess Assembly file" "00c20b5b0aa5bc10" 2 \r
+"C source file" "022e4ac89aa5bc10" 2 \r
+"C++ source file" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\BlockQ.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\GenQTest.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\IntQueue.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\PollQ.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\QPeek.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\blocktim.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\death.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\flash.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\flop.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\integer.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\recmutex.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\semtest.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\apps\httpd\http-strings.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\apps\httpd\httpd-fs.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\apps\httpd\httpd.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\psock.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\timer.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\uip.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\uip_arp.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\GNU-Files\hwinit.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\GNU-Files\inthandler.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\GNU-Files\start.asm" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\HighFrequencyTimerTest.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\IntQueueTimer.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\ParTest.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\Renesas-Files\hwsetup.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\main-blinky.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\main-full.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\uIP_Task.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\vects.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\webserver\EMAC.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\webserver\httpd-cgi.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\webserver\phy.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Source\list.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Source\portable\GCC\RX600\port.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Source\portable\MemMang\heap_2.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Source\queue.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Source\tasks.c" "022e4ac89aa5bc10" 2 \r
+"Preprocess Assembly file" "022e4ac89aa5bc10" 2 \r
[OPTIONS_Debug_GNU Library Generator]\r
"Single Shot" "00c20b5b0aa5bc10" 1 \r
[OPTIONS_Debug_GNU Linker]\r
"" 0 \r
"[V|VERSION|2] [B|DOEXTF|1] [S|INCDIR|^"$(TCINSTALL)\rx-elf\lib\gcc\rx-elf\4.5-GNURX_v10.03^"|^"$(CONFIGDIR)^"] [B|RSARCH|1] [B|FIXUPLIBS|1] [S|ARCHIVE|libgcc.a*lib$(PROJECTNAME).a] [S|OUTFORM|BOTH] [B|MFILEGEN|1] [S|PLMFILE|^"$(CONFIGDIR)\$(PROJECTNAME).map^"] [S|OUTFILE|^"$(CONFIGDIR)\$(PROJECTNAME).x^"] [S|GROUPDET|.fvectors|0|0||1|0xFFFFFF80|0|1|0|.fvectors|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.text|0|0||1|0xFFF80000|0|0|0|.text|All-files|<<FEND>>|0|.text.*|All-files|<<FEND>>|0|P|All-files|<<FEND>>|1|etext|<<FEND>>|<<CEND>>|<<GEND>>|.rvectors|0|0||0||0|1|1|_rvectors_start|<<FEND>>|0|.rvectors|All-files|<<FEND>>|1|_rvectors_end|<<FEND>>|<<CEND>>|<<GEND>>|.init|0|0||0||0|0|0|.init|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.fini|0|0||0||0|0|0|.fini|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.got|0|0||0||0|0|0|.got|All-files|<<FEND>>|0|.got.plt|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.rodata|0|0||0||0|0|0|.rodata|All-files|<<FEND>>|0|.rodata.*|All-files|<<FEND>>|0|C_1|All-files|<<FEND>>|0|C_2|All-files|<<FEND>>|0|C|All-files|<<FEND>>|1|_erodata|<<FEND>>|<<CEND>>|<<GEND>>|.eh_frame_hdr|0|0||0||0|0|0|.eh_frame_hdr|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.eh_frame|0|0||0||0|0|0|.eh_frame|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.jcr|0|0||0||0|0|0|.jcr|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.tors|0|0||0||0|0|1|__CTOR_LIST__|<<FEND>>|1|___ctors|<<FEND>>|0|.ctors|All-files|<<FEND>>|1|___ctors_end|<<FEND>>|1|__CTOR_END__|<<FEND>>|1|__DTOR_LIST__|<<FEND>>|1|___dtors|<<FEND>>|0|.dtors|All-files|<<FEND>>|1|___dtors_end|<<FEND>>|1|__DTOR_END__|<<FEND>>|1|_mdata|<<FEND>>|<<CEND>>|<<GEND>>|.istack|0|0||1|0x00017FFC|0|0|1|_istack|<<FEND>>|<<CEND>>|<<GEND>>|.ustack|0|0||1|0x000179BC|0|0|1|_ustack|<<FEND>>|<<CEND>>|<<GEND>>|.data|0|2|_mdata|1|0x00001000|0|0|1|_data|<<FEND>>|0|.data|All-files|<<FEND>>|0|.data.*|All-files|<<FEND>>|0|D|All-files|<<FEND>>|0|D_1|All-files|<<FEND>>|0|D_2|All-files|<<FEND>>|1|_edata|<<FEND>>|<<CEND>>|<<GEND>>|.gcc_exc|0|0||0||0|0|0|.gcc_exc|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.bss|0|0||0||0|0|1|_bss|<<FEND>>|0|.bss|All-files|<<FEND>>|0|.bss.*|All-files|<<FEND>>|0|COMMON|All-files|<<FEND>>|0|B|All-files|<<FEND>>|0|B_1|All-files|<<FEND>>|0|B_2|All-files|<<FEND>>|1|_ebss|<<FEND>>|1|_end|<<FEND>>|<<CEND>>|<<GEND>>|] [B|WONCEU|1] [B|OUTTRAD|1] [S|APPTXT|^"-e _start^"] [S|CPUTYPE|RX600] [S|ENDIAN|LITTLE] [S|CPU|Other] [I|RMINTREGVAL|0] [I|RMMAXCONSTVAL|0] [I|RMMAXVARSVAL|0] [S|PROJECTTYPE|CAPPPROJECT] [B|DOOPTLIB|1] [B|DOPROJBUILT|1]\r
" 4 \r
-"[V|VERSION|2] [S|INCDIR|^"$(TCINSTALL)\rx-elf\rx-elf\optlibinc^"|^"$(TCINSTALL)\rx-elf\lib\gcc\rx-elf\4.5-GNURX_v10.03\optlibinc^"|^"$(PROJDIR)\include^"|^"$(PROJDIR)\..\..\..\Source\include^"|^"$(PROJDIR)\..\..\..\Source\portable\GCC\RX600^"|^"$(PROJDIR)^"|^"$(PROJDIR)\..\..\Common\include^"|^"$(PROJDIR)\..\..\Common\ethernet\FreeTCPIP^"|^"$(PROJDIR)\webserver^"] [S|DEFINES|DEBUG] [S|OUTPUT|OBJECT] [S|OBJPATH|^"$(CONFIGDIR)\$(FILELEAF).o^"] [B|DEBUG|1] [S|DEBUGFT|Native] [I|DEBUGLV|2] [S|ALIGN4|ALL] [B|OPTIMIZE|0] [I|OPTLV|2] [B|NOSTDINC|1] [S|CPUTYPE|RX600] [S|ENDIAN|LITTLE] [S|CPU|Other] [I|RMINTREGVAL|0] [I|RMMAXCONSTVAL|0] [I|RMMAXVARSVAL|0] [S|PROJECTTYPE|CAPPPROJECT] [B|DOOPTLIB|1]\r
+"[V|VERSION|2] [S|INCDIR|^"$(TCINSTALL)\rx-elf\rx-elf\optlibinc^"|^"$(TCINSTALL)\rx-elf\lib\gcc\rx-elf\4.5-GNURX_v10.03\optlibinc^"|^"$(PROJDIR)\include^"|^"$(PROJDIR)\..\..\..\Source\include^"|^"$(PROJDIR)\..\..\..\Source\portable\GCC\RX600^"|^"$(PROJDIR)^"|^"$(PROJDIR)\..\..\Common\include^"|^"$(PROJDIR)\..\..\Common\ethernet\FreeTCPIP^"|^"$(PROJDIR)\webserver^"] [S|DEFINES|DEBUG] [S|OUTPUT|OBJECT] [S|OBJPATH|^"$(CONFIGDIR)\$(FILELEAF).o^"] [B|DEBUG|1] [S|DEBUGFT|Native] [I|DEBUGLV|2] [S|ALIGN4|ALL] [B|OPTIMIZE|0] [I|OPTLV|2] [B|NOSTDINC|1] [S|APPTXT|^"-Wall^"] [S|CPUTYPE|RX600] [S|ENDIAN|LITTLE] [S|CPU|Other] [I|RMINTREGVAL|0] [I|RMMAXCONSTVAL|0] [I|RMMAXVARSVAL|0] [S|PROJECTTYPE|CAPPPROJECT] [B|DOOPTLIB|1]\r
" 2 \r
"[V|VERSION|2] [S|MODE|BUILD/CHANGED] [B|MATH|1] [B|STDIO|1] [B|STDLIB|1] [B|STRING|1] [B|DOPROJBUILT|1] [B|DOOPTLIB|1] [S|OUTPUTPATH|^"$(CONFIGDIR)\lib$(PROJECTNAME).a^"] [B|OPTIMIZE|1] [I|OPTTYPE|0] [S|CPUTYPE|RX600] [S|ENDIAN|LITTLE] [S|CPU|Other] [I|RMINTREGVAL|0] [I|RMMAXCONSTVAL|0] [I|RMMAXVARSVAL|0]\r
" 1 \r
"{5F75FDA0-6FF0-11D5-B7CE-00E029352378}PACtrlViews" "0" \r
"{64753FED-D387-4B8C-A91D-D3419C869C07}C_EVAL_DENORMAL_MODE" "16777216" \r
"{64753FED-D387-4B8C-A91D-D3419C869C07}C_EVAL_ROUND_MODE" "768" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_0" "0000000000004854" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_1" "0000000000003234" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_10" "0000000000002710" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_11" "0000000000003234" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_12" "00000000000045EC" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_0" "0000000000017EF4" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_1" "0000000000000004" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_10" "0000000000000002" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_11" "000000000000000A" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_12" "00000000A5A5A5A5" \r
"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_13" "00000000A5A5A5A5" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_14" "000000000000464E" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_15" "0000000000000006" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_16" "0000000000004854" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_17" "0000000000017FA0" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_18" "0000000000030001" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_19" "00000000FFF87207" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_2" "0000000000004688" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_14" "0000000000000001" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_15" "00000000000000EA" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_16" "000000000000BB68" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_17" "0000000000017EF4" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_18" "0000000004010000" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_19" "00000000FFF851D9" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_2" "000000000000311C" \r
"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_20" "00000000FFF8D818" \r
"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_21" "0000000000000000" \r
"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_22" "0000000000000000" \r
"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_23" "0000000000000000" \r
"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_24" "0000000000000100" \r
"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_25" "1234567887650000" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_3" "00000000000003E8" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_3" "0000000000017F34" \r
"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_4" "0000000000000000" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_5" "00000000A5A5A5A5" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_6" "0000000000004854" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_7" "00000000A5A5A5A5" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_5" "0000000000003120" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_6" "0000000000017EF4" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_7" "0000000000000000" \r
"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_8" "00000000A5A5A5A5" \r
"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_9" "00000000A5A5A5A5" \r
"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_COUNT" "26" \r
"SBK_TAR_EMUE100|Exception" 1 \r
"SBK_TAR_EMUE100|BreakCondition" 1 \r
"SBK_TAR_EMUE100|TaskID" 1 \r
-"SBK_TAR_EMUE100|ExecutionTime" 1 \r
"SBK_TAR_EMUE100|PC" 1 \r
+"SBK_TAR_EMUE100|ExecutionTime" 1 \r
[STATUSBAR_DEBUGGER_PANESTATE_VD2]\r
[STATUSBAR_DEBUGGER_PANESTATE_VD3]\r
[STATUSBAR_DEBUGGER_PANESTATE_VD4]\r
#include "task.h"\r
#include "queue.h"\r
\r
+/* Demo includes. */\r
+#include "ParTest.h"\r
+\r
/* Priorities at which the tasks are created. */\r
#define configQUEUE_RECEIVE_TASK_PRIORITY ( tskIDLE_PRIORITY + 2 )\r
#define configQUEUE_SEND_TASK_PRIORITY ( tskIDLE_PRIORITY + 1 )\r
\r
/*-----------------------------------------------------------*/\r
\r
-void main(void)\r
+int main(void)\r
{\r
extern void HardwareSetup( void );\r
\r
if( xQueue != NULL )\r
{\r
/* Start the two tasks as described at the top of this file. */\r
- xTaskCreate( prvQueueReceiveTask, "Rx", configMINIMAL_STACK_SIZE, NULL, configQUEUE_RECEIVE_TASK_PRIORITY, NULL );\r
- xTaskCreate( prvQueueSendTask, "TX", configMINIMAL_STACK_SIZE, NULL, configQUEUE_SEND_TASK_PRIORITY, NULL );\r
+ xTaskCreate( prvQueueReceiveTask, ( signed char * ) "Rx", configMINIMAL_STACK_SIZE, NULL, configQUEUE_RECEIVE_TASK_PRIORITY, NULL );\r
+ xTaskCreate( prvQueueSendTask, ( signed char * ) "TX", configMINIMAL_STACK_SIZE, NULL, configQUEUE_SEND_TASK_PRIORITY, NULL );\r
\r
/* Start the tasks running. */\r
vTaskStartScheduler();\r
configurations to use the same vector table. They are not used in this\r
demo, but linker errors will result if they are not defined. They can\r
be ignored. */\r
-void vT0_1_ISR_Wrapper( void ) {}\r
-void vT2_3_ISR_Wrapper( void ) {}\r
-void vEMAC_ISR_Wrapper( void ) {}\r
-void vTimer2_ISR_Wrapper( void ) {}\r
+void vT0_1_ISR_Handler( void ) {}\r
+void vT2_3_ISR_Handler( void ) {}\r
+void vEMAC_ISR_Handler( void ) {}\r
+void vTimer2_ISR_Handler( void ) {}\r
volatile unsigned long ulHighFrequencyTickCount = 0;
\ No newline at end of file
\r
/*-----------------------------------------------------------*/\r
\r
-void main(void)\r
+int main(void)\r
{\r
extern void HardwareSetup( void );\r
\r
vParTestInitialise();\r
\r
/* Start the reg test tasks which test the context switching mechanism. */\r
- xTaskCreate( prvRegTest1Task, "RegTst1", configMINIMAL_STACK_SIZE, ( void * ) mainREG_TEST_1_PARAMETER, tskIDLE_PRIORITY, NULL );\r
- xTaskCreate( prvRegTest2Task, "RegTst2", configMINIMAL_STACK_SIZE, ( void * ) mainREG_TEST_2_PARAMETER, tskIDLE_PRIORITY, NULL );\r
+ xTaskCreate( prvRegTest1Task, ( signed char * ) "RegTst1", configMINIMAL_STACK_SIZE, ( void * ) mainREG_TEST_1_PARAMETER, tskIDLE_PRIORITY, NULL );\r
+ xTaskCreate( prvRegTest2Task, ( signed char * ) "RegTst2", configMINIMAL_STACK_SIZE, ( void * ) mainREG_TEST_2_PARAMETER, tskIDLE_PRIORITY, NULL );\r
\r
/* The web server task. */\r
- xTaskCreate( vuIP_Task, "uIP", mainuIP_STACK_SIZE, NULL, mainuIP_TASK_PRIORITY, NULL );\r
+ xTaskCreate( vuIP_Task, ( signed char * ) "uIP", mainuIP_STACK_SIZE, NULL, mainuIP_TASK_PRIORITY, NULL );\r
\r
/* Start the check task as described at the top of this file. */\r
- xTaskCreate( prvCheckTask, "Check", configMINIMAL_STACK_SIZE, NULL, mainCHECK_TASK_PRIORITY, NULL );\r
+ xTaskCreate( prvCheckTask, ( signed char * ) "Check", configMINIMAL_STACK_SIZE, NULL, mainCHECK_TASK_PRIORITY, NULL );\r
\r
/* Create the standard demo tasks. */\r
vStartBlockingQueueTasks( mainBLOCK_Q_PRIORITY );\r
running. If we do reach here then it is likely that there was insufficient\r
heap available for the idle task to be created. */\r
for( ;; );\r
+ \r
+ return 0;\r
}\r
/*-----------------------------------------------------------*/\r
\r
extern void stack (void);\r
extern void vTickISR( void );\r
extern void vSoftwareInterruptISR( void );\r
-extern void vT0_1_ISR_Wrapper( void );\r
-extern void vT2_3_ISR_Wrapper( void );\r
-extern void vEMAC_ISR_Wrapper( void );\r
-extern void vTimer2_ISR_Wrapper( void );\r
+extern void vT0_1_ISR_Handler( void );\r
+extern void vT2_3_ISR_Handler( void );\r
+extern void vEMAC_ISR_Handler( void );\r
+extern void vTimer2_ISR_Handler( void );\r
\r
#define FVECT_SECT __attribute__ ((section (".fvectors")))\r
\r
//;0x0074 CMTU0_CMT1\r
(fp)INT_Excep_CMTU0_CMT1,\r
//;0x0078 CMTU1_CMT2\r
- (fp)vTimer2_ISR_Wrapper,\r
+ (fp)vTimer2_ISR_Handler,\r
//;0x007C CMTU1_CMT3\r
(fp)INT_Excep_CMTU1_CMT3,\r
//;0x0080 Ether\r
- (fp)vEMAC_ISR_Wrapper,\r
+ (fp)vEMAC_ISR_Handler,\r
//;0x0084 Reserved\r
(fp)0,\r
//;0x0088 Reserved\r
//;0x02B4 Reserved\r
(fp)0,\r
//;0x02B8 TMR0_CMI0A\r
- (fp)vT0_1_ISR_Wrapper,\r
+ (fp)vT0_1_ISR_Handler,\r
//;0x02BC TMR0_CMI0B\r
(fp)INT_Excep_TMR0_CMI0B,\r
//;0x02C0 TMR0_OV0I\r
//;0x02CC TMR1_OV1I\r
(fp)INT_Excep_TMR1_OV1I,\r
//;0x02D0 TMR2_CMI2A\r
- (fp)vT2_3_ISR_Wrapper,\r
+ (fp)vT2_3_ISR_Handler,\r
//;0x02D4 TMR2_CMI2B\r
(fp)INT_Excep_TMR2_CMI2B,\r
//;0x02D8 TMR2_OV2I\r
static void prvResetEverything( void );\r
\r
/*\r
- * Wrapper and handler for the EMAC peripheral. See the documentation for this\r
+ * Handler for the EMAC peripheral. See the documentation for this\r
* port on http://www.FreeRTOS.org for more information on defining interrupt\r
* handlers.\r
*/\r
-void vEMAC_ISR_Wrapper( void ) __attribute__((naked));\r
-static void vEMAC_ISR_Handler( void ) __attribute__((noinline));\r
+void vEMAC_ISR_Handler( void ) __attribute__((interrupt));\r
\r
/*-----------------------------------------------------------*/\r
\r
}\r
/*-----------------------------------------------------------*/\r
\r
-void vEMAC_ISR_Wrapper( void )\r
-{\r
- /* This is a naked function. See the documentation for this port on\r
- http://www.FreeRTOS.org for more information on writing interrupts. \r
- \r
- /* Save the registers and enable interrupts. */\r
- portENTER_INTERRUPT();\r
- \r
- /* Perform the actual EMAC processing. */\r
- vEMAC_ISR_Handler();\r
- \r
- /* Restore the registers and return. */\r
- portEXIT_INTERRUPT();\r
-}\r
-/*-----------------------------------------------------------*/\r
-\r
-static void vEMAC_ISR_Handler( void )\r
+void vEMAC_ISR_Handler( void )\r
{\r
unsigned long ul = EDMAC.EESR.LONG;\r
long lHigherPriorityTaskWoken = pdFALSE;\r
extern xSemaphoreHandle xEMACSemaphore;\r
static long ulTxEndInts = 0;\r
\r
+ /* Re-enabled interrupts. */\r
+ __asm volatile( "SETPSW I" );\r
+\r
/* Has a Tx end occurred? */\r
if( ul & emacTX_END_INTERRUPT )\r
{\r