Customer Care Center
1-800-321-4567

Phyton C Compiler for ARM and Cortex Microcontrollers

CMC (CodeMaster C Compiler) generates extremely compact code for Cortex-M devices!

Supported processor architectures and licensing:
ARM, Thumb® and Thumb®-2 generation modes:
    • Efficient support for ARM/Thumb mode switching
    • Mixing ARM and Thumb code in the same source file
    • Libraries for all the modes, including the interworking mode
Language implementation:
    • Full conformity to ANSI/ISO 9899-1990 standard
    • Some extensions conforming to the ISO 9899-1999 standard, in particular:
      • C++ stile comments
      • Macros with variable number of arguments
      • Syntax of enumerations and initializer lists
    • Special extensions for embedded software development:
      • Binary constants
      • Automatic calls of special functions in prologue/epilogue
      • Assigning variables to absolute addresses
      • Control for static variables initialization
    • Platform-dependent extensions for implementation of the:
      • Interrupt handlers
      • Monitor functions
    • Set of intrinsic functions providing access to low-level processor resources and generation of special instructions
    • Built-in inline assembler
Code optimizations:
    • Generates extremely compact and fast executing code
    • Significantly more compact code than one generated by the GCC GCC compiler
    • Allowed optimizations include (but not limited to):
      • Efficient allocation of local and temporary variables
      • Optimization of high-level intermediate representation
      • Platform-dependent low-level optimizations
Libraries:
    • Standard C library (free-standing implementation)
    • IEEE-754 compliant single and double precision floating-point arithmetic library
    • Header files with description of special function registers of most popular target microcontrollers
Assember features:
    • Allows assigning C types to variables and functions
    • Supports conditional assembly
    • Provides strict operand type checking
    • Includes extensive set of 32-bit arithmetic and logical operators
    • Supports local names (labels) in functions and macros
    • Powerful macro capabilities
    • Easy and safe integration with the compiler and CodeMaster debuggers
Compatibility:
    • EABI support, in particular:
      • Placement of base and aggregate data types
      • Convention on registers and stack usage
      • Calling convention
      • Operations with volatile objects
    • Generation of ELF/DWARF output format
    • CMSIS support
    • Support of some non-standard C language extensions implemented by leading compiler manufacturers
    • Extended symbol information for source code debugging
Stand Alone CMC compiler kit
    • Intended to be used by third parties in their IDEs.
    • Includes:
      • Executable files of the CMC compiler, CMA assembler and CMLINK linker
      • Include files
      • Libraries
      • User's guides and integration guidelines
      • Stand alone license manager and updater
    • Can be executed in the command line mode or launced from the IDE
    • Subject of an OEM agreement between Phyton and an integrater

Go Back