Author Topic: GCC Arm  (Read 6085 times)

0 Members and 1 Guest are viewing this topic.

kryton9

  • Guest
GCC Arm
« on: October 22, 2010, 07:56:01 AM »
Charles, I know your plate is full, but came across this and thought I would put the link up while I had it.
It is for using gcc to compile for Arm based devices. This way O2 can be cross platform in the future.

http://www.gnuarm.com/

I came to that link from this article and links.
http://hackaday.com/2010/09/15/169-linux-tablet-sortof/
http://wiki.chumby.com/mediawiki/index.php/GNU_Toolchain

Charles Pegge

  • Guest
Re: GCC Arm
« Reply #1 on: October 22, 2010, 09:27:01 PM »

Yes emitting GCC source is probably the easiest way to develop software for these ARM based devices. There will be a variety of architectures (cores and ?video devices)  to deal with, so you can't go in at a low level without specialising.

Charles

efgee

  • Guest
Re: GCC Arm
« Reply #2 on: January 03, 2011, 12:37:13 PM »
FreeBasic has also added an GCC emitter into the code (still in the works).

The ingenious thing in their approach is to use gcc as a low level compiler without using C header files (some header files could be missing in some gcc installations - different header files on Windows/Linux etc).

So the beginning of the emitted C file is full of typedefs in order to make it work.

bye

Charles Pegge

  • Guest
Re: GCC Arm
« Reply #3 on: January 04, 2011, 06:11:52 AM »

O2 is already very close to C in terms of syntax comprehension so it won't be too much work to emit C source. But the runtime library will also have to be in C rather than Assembler as it is now. while I am beavering away on the RTL, I will explore how to do this efficiently - perhaps most of the work can be passed to the C run-time for memory management and string/float conversions.

This would take more a BCX translation approach rather than go for a C emulation of Assembler.

Charles



JRS

  • Guest
Re: GCC Arm
« Reply #4 on: January 04, 2011, 09:05:41 AM »
Charles,

You can't be everything to everyone. I think your current direction of a lighting fast, easy to use, JIT Basic compiler is more than anyone could ask for. The ability to use C .h files, dynamic and static link is more than most Basic projects could dream for. You have a big heart and you're a miracle worker. State your goals and milestones and allow for minor alterations along the way. It's really easy to get side track from a cool request a user may have.


John

efgee

  • Guest
Re: GCC Arm
« Reply #5 on: January 04, 2011, 11:07:53 AM »
Charles,

You can't be everything to everyone. I think your current direction of a lighting fast, easy to use, JIT Basic compiler is more than anyone could ask for. The ability to use C .h files, dynamic and static link is more than most Basic projects could dream for. You have a big heart and you're a miracle worker. State your goals and milestones and allow for minor alterations along the way.

I concur...

It's really easy to get side track from a cool request a user may have.

Exactly...
Charles, what is it with this GFX-Surfaces playing around anyhow?
Go back to work!

Just joking!  ;D

Do whatever makes you happy!
Bye


Charles Pegge

  • Guest
Re: GCC Arm
« Reply #6 on: January 04, 2011, 01:46:10 PM »

I'm really thinking about mobile devices where the hardware architecture is likely to be so diverse or made deliberately opaque so it becomes infeasible to produce native code. I have been gradually weaving C syntax into the compiler architecture for some time. It has cost little in additional code but often requires rearranging procedures and careful testing - so it is a gradual process.

But I have not developed a semicolon spraying device yet :)

Charles

JRS

  • Guest
Re: GCC Arm
« Reply #7 on: January 04, 2011, 02:12:55 PM »
Quote
But I have not developed a semicolon spraying device yet

Embedded single quotes and tabs in data are my button.  ;)

efgee

  • Guest
Re: GCC Arm
« Reply #8 on: January 04, 2011, 02:27:25 PM »
But I have not developed a semicolon spraying device yet :)

Thats good, I dislike the semicolon very much (except as a start of comment symbol...)