Hey fellas, I'm new here. Welcome me
So, I've been working lately on porting TCC (Tiny C Compiler) to support AVR targets, and I must say, that's one hell of a compiler.
Here's a Github repo if you want to monitor the progress or check the code yourself https://github.com/mohamed-anwar/avr-tcc
What's working for now:
- Supported data types: char [1 Byte], (short) int [2 Bytes], pointer (partially)
- Basic arithmetic (addition/subtraction) on integer data types.
- Function calling (using register passed arguments only, no support for stack arguments yet)
The problem with TCC is that it's heavily oriented around 32-bit architectures, porting it to support 8-bit arch. is a stretch ... also it's a one pass compiler so achieving optimization would be tricky (I might have to write a 2nd pass optimizer, but that's for later).
Anyway contributions, suggestions and ideas are all welcome.