dexen has quit [Ping timeout: 260 seconds]
orivej has quit [Remote host closed the connection]
orivej has joined #picolisp
Blukunfando has joined #picolisp
orivej has quit [Ping timeout: 258 seconds]
rob_w has joined #picolisp
mtsd has joined #picolisp
mtsd has quit [Quit: Leaving]
orivej has joined #picolisp
orivej has quit [Ping timeout: 240 seconds]
mtsd has joined #picolisp
mtsd has quit [Quit: Leaving]
mtsd has joined #picolisp
dexen has joined #picolisp
mtsd has quit [Ping timeout: 256 seconds]
inara has quit [Quit: Leaving]
inara has joined #picolisp
orivej has joined #picolisp
mtsd has joined #picolisp
mtsd has quit [Client Quit]
mtsd has joined #picolisp
mtsd has quit [Client Quit]
mtsd has joined #picolisp
DKordic has joined #picolisp
Blukunfando has quit [Ping timeout: 260 seconds]
mtsd has quit [Quit: leaving]
<
tankf33der>
testing pil21 under llvm11.
<
Regenaxer>
I'm still stuck with DB sync
<
Regenaxer>
Experimenting in REPL now with multiple psh's
<
tankf33der>
failed.
<
Regenaxer>
Conflict
<
Regenaxer>
Strange, pil32 did also have a global 'Termio'
<
Regenaxer>
and pil64 too
<
Regenaxer>
though in pil64 it was not .globl
<
Regenaxer>
Do you know where that comes from?
<
Regenaxer>
Which library?
<
Regenaxer>
Or is it a conflict within pil21 internally?
<
Regenaxer>
'nm' on linked libs
<
Regenaxer>
Seems that only lib.bc is linked here
<
Regenaxer>
llvm-link -o picolisp.bc base.bc lib.bc
<
tankf33der>
i think problem it is in lib.c and base.ll
<
Regenaxer>
in base.ll it is '@Termio'
<
Regenaxer>
@Termio = global i8* null
<
Regenaxer>
OK, the '@' is removed:
<
Regenaxer>
~/pil21/bin nm picolisp |grep Termio
<
Regenaxer>
000000000005205c B OrgTermio
<
Regenaxer>
0000000000052018 B Termio
<
Regenaxer>
So why multiply defined?
<
Regenaxer>
Does it need other link options?
<
tankf33der>
base llvm-link finds Termio in base.bc and lib.bc
<
tankf33der>
so newer version is more strict.
<
Regenaxer>
Looks like
<
tankf33der>
pil64 ok on linux kernel 5.9
<
Regenaxer>
It is normal that both base.bc and lib.bc declare such globals as "external"
<
Regenaxer>
And why only Termio?
<
Regenaxer>
There are many more such globals
<
tankf33der>
i've modified in lib.c Termio -> Termio1
<
tankf33der>
and all compiled.
<
tankf33der>
running test bucket.
<
tankf33der>
so far so good.
<
Regenaxer>
Why only Termio?
<
Regenaxer>
It must be somewhere else
<
Regenaxer>
why not OrgTermio?
<
Regenaxer>
and many many others
<
Regenaxer>
hmm, wait
<
Regenaxer>
Termio is
*not* external in base.ll
<
Regenaxer>
it is just global
<
Regenaxer>
There is something different
<
Regenaxer>
let me check
<
Regenaxer>
I have an idea
<
Regenaxer>
has to do with the value
<
Regenaxer>
in src/lib/llvm.l
<
Regenaxer>
No time now, have a video conf
<
Regenaxer>
must be line 268 in src/lib/llvm.l
<
Regenaxer>
(unless (and Val (not *Shared)) "external ")
<
Regenaxer>
Why 'Val' check?
<
Regenaxer>
anyway, bbl
<
tankf33der>
pass passed.
<
tankf33der>
so pil21 works in llvm11.
<
tankf33der>
in general.
<
beneroth>
great, thanks for testing tankf33der!
rob_w has quit [Quit: Leaving]
<
Regenaxer>
I try what happens if I remove 'Val'
<
Regenaxer>
doesn't work
<
Regenaxer>
So I need to declare Termio as external in lib.c
<
Regenaxer>
Now links here again
<
Regenaxer>
Only Termio
<
Regenaxer>
I release
<
Regenaxer>
tankf33der, can you check?
<
Regenaxer>
If it works, we must watch if that happens with other globals again
<
Regenaxer>
I don't exactly understand the reason
<
Regenaxer>
It has to do with uninitialized and initialized globals
<
tankf33der>
i cant now, only after 5h
<
Regenaxer>
they have to be declared differently
<
Regenaxer>
ok, no hurry
<
Regenaxer>
I still need to struggle with DB sync
<
Regenaxer>
... but have no idea :(
<
Regenaxer>
I change Termio once more. Better idea
<
Regenaxer>
yes, that's it. I think it will build now
dexen_ has joined #picolisp
dexen has quit [Ping timeout: 260 seconds]
<
tankf33der>
llvm10 ok. llvm11 after several hours.
<
Regenaxer>
Does 11 now accept Termio?
<
tankf33der>
will check llvm11 after several hours.
<
Regenaxer>
ah, I misunderstood
<
Regenaxer>
"llvm10 ok. llvm11 after several hours" I thougght llvm11 was ok after the test ran several hours
<
tankf33der>
cant be, compilation takes 7secs.
<
Regenaxer>
yeah, but "llvm10 ok" sounds like a test run
Blukunfando has joined #picolisp
tankf33der has quit [Ping timeout: 256 seconds]
jibanes has quit [Ping timeout: 264 seconds]
jibanes has joined #picolisp
tankf33der has joined #picolisp
<
tankf33der>
compilation only tested
<
tankf33der>
both llvm 10 and 11 are ok
<
Regenaxer>
Great!!
orivej has quit [Ping timeout: 265 seconds]
orivej has joined #picolisp
dexen_ has quit [Read error: Connection reset by peer]
dexen has joined #picolisp
pointfree has quit [Ping timeout: 246 seconds]
jibanes has quit [Ping timeout: 260 seconds]
tankf33der has quit [Ping timeout: 272 seconds]
michelp has quit [Ping timeout: 272 seconds]
tankf33der has joined #picolisp
jibanes has joined #picolisp
pointfree has joined #picolisp
michelp has joined #picolisp