git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@759 35acf78f-673a-0410-8e92-d51de3d6d3f4
This commit is contained in:
parent
1a18435fcb
commit
d70f848b08
|
@ -12,6 +12,29 @@
|
|||
# To rebuild project do "make clean" and "make all".
|
||||
#
|
||||
|
||||
##############################################################################################
|
||||
# OS, compiler and demo options
|
||||
|
||||
# Compiler options here
|
||||
OPT = -O2 -ggdb -fomit-frame-pointer -mabi=apcs-gnu -falign-functions=16
|
||||
|
||||
# Enable this if you want the linker to remove unused code and data
|
||||
LINK_GC = yes
|
||||
|
||||
# Enable this if you really want to use the STM FWLib. ChibiOS/RT does not
|
||||
# require it and does not support the library except for this Makefile option.
|
||||
USE_FWLIB = no
|
||||
|
||||
# Enable register caching optimization. This option greatly improves both
|
||||
# code size and execution speed but is incompatible with libraries compiled
|
||||
# without the very same options. The register R7 becomes a global variable
|
||||
# and MUST NOT be used anywhere in the code.
|
||||
USE_CURRP_CACHING = no
|
||||
|
||||
#
|
||||
# End of OS and demo options
|
||||
##############################################################################################
|
||||
|
||||
##############################################################################################
|
||||
# Start of default section
|
||||
#
|
||||
|
@ -28,13 +51,6 @@ BIN = $(CP) -O binary
|
|||
|
||||
MCU = cortex-m3
|
||||
|
||||
# Enable this if you want the linker to remove unused code and data
|
||||
LINK_GC = yes
|
||||
|
||||
# Enable this if you really want to use the STM FWLib. ChibiOS/RT does not
|
||||
# require it and does not support the library except for this Makefile option.
|
||||
USE_FWLIB = no
|
||||
|
||||
# List all default C defines here, like -D_DEBUG=1
|
||||
DDEFS =
|
||||
|
||||
|
@ -103,23 +119,6 @@ ULIBDIR =
|
|||
# List all user libraries here
|
||||
ULIBS =
|
||||
|
||||
# Common options here
|
||||
# NOTE: -ffixed-r7 is only needed if you enabled CH_CURRP_REGISTER_CACHE in
|
||||
# chconf.h.
|
||||
# NOTE: -falign-functions=16 may improve the performance, not always, but
|
||||
# increases the code size.
|
||||
# NOTE: Add -fno-strict-aliasing if you are tired to see all the warnings
|
||||
# generated by the STM FWLib, this option increases code size too.
|
||||
OPT = -O2 -ggdb -fomit-frame-pointer -mabi=apcs-gnu
|
||||
#OPT += -ffixed-r7
|
||||
OPT += -falign-functions=16
|
||||
|
||||
ifeq ($(USE_FWLIB),yes)
|
||||
# The thing generates a lot of aliasing warnings, this disables an optimization
|
||||
# and the warning disappears, the code is a bit larger however.
|
||||
OPT += -fno-strict-aliasing
|
||||
endif
|
||||
|
||||
# Define warning options here
|
||||
WARN = -Wall -Wstrict-prototypes
|
||||
|
||||
|
@ -127,6 +126,16 @@ WARN = -Wall -Wstrict-prototypes
|
|||
# End of user defines
|
||||
##############################################################################################
|
||||
|
||||
ifeq ($(USE_CURRP_CACHING),yes)
|
||||
OPT += -ffixed-r7 -DCH_CURRP_REGISTER_CACHE='"r7"'
|
||||
endif
|
||||
|
||||
ifeq ($(USE_FWLIB),yes)
|
||||
# The thing generates a lot of aliasing warnings, this disables an optimization
|
||||
# and the warning disappears, the code is a bit larger however.
|
||||
OPT += -fno-strict-aliasing
|
||||
endif
|
||||
|
||||
ifeq ($(LINK_GC),yes)
|
||||
OPT += -ffunction-sections -fdata-sections
|
||||
endif
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
***************************************************************************
|
||||
Kernel: ChibiOS/RT 1.0.0 final
|
||||
Kernel: ChibiOS/RT 1.1.0 unstable
|
||||
Compiler: GCC 4.3.2 (YAGARTO 28.09.2008)
|
||||
Options: -O2 -fomit-frame-pointer -mabi=apcs-gnu -falign-functions=16
|
||||
Settings: SYSCLK=72, ACR=0x12 (2 wait states)
|
||||
|
@ -40,7 +40,7 @@ Settings: SYSCLK=72, ACR=0x12 (2 wait states)
|
|||
--- Result: SUCCESS
|
||||
---------------------------------------------------------------------------
|
||||
--- Test Case 12 (Heap, allocation and fragmentation test)
|
||||
--- Size : 17284 bytes, not fragmented
|
||||
--- Size : 17296 bytes, not fragmented
|
||||
--- Result: SUCCESS
|
||||
---------------------------------------------------------------------------
|
||||
--- Test Case 13 (Memory Pools, allocation and enqueuing test)
|
||||
|
@ -53,7 +53,7 @@ Settings: SYSCLK=72, ACR=0x12 (2 wait states)
|
|||
--- Result: SUCCESS
|
||||
---------------------------------------------------------------------------
|
||||
--- Test Case 16 (Benchmark, context switch #1, optimal)
|
||||
--- Score : 216994 msgs/S, 433988 ctxswc/S
|
||||
--- Score : 216993 msgs/S, 433986 ctxswc/S
|
||||
--- Result: SUCCESS
|
||||
---------------------------------------------------------------------------
|
||||
--- Test Case 17 (Benchmark, context switch #2, empty ready list)
|
||||
|
@ -65,11 +65,11 @@ Settings: SYSCLK=72, ACR=0x12 (2 wait states)
|
|||
--- Result: SUCCESS
|
||||
---------------------------------------------------------------------------
|
||||
--- Test Case 19 (Benchmark, threads creation/termination, worst case)
|
||||
--- Score : 161766 threads/S
|
||||
--- Score : 164734 threads/S
|
||||
--- Result: SUCCESS
|
||||
---------------------------------------------------------------------------
|
||||
--- Test Case 20 (Benchmark, threads creation/termination, optimal)
|
||||
--- Score : 205805 threads/S
|
||||
--- Score : 210634 threads/S
|
||||
--- Result: SUCCESS
|
||||
---------------------------------------------------------------------------
|
||||
--- Test Case 21 (Benchmark, mass reschedulation, 5 threads)
|
||||
|
|
|
@ -0,0 +1,132 @@
|
|||
Platform : ARM Cortex-M3
|
||||
OS Setup : Full kernel
|
||||
Compiler : arm-elf-gcc (GCC) 4.3.2
|
||||
Options : -O2 -mthumb
|
||||
Kernel Size = 5648
|
||||
|
||||
Platform : ARM Cortex-M3
|
||||
OS Setup : Minimal kernel
|
||||
Compiler : arm-elf-gcc (GCC) 4.3.2
|
||||
Options : -O2 -mthumb
|
||||
Kernel Size = 1296
|
||||
|
||||
Platform : ARM Cortex-M3
|
||||
OS Setup : Full kernel
|
||||
Compiler : arm-elf-gcc (GCC) 4.3.2
|
||||
Options : -Os -mthumb
|
||||
Kernel Size = 5408
|
||||
|
||||
Platform : ARM Cortex-M3
|
||||
OS Setup : Minimal kernel
|
||||
Compiler : arm-elf-gcc (GCC) 4.3.2
|
||||
Options : -Os -mthumb
|
||||
Kernel Size = 1344
|
||||
|
||||
Platform : ARM Cortex-M3
|
||||
OS Setup : Full kernel
|
||||
Compiler : arm-elf-gcc (GCC) 4.3.2
|
||||
Options : -Os -mthumb -ffixed-r7 -DCH_CURRP_REGISTER_CACHE=\"r7\"
|
||||
Kernel Size = 5056
|
||||
|
||||
Platform : ARM Cortex-M3
|
||||
OS Setup : Minimal kernel
|
||||
Compiler : arm-elf-gcc (GCC) 4.3.2
|
||||
Options : -Os -mthumb -ffixed-r7 -DCH_CURRP_REGISTER_CACHE=\"r7\"
|
||||
Kernel Size = 1264
|
||||
|
||||
Platform : ARM7TDMI (ARM mode)
|
||||
OS Setup : Full kernel
|
||||
Compiler : arm-elf-gcc (GCC) 4.3.2
|
||||
Options : -O2
|
||||
Kernel Size = 8192
|
||||
|
||||
Platform : ARM7TDMI (ARM mode)
|
||||
OS Setup : Minimal kernel
|
||||
Compiler : arm-elf-gcc (GCC) 4.3.2
|
||||
Options : -O2
|
||||
Kernel Size = 2000
|
||||
|
||||
Platform : ARM7TDMI (ARM mode)
|
||||
OS Setup : Full kernel
|
||||
Compiler : arm-elf-gcc (GCC) 4.3.2
|
||||
Options : -Os
|
||||
Kernel Size = 7808
|
||||
|
||||
Platform : ARM7TDMI (ARM mode)
|
||||
OS Setup : Minimal kernel
|
||||
Compiler : arm-elf-gcc (GCC) 4.3.2
|
||||
Options : -Os
|
||||
Kernel Size = 1904
|
||||
|
||||
Platform : ARM7TDMI (ARM mode)
|
||||
OS Setup : Full kernel
|
||||
Compiler : arm-elf-gcc (GCC) 4.3.2
|
||||
Options : -Os -ffixed-r7 -DCH_CURRP_REGISTER_CACHE=\"r7\"
|
||||
Kernel Size = 7328
|
||||
|
||||
Platform : ARM7TDMI (ARM mode)
|
||||
OS Setup : Minimal kernel
|
||||
Compiler : arm-elf-gcc (GCC) 4.3.2
|
||||
Options : -Os -ffixed-r7 -DCH_CURRP_REGISTER_CACHE=\"r7\"
|
||||
Kernel Size = 1856
|
||||
|
||||
Platform : ARM7TDMI (THUMB mode)
|
||||
OS Setup : Full kernel
|
||||
Compiler : arm-elf-gcc (GCC) 4.3.2
|
||||
Options : -O2 -mthumb -DTHUMB -DTHUMB_PRESENT -DTHUMB_NO_INTERWORKING
|
||||
Kernel Size = 5376
|
||||
|
||||
Platform : ARM7TDMI (THUMB mode)
|
||||
OS Setup : Minimal kernel
|
||||
Compiler : arm-elf-gcc (GCC) 4.3.2
|
||||
Options : -O2 -mthumb -DTHUMB -DTHUMB_PRESENT -DTHUMB_NO_INTERWORKING
|
||||
Kernel Size = 1376
|
||||
|
||||
Platform : ARM7TDMI (THUMB mode)
|
||||
OS Setup : Full kernel
|
||||
Compiler : arm-elf-gcc (GCC) 4.3.2
|
||||
Options : -Os -mthumb -DTHUMB -DTHUMB_PRESENT -DTHUMB_NO_INTERWORKING
|
||||
Kernel Size = 5152
|
||||
|
||||
Platform : ARM7TDMI (THUMB mode)
|
||||
OS Setup : Minimal kernel
|
||||
Compiler : arm-elf-gcc (GCC) 4.3.2
|
||||
Options : -Os -mthumb -DTHUMB -DTHUMB_PRESENT -DTHUMB_NO_INTERWORKING
|
||||
Kernel Size = 1344
|
||||
|
||||
Platform : ARM7TDMI (THUMB mode)
|
||||
OS Setup : Full kernel
|
||||
Compiler : arm-elf-gcc (GCC) 4.3.2
|
||||
Options : -Os -mthumb -ffixed-r7 -DCH_CURRP_REGISTER_CACHE=\"r7\" -DTHUMB -DTHUMB_PRESENT -DTHUMB_NO_INTERWORKING
|
||||
Kernel Size = 4832
|
||||
|
||||
Platform : ARM7TDMI (THUMB mode)
|
||||
OS Setup : Minimal kernel
|
||||
Compiler : arm-elf-gcc (GCC) 4.3.2
|
||||
Options : -Os -mthumb -ffixed-r7 -DCH_CURRP_REGISTER_CACHE=\"r7\" -DTHUMB -DTHUMB_PRESENT -DTHUMB_NO_INTERWORKING
|
||||
Kernel Size = 1280
|
||||
|
||||
Platform : MSP430
|
||||
OS Setup : Full kernel
|
||||
Compiler : msp430-gcc (GCC) 3.2.3
|
||||
Options : -O2
|
||||
Kernel Size = 5696
|
||||
|
||||
Platform : MSP430
|
||||
OS Setup : Minimal kernel
|
||||
Compiler : msp430-gcc (GCC) 3.2.3
|
||||
Options : -O2
|
||||
Kernel Size = 1136
|
||||
|
||||
Platform : MSP430
|
||||
OS Setup : Full kernel
|
||||
Compiler : msp430-gcc (GCC) 3.2.3
|
||||
Options : -Os
|
||||
Kernel Size = 5680
|
||||
|
||||
Platform : MSP430
|
||||
OS Setup : Minimal kernel
|
||||
Compiler : msp430-gcc (GCC) 3.2.3
|
||||
Options : -Os
|
||||
Kernel Size = 1136
|
||||
|
|
@ -129,6 +129,7 @@ Win32-MinGW - ChibiOS/RT simulator and demo into a WIN32 process,
|
|||
- Articles and notes previously in the wiki now merged in the general
|
||||
documentation and updated, the wiki entries are obsolete and will be removed.
|
||||
- New application notes and articles added.
|
||||
- Added kernel size metrics to the test reports.
|
||||
- Removed the inclusion graph from the documentation because the little
|
||||
info they add and the size of all the images. It is possible to configure
|
||||
Doxygen to have them again (and more graph types).
|
||||
|
|
Loading…
Reference in New Issue