seninha has quit [Quit: Leaving]
mario-goulart has quit [Ping timeout: 252 seconds]
genpaku has quit [Remote host closed the connection]
genpaku has joined #picolisp
seninha has joined #picolisp
<
abu[m]>
'clang' does not seem to have an option for opaque pointers
<
abu[m]>
clang --help
<
abu[m]>
*If* I pass -opaque-pointers then I get the exact same .s code as without
<
abu[m]>
$ clang -opaque-pointers -S tst.c -emit-llvm -o - |vip
<
abu[m]>
But clang also does not complain if I pass -opaque-pointers
<
abu[m]>
This outputs normal typed pointers
<
tankf33der>
show me tst.c
<
tankf33der>
clang -Xclang -opaque-pointers ...
<
abu[m]>
I see no 'ptr' but still i32*
<
abu[m]>
Also if I don't use a global pointer,.
<
abu[m]>
This is still all typed pointers: "store i32* @X, i32** %2, align 8"
<
abu[m]>
Or I misunderstand the whole issue
<
abu[m]>
I thought "ptr" must be used instead of types like "i32*"
<
tankf33der>
check how opt -S -opaque-pointers converts to pointers
<
tankf33der>
right?
<
abu[m]>
yes. is this llvm15?
<
abu[m]>
I have llvm14, there the opaque option seems to be ignored
<
tankf33der>
llvm14
<
abu[m]>
Ah, sorry! I did not see your "opt"
<
abu[m]>
ok, then clang does not need this option
<
abu[m]>
And: I don't need to change my code, right?
<
tankf33der>
push forward to know
<
abu[m]>
Cause what src/lib/llvm.l does is the same as what clang does, generate .ll
<
abu[m]>
i.e. before 'opt'
<
abu[m]>
Is it on llvm15 also so that clang does not output "ptr"?
<
tankf33der>
Will check in 5min
<
abu[m]>
I'm on a walk
<
abu[m]>
This would mean that opaque pointers do not matter in the frontend. It is only opt (and perhaps the backend) which changes
<
abu[m]>
Pil is like clang a frontend
<
tankf33der>
output from llvm15
<
abu[m]>
clang? or opt?
<
abu[m]>
seems clang
<
abu[m]>
ok, so the frontend must change >= 15 too
<
tankf33der>
without opt
<
abu[m]>
We don't need that option for clang then
<
abu[m]>
It outputs the correct mode according to the version
seninha has quit [Quit: Leaving]
<
abu[m]>
I will change Makefile again. Remove $(OPQ) from the clang call
<
abu[m]>
And I wonder wether $(OPQ) is necessary for LLC and LINK
<
abu[m]>
In case of clang it is even harmful
<
abu[m]>
because "clang -opaque-pointers" interprets it as "-o" to a file "paque-pointers"
<
abu[m]>
Hmm, so only 'opt' and 'llc' document that option, but it is "--opaque-pointers" and not "-opaque-pointers"!
<
abu[m]>
I released an updated Makefile and give up. I postpone the issue until the situation is more clear.
kced has joined #picolisp
aw- has quit [Ping timeout: 260 seconds]
aw- has joined #picolisp
chexum_ has quit [Ping timeout: 258 seconds]
chexum has joined #picolisp
chexum has quit [Quit: No Ping reply in 180 seconds.]
chexum has joined #picolisp
seninha has joined #picolisp
seninha has quit [Quit: Leaving]