IRC logs for #openrisc Sunday, 2015-04-12

--- Log opened Sun Apr 12 00:00:03 2015
-!- Netsplit *.net <-> *.split quits: trevorman05:53
-!- trevorman_ is now known as trevorman05:53
stekernI bet this annotated disasm of a 1.2 kickrom is better commented than the original source was:17:36
amswhat do peopl euse for synthesizing here?18:48
olofkMostly the FPGA vendors own tools for Xilinx and Altera (XST/Vivado and Quartus). The other vendors use a licensed version of Synplify19:00
olofkstekern: There's quite a lot in that ROM. Didn't expect to find string routines and a built-in debugger19:08
amsolofk: so the non-free stuff?19:18
stekernolofk: they had 256k to waste ;)19:42
bandvigams: AFAIK, it is possible to use so-called "WebPack Edition" license (free beer) for small size FPGA19:48
amsso non-free.19:49
stekernams: I think the only free synthesis tool worth mentioning is:
amsyeah, i kinda figured that out.. just learnt that icarus dropped synthesis support19:52
bandvigams: not as free word. BTW, I don't know open source synthesis tools anyway. Only RTL analisys ones (GHDL, Icarus Verilog, verilator ...)19:52
amsbandvig: sorry, i asked about free software, not open source, or non-free software.19:52
bandvigstekern: thanks for remark19:53
stekernwell, "progress"...20:06
olofkams: LowRISC has some projects thorugh GSoC that aims to provide a FLOSS toolchain for the samll iCE40 FPGAs, but for anything else, we are probably many years away from something usable20:13
olofkBut Yosys is indeed very interesting. I always assumed that it would be possible to make a decent synthesizer20:14
olofkThe commercial ones do have an advantage by knowing a lot more about the internal timing parameters, so I don't think a FLOSS alternative will ever be as good20:15
daliasstekern, doing some overhaul in musl and looking for some quick or1k asm help :)21:33
stekerndalias: sure21:33
daliasi want to load the address of _DYNAMIC using only pc-relative computations21:33
daliaswhat's the right way to do that21:33
daliasbtw what i'm doing is getting rid of the dynamic linker's start.s :) now crt_arch.h will also provide the entry point for dynamic linker21:35
stekernhmm, but isn't that what we do?21:36
daliasfor crt1.o21:37
daliasthe same code (crt_arch.h) used to generate that will also serve to generate the dynamic linker's entry point21:37
dalias__reloc_self() (from reloc.h) is also gone now21:39
daliasit's replaced by a portable version of the same thing that's shared by all targets21:39
stekernok, sounds nice21:40
daliasand the same code (replacing entry point and __reloc_self) is eventually also going to be the rcrt1.o for static-PIE binaries :)21:42
stekernbut can't you use the method that's currently used in start.S?21:43
daliasoh yes21:53
daliasit's there already :)21:53
stekernlooking at that again, doing the way powerpc does it looks slightly nicer though ;)21:53
daliasyes. the problem is gas doesn't support generating relocations for expressions like _DYNAMIC-2b on most archs tho :(21:54
daliasdespite that it's a general pattern that's always available21:54
daliasdoes it support it for or1k?21:54
stekernnot sure, but I get a faint recollection of some problem in that file, so maybe I did try that first and it didn't21:55
daliasthat's the method i like most21:55
daliasi use it on x86 now too:21:55
dalias"       call 1f \n"21:56
dalias"1:     addl $_DYNAMIC-1b,(%esp) \n"21:56
dalias(and it's already in the right argument slot on the stack :)21:56
stekernnice ;)21:56
daliasstekern, this kind of thing is what i mean when i say risc-v is way ahead of or1k in terms of designing the ISA for the actual needs of code/compilers :)21:59
daliasstekern, i don't have an or1k toolchain handy; can you confirm whether the 2: .word _DYNAMIC-2b (or similar) method works?22:07
stekernthat seems to work22:21
stekernwith reservation for logic errors, I only compile tested it22:22
daliasbtw jor1k also confirmed that _DYNAMIC-2b works :-p22:23
daliasthanks tho22:23
stekernjor1k is handy for that of stuff ;)22:24
daliasdoes this look ok?
daliasbtw i suspect the 2: and -2b can be replaced by no-label and -.22:32
stekernme too22:33
daliasyep that's cleaner imo22:33
daliasfewer gratuitous labels22:33
stekernenough progress for tonight:
stekernI swapped out the or1200 with mor1kx too23:44
--- Log closed Mon Apr 13 00:00:04 2015

Generated by 2.15.2 by Marius Gedminas - find it at!