beneroth changed the topic of #picolisp to: PicoLisp language | The scalpel of software development | Channel Log: https://libera.irclog.whitequark.org/picolisp | Check www.picolisp.com for more information
seninha has joined #picolisp
seninha has quit [Remote host closed the connection]
rob_w has joined #picolisp
hrberg has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
hrberg has joined #picolisp
kced has quit [Read error: Connection reset by peer]
kced has joined #picolisp
<abu[m]> tankf33derhere?
<abu[m]> I checked the opaque pointers issue again. I think I should not change @src/lib/llvm.l at all. It needs and depends on all these pointer types.
<abu[m]> But I think the whole problem can be solved simply by calling 'opt' with the "-opaque-pointers" option, right?
<abu[m]> So we can keep the current base.ll (it needs to be also in the distro), and convert to opaque only in the build.
<abu[m]> Only @src/Makefile has to be changed, checking the LLVM version.
<abu[m]> OR: Is it so that 'opt' in llvm >= 14 *cannot* do that any more?
<abu[m]> Then I would use 'sed' to change all pointer types to 'ptr', e.g. with something like: sed 's/\bi[1368][246]*[()]*\*/ptr/g'
rob_w has quit [Remote host closed the connection]
chexum_ has quit [Remote host closed the connection]
chexum has joined #picolisp
seninha has joined #picolisp
<tankf33der> Here
<tankf33der> i will play with opt in llvm15
<abu[m]> Good! In 14 it works. The big question is wether 16 still accepts typed pointers in base.ll. If not, let's use the above 'sed' pipe in Makefile.
seninha has quit [Quit: Leaving]
<tankf33der> I can access and setup llvm16 too
<abu[m]> That would be interesting
<tankf33der> I hope it is mature enought
<abu[m]> Because the docs say that 16 will support *only* opaque pointers
<tankf33der> this is correct
<abu[m]> Doesn't have to be complete yet. Just to see if we understood correctly
<tankf33der> doing tests with opt
<tankf33der> successfully built with only "opt -opaque-pointers" change
<tankf33der> tests passed.
<tankf33der> now trying to install llvm16
<abu[m]> Wuff! That's good news!
<abu[m]> So we can probably assume that it will work in >= 17 too.
<abu[m]> This means we need only to change Makefile, right? Set up the global ASM properly depending on LLVM version.
<abu[m]> And in the distro there are the current *.ll files, with typed pointers.
<tankf33der> llvm16 is not usable, failed and too old
<tankf33der> 09.sep.
<abu[m]> Ok, let's wait until it stabilizes
<tankf33der> and this snapshot has opaque pointers disabled
<tankf33der> so
<abu[m]> I see. So it may change again.
<tankf33der> you should detect llvm-config --version and modify opt arguments for llvm >= 15
<tankf33der> right?
<abu[m]> Yes, that's the idea
<tankf33der> ok
<tankf33der> afk.
<abu[m]> *if* the -opaque-pointers is deprecated in the future, we modify *.ll before calling opt
<abu[m]> replacing all iXX* types with "ptr"
<abu[m]> Let's see ☺
<tankf33der> Ok
chexum has quit [Remote host closed the connection]
chexum has joined #picolisp
<tankf33der> my variation, tested.
<abu[m]> Perfect!
<abu[m]> I keep the patch, let's add it after the next pil release
<abu[m]> "ASM +=" is a good idea
<abu[m]> This works in LLVM 15 and 16?
<tankf33der> Tested on llvm15
<tankf33der> and 14
<abu[m]> 👍 - and not 16 because it is not yet usable?
<tankf33der> Yeap
<abu[m]> Thanks
chexum has quit [Remote host closed the connection]
chexum has joined #picolisp
alexshendi has joined #picolisp
alexshe78 has joined #picolisp
alexshendi has quit [Ping timeout: 244 seconds]
chexum has quit [Quit: No Ping reply in 180 seconds.]
chexum has joined #picolisp
alexshendi has joined #picolisp
alexshe78 has quit [Ping timeout: 264 seconds]
alexshendi has quit [Quit: -a- Connection Timed Out]
alexshendi has joined #picolisp
alexshendi has quit [Quit: -a- Connection Timed Out]
alexshendi has joined #picolisp
alexshendi has quit [Quit: -a- Connection Timed Out]
alexshendi has joined #picolisp