Tool | First Released | Last Changes |
---|---|---|
gcc | 4.1 | svn "trunk" |
binutils | 2.17 | cvs "head" |
newlib | 1.14 | cvs "head" |
gdb | 6.5 | cvs "head" |
$(srcdir)/configure --target=m32c-elf
gcc option | gas option | MCU family | pointer size | data space | code space |
---|---|---|---|---|---|
-mcpu=r8c | --m16c | R8C | 16 bits | 64 Kb | 64 Kb |
-mcpu=m16c | --m16c | M16C | 16 bits | 64 Kb | 1 Mb |
-mcpu=m32cm | --m32c | M16C/8x | 24 bits | 16 Mb | 16 Mb |
-mcpu=m32c | --m32c | M32C | 24 bits | 16 Mb | 16 Mb |
Note that int is 16 bits, long is 32 bits, and size_t (i.e. max size of structures and arrays) is 16 bits (because making it bigger would result in much slower code).
I have a comprehensive testsuite for m32c GAS which tests about 844,000 individual opcode patterns. A summary of the results is available, so you can see which opcodes aren't yet supported. (it's not yet part of the distributed testsuite because the exploded sources are over 20 Mb)
sfr-ren-to-gcc renesas/sfr_r81B.h > gcc/sfr_r8c_1b.h
r8c: | R8C/Tiny |
m16c: | M16C/10 M16C/20 M16C/Tiny M16C/30 M16C/60 |
m32cm: | M16C/80 |
m32c: | M32C/80 M32C/90 |
Copyright 2006, 2007, 2008 Red Hat Inc.
The information found here should not be considered an official statement by Red Hat Inc.
All opinions expressed here are my own.