[Tinyos-devel] nesC 1.2.6 available from sourceforge

David Gay david.e.gay at intel.com
Wed Jun 14 09:05:59 PDT 2006


Download it from
http://sourceforge.net/project/showfiles.php?group_id=56288

Note that the 1.2.5 release was removed as it did not compile under cygwin.

Changes in nesC 1.2.6
=====================
- external types now support bitfields (big-endian only - mixing bit-field
   endianness within a struct would be extremely confusing and/or tricky)
- -conly option to just compile to C
- better struct/union layout code, which requires a slightly more detailed
   target machine description (see src/machine.h)
- #pragma statements are saved and dumped at the end of the generated C code
   (if you or your compiler uses #pragma, you'll probably have to move these
   somewhere else; however, this cannot be done without understanding of
   the pragma itself; hence the nesC compiler leaves this process to a
   user-supplied tool)
- bug fixes

Changes in nesC 1.2.5
=====================
- nescc-mig now generates C (ncg has supported C since 1.1.2)
- add __builtin_offsetof keyword to make recent gcc's happy,
   and update the gcc-specific asm syntax to reflect recent
   gcc changes
- allow types defined in interface files to be used immediately in generic
   interface arguments (e.g., interface Timer<TMilli>, where TMilli is
   defined in Timer.nc)
- updates to automatic inlining - code should be slightly smaller
- @spontaneous() attribute is automatically added to the __nesc_XXX
   functions used by the compiler
- atomic optimisation (experimental): if you specify -fnesc-optimize-atomic,
   two optimisations are performed:
   o outermost atomics call __nesc_disable/enable_interrupt, which can 
assume
     that interrupts are initially enabled
   o "simple" atomic statements have no overhead (interrupts are not 
disabled)
     simple atomic statements are those:
     - with no accesses to shared state
     - or, at most one access to one byte of shared state
- bug fixes

David Gay


More information about the Tinyos-devel mailing list