SDCC 3.1.0 Release - roybaer/sdcc-wiki GitHub Wiki

SDCC 3.1.0 release is dedicated to the memory of Dennis M. Ritchie, father of the C programming language.

SDCC 3.1.0 is planned to be released on 2011-11-26.

SDCC 3.1.0 Release schedule

Delivery Planned date Actual date
SDCC 3.1.0 RC1 2011-11-05 2011-11-06
SDCC 3.1.0 RC2 2011-11-19 2011-11-18
SDCC 3.1.0 RC3 Not planned 2011-11-22
SDCC 3.1.0 Release 2011-11-26 2011-11-27

See the SDCC 3.1.0 Release Plan.

SDCC 3.1.0 Tasks

If you think there is a functionality that should be included or a bug that needs to be fixed in the SDCC 3.1.0 release, please submit it to the Feature Requests at http://sourceforge.net/tracker/?group_id=599&atid=350599 or Bugs at http://sourceforge.net/tracker/?group_id=599&atid=100599 and copy Request ID and Summary fields to the following table, where:

Request ID: Request ID from Feature Requests or Bugs
Summary: Summary from Feature Requests or Bugs
Proposed by: Who proposed the feature or bug fix
Time: Estimate of the implementation time
Developer: Who will implement the feature or bug fix
Status: Current status


Request ID Summary Proposed by Time Developer Status
2870755 Accessing the stack spth POSTPONED
1477149 local variable globally visible spth maarten DONE
sdas merge with asxxxx 5.0 borutr quite some borutr POSTPONED
change sdcc libraries license to GPL+LE borutr too much borutr DONE; see Files and Licenses
review and merge support for cs08 target by Gary Osborn borutr POSTPONED
2933889 _Bool won't work in structs spth spth QUASIDONE
2932819 _Bool data type doesn't work spth spth DONE
2934292 Arrays of function pointers to functions returning bool spth spth QUASIDONE
2942343 Initialization of non-constant arrays broken. spth POSTPONED
3031197 Cast lost in assignment to bitfield spth spth DONE
1710546 struct: aggregate assignment spth POSTPONED
3299577 Z80 multiplication code bug spth spth DONE
3190029 Undefined identifier spth maarten DONE
3325223 Wrong code generated for ASSERT spth spth DONE
3311538 Add new pic18f2xk22/pic18f4xk22 family borutr borutr DONE
674638 structures cannot be passed as function parameters spth POSTPONED
3073647 Initializers for objects that have static storage duration spth POSTPONED
3400613 Performance and code size regression spth POSTPONED
3403429 Broken loop optimization spth POSTPONED
3420365 mcs51 3.05 6901: model huge broken maarten maarten DONE

SDCC 3.1.0 Feature List

There is always a problem to create a list of new features when a new SDCC release is announced. The following list is an attempt to create such a list "on the fly". Every time a new feature which is visible or interesting for the SDCC users is implemented, it should be added to the following list.

  • include/pic, non-free/include/pic, lib/pic, non-free/lib/pic renamed to */pic14
  • implemented --fomit-frame-pointer for mcs51
  • support for use of sdcc in z88dk (--reserve-regs-iy and --no-optsdcc-in-asm options; __smallc calling convention)
  • new register allocator in the z80 and gbz80 ports (optimal when using --opt-code-size and a sufficiently high value for --max-allocs-per-node for the z80 port)
  • C99 designated initializers
  • added strxfrm() and strcoll() functions; strerror() is the only string handling function still missing
  • added support for pic18f2xk22/pic18f4xk22 family (requires gputils > 0.14.0 and --enable-new-pics configure flag)
  • added support for enhanced core pic14 devices (requires gputils > 0.14.0 and --enable-new-pics configure flag)
  • setjmp() / longjmp() for the z80 port
  • _Bool / bool for the hc08, pic16 and pic14 ports
  • sdcpp synchronized with GNU cpp 4.6.1
  • z180 port
  • very basic (no integer constants, multiplication, division, shifts or use as return value) support for data types long long, unsigned long long, int_fast64_t, int_least64_t, int64_t, uint_fast64_t, uint_least64_t, uint64_t in the z80, z180, r2k and gbz80 ports
  • r2k port for the Rabbit 2000 and Rabbit 3000
⚠️ **GitHub.com Fallback** ⚠️