World: r3wp
[Red] Red language group
older newer | first last |
Dockimbel 11-Mar-2011 [285] | I guess you're looking at IA32.r/emit-path code? |
Steeve 11-Mar-2011 [286] | yes |
Dockimbel 11-Mar-2011 [287] | I need to factorize the code first, there's some redundancies, but it's also untested code. So, once it will work ok, I'll clean it up. |
Steeve 11-Mar-2011 [288] | Go Go Gadget |
Dockimbel 11-Mar-2011 [289x2] | :-) |
Btw, you've opened an issue ticket too...good opportunity for me to test github's tickets management options. | |
Steeve 11-Mar-2011 [291] | Hm... I did nothing though. |
Dockimbel 11-Mar-2011 [292x2] | It seems a ticket is opened for each pull request... |
I guess it's automated. | |
Steeve 11-Mar-2011 [294] | I just click ramdomly like a foul |
Dockimbel 11-Mar-2011 [295] | lol |
Steeve 11-Mar-2011 [296] | But how can I resync my fork, I wonder... I don't see your modification |
Dockimbel 11-Mar-2011 [297x2] | I guess you need to pull changes from my repo (dockimbel/Red) |
This is my commit: https://github.com/dockimbel/Red/commit/e9c6e78cf77ed388b688681d463a9960952f5a79 | |
Steeve 11-Mar-2011 [299x2] | got it it's in the 'fork queue' |
But I can't apply my previous commits, they failed. I just applied your commit and now it's ok. So it's ok. | |
Dockimbel 11-Mar-2011 [301] | Are you using a Git client or just github's web UI? |
Steeve 11-Mar-2011 [302x3] | Both of them. TortoiseGit on my PC |
I made a clone of my fork on my PC | |
I only forgot, that I must commit the both | |
Andreas 11-Mar-2011 [305x2] | steeve, locally do a "git pull --rebase" from doc's repo |
(that's the effect of one shortcoming of github's fork queue) | |
Dockimbel 11-Mar-2011 [307] | Good to know! |
Dockimbel 13-Mar-2011 [308] | Thanks to Andreas' help, we now have a first experimental support for Linux/ELF for Red/System. It's still very limited (basically just being able to call a system function with an argument), but it's a good start. It should be extended in the next days to support compilation of the hello.reds demo script. |
Oldes 13-Mar-2011 [309] | Nice. So you will not postpone it? |
Dockimbel 13-Mar-2011 [310x3] | Nope, seems that a ELF support large enough to run the demo script could be doable tomorrow or in the next days. |
Btw, Red/System is now able to do syscalls directly, bypassing the libc dependency. | |
We'll see if this can hold long enough to avoid calling the libc at all. | |
Kaj 13-Mar-2011 [313] | Will that be optional? The libc interface is actually much more portable than kernel interfaces |
Andreas 13-Mar-2011 [314x3] | yes |
libc support will come as soon as we get support for a loader done | |
but syscall support is nice (and lean) on it's own :) | |
Kaj 13-Mar-2011 [317x2] | It is |
So can't Red load dynamic libraries yet? | |
Andreas 13-Mar-2011 [319] | not on linux/elf, no |
Kaj 13-Mar-2011 [320] | Ah |
Dockimbel 13-Mar-2011 [321x2] | Kaj: I had a quick look at *BSD syscalls, there are pretty much the same as Linux (at least for the most used ones). The calling convention is different thought, but can be supported by one or two more lines of code in Red/System emitter. |
When I see how Carl fights with various libc versions...I wonder if syscalls are not an easier path even if it can have some minor porting costs here and there? Anyway, a libc mapping will be possible soon, so all options are open. | |
Kaj 13-Mar-2011 [323x2] | I'm not sure the current R3 versions for different GLibC versions make any difference. It's R2 that has problems, but usually with the higher level X libraries |
The syscall calling convention on Syllable is also different. It doesn't use SYSENTER/SYSEXIT yet | |
Dockimbel 13-Mar-2011 [325x2] | Red/System uses currently software interrupts for making syscalls, I'll add support for SYSENTER/SYSEXIT in the next days. |
When I look at R2/Core downloads list, it stills has to ship in two flavors for Linux, isn't it because of libc issues? | |
Kaj 13-Mar-2011 [327] | Yes, but R3 is much better isolated |
Dockimbel 13-Mar-2011 [328] | Anyway, we'll make sure Red runs ok on Syllable, that's the least I could do. ;-) |
Kaj 13-Mar-2011 [329x4] | OK :-) |
The issue R2 currently has with old Linux systems is with floating point. That's in the math library, part of GLibC, not the kernel, so there's no way around it unless you use a completely different implementation | |
I'm not denying the libc interface is problematic on GNU systems, I'm just saying there's probably no alternative with fewer problems :-( | |
The best strategy is to keep the interface as small as possible, like R3 | |
BrianH 14-Mar-2011 [333x2] | That's more of a Red problem though. Red/System doesn't have floating point, just integers. |
But it's always good to look to the future :) | |
older newer | first last |