Oxygen Basic

Programming => Tools => Topic started by: kryton9 on October 22, 2010, 07:56:01 AM

Title: GCC Arm
Post by: kryton9 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
Title: Re: GCC Arm
Post by: Charles Pegge 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
Title: Re: GCC Arm
Post by: efgee 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
Title: Re: GCC Arm
Post by: Charles Pegge 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


Title: Re: GCC Arm
Post by: JRS 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
Title: Re: GCC Arm
Post by: efgee 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

Title: Re: GCC Arm
Post by: Charles Pegge 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
Title: Re: GCC Arm
Post by: JRS 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.  ;)
Title: Re: GCC Arm
Post by: efgee 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...)