libera/#clasp - IRC Chatlog
Search
11:56:40
yitzi
Looks like LLVM22 has issues with tagged pointers and memory moving? I get a seg fault on the initial attempted resize of characterinfo in lisp startup. https://p.blueridgedebate.com/?1349c0d17630f038#41mXJB3Bk3TnmKjazwcU7jkKMvRd4NgACQsiPkZuiXJQ
12:59:41
bike
is this->_Contents null or something? if you're getting the segfault right there it's probably someting like that
13:05:58
yitzi
I rewrote that routine and now I got this https://p.blueridgedebate.com/?9647027eaa2afa13#DWs29UHBGCfUbTvvsvVsU2jDRctDDgacsZ1ztRFezNtN
13:11:24
yitzi
llvm20, 21, 22 have all been like this. I keep looking into the release notes looking for some change in memory handling that has caused the pointers to be garbage. I can't find it.
13:13:03
bike
the fact this is in the C++ rather than anything we're generating is concerning. maybe our C++ is ill formed and clang just hasn't noticed before.
13:14:36
yitzi
Well, I don't understand some the gc stuff enough, but sometimes I get the sneaky feeling that we are doing stuff like copying twice, etc.
13:15:49
bike
this one looks relatively straightforward, i could try going in with udb and seeing where the bad pointer comes from
13:19:06
yitzi
The current llvm22 branch will break at the vector segfault. Do you want that or the hashtable?
13:19:46
yitzi
I rewrote the vector stuff, but I'm not sure I did it right. So maybe start with the current branch.
14:08:26
bike
" inlined from ‘virtual void clang::interp::InterpFrame::describe(llvm::raw_ostream&) const’ at /home/bike/src/llvm-project/clang/lib/AST/ByteCode/InterpFrame.cpp:187:5: /home/bike/src/llvm-project/llvm/include/llvm/ADT/APInt.h:192:18: warning: ‘void operator delete [](void*)’ called on a pointer to an unallocated object ‘1’ [-Wfree-nonheap-object]" llvm build has the weirdest warnings
14:19:14
bike
"/usr/include/c++/12/bits/char_traits.h:431:56: warning: ‘void* __builtin_memcpy(void*, const void*, long unsigned int)’ accessing 9223372036854775810 or more bytes at offsets -4611686018427387902 and [-4611686018427387903, 4611686018427387904] may overlap up to 9223372036854775813 bytes at offset -3 [-Wrestrict]"
16:52:35
bike
if i specify :llvm-config and it's a string, it gets passed to format and i get an error. if i pass a pathname it apparently gets ignored and i don't get a warning or anything (i just have to check what llvm-config it says it's using)
17:00:10
bike
okay, it's because i screwed up the syntax, and i guess if koga fails to read config.sexp it's silently ignored
17:07:12
bike
it also doesn't like me using ~ in the path, but i don't know that much can be done about that