stekern | even easier since Guiseppe already have started on it | 07:08 |
---|---|---|
-!- mbuf` is now known as mbuf | 11:53 | |
stekern | huh, what am I doing wrong when stage1 building of the linux toolchain is trying to link in crt0? | 11:54 |
stekern | looking at gcc/config/or1k/or1k.h the only guard seems to be !shared for that | 11:55 |
stekern | ah, it was in libquadmath and libatomic it was failing, those are probably not needed to build a stage1 gcc... | 12:36 |
stekern | so, tweaking Giueseppes code a bit, got pointer acquiring works | 12:42 |
juliusb | stekern: can you help me out with getting up to speed with the latest and greatest tool chain we have? | 13:21 |
juliusb | the orbuild thing\ | 13:21 |
juliusb | does that pull in all of pgavin's work on the tool chain without the delay slot? | 13:21 |
juliusb | i want to have a tool chain to start developing the "ristretto" mor1kx pipeline, ie. basically espresso but without delay slot | 13:21 |
stekern | should pull it in | 13:25 |
stekern | it should be easy to compile manually as well | 13:25 |
juliusb | ok | 13:25 |
stekern | you need or1k-src and or1k-gcc (or llvm-or1k =)) | 13:25 |
juliusb | it'll download it, won't it? | 13:26 |
stekern | orbuild, I think so | 13:26 |
juliusb | hmm maye i'll just do it manually | 13:26 |
juliusb | orbuild appears to have fallen over early :( | 13:27 |
stekern | my .md-fu is poor :( | 13:27 |
stekern | I can paste my cheat-sheet | 13:27 |
juliusb | ?? | 13:27 |
juliusb | .md is the gcc machine description thing? | 13:27 |
stekern | I presume you're mostly interested in or1k-elf? | 13:28 |
juliusb | oh | 13:28 |
juliusb | no just want to have a tool chain to build binaries which won't have the delay slot instructions | 13:28 |
stekern | so that's or1k-elf, no? | 13:28 |
juliusb | umm, could be I guess | 13:28 |
stekern | (the .md-fu comment was completely out of context ;)) | 13:28 |
juliusb | (ya, it threw me :P) | 13:29 |
juliusb | ummm, yes or1k-elf may be the name of that tool chain, been a while since I played with it | 13:29 |
stekern | http://pastebin.com/m50ECwjv | 13:32 |
juliusb | awesome, where did you get that from? | 13:32 |
stekern | trial-and-error | 13:32 |
stekern | =) | 13:32 |
juliusb | :) | 13:32 |
stekern | and some help from pgavin | 13:32 |
juliusb | so you go, before gcc, before newlib, after gcc, after newlib? | 13:33 |
stekern | yup | 13:33 |
stekern | not sure how necessary the after newlib step is, but doesn't hurt | 13:33 |
juliusb | excellent will give it a go | 13:33 |
juliusb | does the tool chain contain a switch to enable/disable the delay slot stuff? | 13:35 |
juliusb | or this one will certainly be without delay slot? | 13:35 |
stekern | yeah, -mdelay and -mno-delay | 13:35 |
stekern | and then there is that -mcompat-delay | 13:35 |
stekern | if you want no-delay as default you configure with target=or1knd-elf | 13:35 |
juliusb | sweet | 13:36 |
juliusb | ok, i recall options such as this from the mailing list discussions but as I never played with it at the time, it's not something which stuck with me | 13:36 |
stekern | I mostly remember it since I implemented the -m options in clang | 13:39 |
juliusb | will give it a go and let you know how I get on :) | 13:39 |
juliusb | hehe | 13:39 |
stekern | good luck | 13:41 |
juliusb | http://pastebin.com/HpdHguFM | 13:44 |
juliusb | reckon I should disable -Werror? | 13:44 |
juliusb | my machine's gcc is gcc (Ubuntu/Linaro 4.5.2-8ubuntu4) 4.5.2 | 13:45 |
juliusb | probably would be better if CGEN added the u suffix to the line in question | 13:47 |
juliusb | yep, adding u to the values in question fixed the warning | 13:48 |
stekern | yeah, I remember that, it's an enum that is used as maskfield, right? | 13:49 |
juliusb | yep | 13:49 |
juliusb | high up one | 13:49 |
juliusb | probably like 0xc0000000 | 13:49 |
stekern | you only see it on 32-bit | 13:49 |
juliusb | but CGEN writes it out as decimal | 13:49 |
juliusb | ahh ok | 13:49 |
stekern | if you have some permanent fix for it in mind, post it | 13:50 |
juliusb | well that file is generated by CGEN, so it'd have to be something there | 13:50 |
juliusb | so it'd be something along the liens of a CGEN patch which detected values like that which might trip up 32-bit machines and added suffixes | 13:51 |
juliusb | sorry, bit of a newb question, I do make and then make install after each stage right? | 13:52 |
stekern | ah, yes | 13:53 |
juliusb | cool, it's a fair thing to assume, but was just double checking | 13:53 |
stekern | olofk asked the same thing ;) | 13:54 |
stekern | I'll answer the same thing as I answered to him, as internal notes for my self, I usually remember how to write make && make install =) | 13:55 |
stekern | hmm wonder how gcc distinguishes between symbolrefs with internal linkage and external... | 13:59 |
juliusb | you've got me! | 14:02 |
stekern | I think I figured it out | 14:10 |
stekern | looks like all symbols are accessed through the .got, even ones with local linkage | 14:11 |
stekern | that might be wasteful, depending how fast/slow mem-access is | 14:13 |
stekern | since then you'll need 1 extra load to get the address out of the .got | 14:13 |
stekern | otoh, to load the immediate as a constant offset + got pointer you'll ned a movhi, ori, add sequence | 14:15 |
stekern | s/immediate/symbol | 14:15 |
stekern | apart from that, everything looks pretty good so far, only part missing is emitting function calls through plt | 14:30 |
stekern | bah, how hard can it be to express "if -fpic have been given on command-line, add a plt() to the l.jal symref so it becomes l.jal plt(symref)" | 16:29 |
stekern | lack of md-fu cripples me | 16:29 |
stekern | nice, now it ICE on me... at least my hacks are probably used then... | 16:54 |
juliusb | :) | 17:02 |
juliusb | OK, I've had an offer from RTE to host the event at their offices. They're happy and will even provide coffee and beer, and just want a bit of a plug | 17:16 |
juliusb | (where event = OpenRISC Project Meeting) | 17:17 |
juliusb | but, in terms of providing a plug, I'm not really sure what we can do | 17:18 |
juliusb | I mean, put up some thanks on the wiki (I'm sure ORSoC would love that :-/) and mention it in the presentations (I'd like to somehow capture those, audio and/or video | 17:19 |
juliusb | maybe standardise the slide set and have their logo on it | 17:19 |
juliusb | somewhere in there at least | 17:20 |
juliusb | stekern: so that tool chain just compiled but it looks like it's not dropping the delay slot stuff | 17:26 |
juliusb | is non-delay-slot on by default? | 17:26 |
juliusb | ah awesome | 17:27 |
juliusb | just had to add -mno-delay | 17:27 |
juliusb | and...it used a whoel heap of different libs! | 17:27 |
stekern | I've never tested the -mno-delay | 17:28 |
juliusb | so a helloworld is 0xe58c of .text in delay-slot mode, -mno-delay it's 0xdc90 | 17:29 |
juliusb | statically, linked of course | 17:29 |
stekern | que? | 17:29 |
juliusb | so about 58Kbytes of .text section with delay slot, 56KB without delay slot | 17:30 |
juliusb | i'm saying your overall code size is smaller without delay slot | 17:31 |
juliusb | i'm also willing to bet with a small pipeline, you're execution time is quicker too | 17:31 |
_franck_ | how far is the RTE place from Arlanda airport ? | 17:59 |
_franck_ | 40Km | 18:03 |
stekern | where is it? | 18:06 |
_franck_ | Realtime Embedded AB, Realtime Embedded AB, Sveavägen 64, 111 34 Stockholm, Suède | 18:07 |
_franck_ | google map knows it | 18:07 |
stekern | ah ok, so in city | 18:07 |
stekern | arlanda isn't exactly in the center of sthlm, so anything is about 40km from it | 18:08 |
juliusb | the RTE offices are in the center of Stockholm | 18:13 |
juliusb | yes, Arlanda is ages away, but that's not the question that's interesting | 18:13 |
juliusb | the question that is interesting is how far is the RTE offices from decent accommodation and bars with good beer, and luckily the answer is: not far at all :) | 18:14 |
_franck_ | you're right but if I loose 2 hour coming from the airport my stay will be short | 18:15 |
_franck_ | I need to check flight hour with attention :) | 18:16 |
juliusb | there's a train which takes 20 minutes from Arlanda to the the center of the city | 18:21 |
juliusb | The Arlanda Express | 18:21 |
_franck_ | ok great | 18:21 |
juliusb | or there's a bus, Flygbussarna | 18:21 |
juliusb | that takes about an hour | 18:21 |
stekern | or taxi, i believe those are about 40 euro | 18:25 |
jeremybennett | Anyone have a view on hotels in Stockholm. Hotels.com has reasonable rates at Hotell Dialog, Mornington Hotel, Jumbo Stay and Hotel Appelviken | 18:45 |
juliusb | Jumbo Stay is in the 747 out at Arlanda right? You won't want to stay all the way out there! | 18:55 |
juliusb | (Although it would be cool) | 18:55 |
juliusb | Scandic Norra Bantorget is coming up as well priced and well located | 18:58 |
juliusb | Scandic Anglais, too | 18:59 |
jeremybennett | Where are you looking. I can't see them on hotels.com | 19:00 |
juliusb | Kayak.com | 19:00 |
juliusb | The Dialog hotel is way out, too | 19:00 |
juliusb | you can search stockholm and then set it to only show within 2 miles of the city center | 19:03 |
juliusb | staying out in the suburbs of stockholm can be annoying because if the metro stops you have to pay fora taxi which will be just as expensive as a night at a closer in hotel :) | 19:03 |
juliusb | scandic anglais is showing up as 52 quid for 2 nights on kayak | 19:04 |
juliusb | and it's very close to the RTE place and in town | 19:04 |
jeremybennett | Is that really for 2 nights. Or is it per person per night? | 19:05 |
juliusb | I thought 2 nights, but let me check | 19:05 |
jeremybennett | When I click on the link the price I'm offered is £235 | 19:06 |
jeremybennett | Ah - at the bottom is a cabin room for £116.95. Still more than £52 * 2 | 19:07 |
juliusb | mmm, I saw something saying "total" at 59 for it but you're right, when you go to the site they want more than 100 | 19:07 |
jeremybennett | I've not used Kayak before | 19:07 |
juliusb | the ability to search by distance is good | 19:07 |
juliusb | the map feature is also very good | 19:07 |
juliusb | Hotel Vanadis is on Sveavagen (same street as RTE) isn't too bad | 19:08 |
juliusb | shared bathroom on the cheapest room, though | 19:08 |
juliusb | still not cheap though, they want at least 100 pounds out of you for anything resembling a real hotel for those 2 nights | 19:11 |
jeremybennett | And no window - so basically a cupboard with a bed in it! | 19:11 |
juliusb | rent in Stockholm was always a killer, hotels, it seems also pass on the cost | 19:11 |
jeremybennett | Yes - I realized that. | 19:11 |
jeremybennett | The hotels cost a lot more than the flights! | 19:11 |
jeremybennett | Even makes Cambridge look reasonable! | 19:12 |
jeremybennett | What do you know about the Metro Hotel? | 19:13 |
juliusb | As in the hotel with a website at www.metrohotel.se? | 19:16 |
juliusb | Not too bad, a 15 minute walk from a metro | 19:18 |
jeremybennett | It also appears to be known as the Hotel Vastberga | 19:18 |
juliusb | Yes, just to make matters simple! | 19:18 |
jeremybennett | Hotels.com said it was 2.4 miles from the centre, but Google maps says it is 7.5km | 19:18 |
juliusb | that part of Stockholm is a little bit industrial | 19:19 |
jeremybennett | Presumably why it is cheaper. | 19:19 |
juliusb | Although, I would say Stockholm is a very safe city | 19:19 |
juliusb | so I wouldn't really worry about safety, just inconvenience | 19:19 |
jeremybennett | The other cheap hotels were in Bromma | 19:19 |
juliusb | Bromma isn't too far, actually | 19:20 |
juliusb | it's generally well connected by busses | 19:20 |
jeremybennett | My thought as well. | 19:20 |
jeremybennett | http://www.stockholmbrommahotel.se/welcome.aspx is an alternative 9km from RTE | 19:23 |
juliusb | the real question is how well connected it is via public transport | 19:35 |
juliusb | http://sl.se/en/Visitor/Plan-your-journey/ | 19:36 |
juliusb | put the addresses in there and see what it proposes | 19:36 |
jeremybennett | Yes I had found that | 19:37 |
juliusb | stekern: you said you've not got much experience with the or1k no-delay-slot compiler right? | 20:08 |
juliusb | i think I've come across a bug | 20:09 |
juliusb | whenc ompiling C files with -mno-delay, the object file says : | 20:10 |
juliusb | int.o: file format elf32-or1k | 20:10 |
juliusb | int.o | 20:10 |
juliusb | architecture: or1knd, flags 0x00000011: | 20:10 |
juliusb | HAS_RELOC, HAS_SYMS | 20:10 |
juliusb | but a .S file compiled (both with or1k-elf-gcc and -mno-delay somewhere) gives: | 20:10 |
juliusb | mmu.o: file format elf32-or1k | 20:10 |
juliusb | mmu.o | 20:10 |
juliusb | architecture: or1k, flags 0x00000010: | 20:10 |
juliusb | HAS_SYMS | 20:10 |
juliusb | so somehow it's a different architecture, and linknig doesn't work | 20:10 |
juliusb | something for the mailing list I guess | 20:12 |
stekern | hmm, you're calling as with gcc as shell? | 20:33 |
juliusb | yeah | 20:35 |
stekern | I'm not sure how that works in gcc, but I imagine that should produce the same result as when it assembles the .S gcc produce | 20:37 |
juliusb | mmm, you have to put a .nodelay in the .S file | 20:43 |
juliusb | for it to be recognised as a or1knd architecture | 20:43 |
juliusb | well, for it to be labeled as or1knd architecture | 20:44 |
juliusb | gcc appears to add that into the generated assembly of a C file | 20:44 |
juliusb | there must be a more elegant way of getting that into .S files | 20:46 |
juliusb | than doing something like | 20:46 |
juliusb | #ifdef OR1K_NO_DELAY | 20:46 |
juliusb | .nodelay | 20:46 |
juliusb | #endif | 20:46 |
juliusb | how did it work for the assembly bits of newlib I wonder? | 20:46 |
* juliusb inspects... | 20:46 | |
juliusb | ahhhh | 20:47 |
juliusb | newlib's or1k-asm.h header does this | 20:47 |
juliusb | #if defined(__OR1K_NODELAY__) | 20:48 |
juliusb | ... | 20:48 |
juliusb | .nodelay | 20:48 |
juliusb | So I've been hacking on the ORPSoC/mor1kx-dev-env sw lib | 20:48 |
juliusb | looks like I'll just include this guy | 20:48 |
juliusb | perfect | 20:49 |
juliusb | works | 20:49 |
juliusb | so in .S files, best to #include <or1k-asm.h> | 20:49 |
juliusb | and compile with the gcc wrapper program | 20:49 |
stekern | ah, ok | 21:35 |
stekern | clang doesn't emit those defines | 21:35 |
stekern | (because I haven't found out how to emit defines when parsing commandline options, if even possible) | 21:36 |
Generated by irclog2html.py 2.15.2 by Marius Gedminas - find it at mg.pov.lt!