cfbolz changed the topic of #pypy to: PyPy, the flexible snake (IRC logs: https://quodlibet.duckdns.org/irc/pypy/latest.log.html#irc-end ) | use cffi for calling C | if a pep adds a mere 25-30 [C-API] functions or so, it's a drop in the ocean (cough) - Armin
<nulano> antocuni, I changed it to False, but unless I also remove _hpy_universal from working_modules, the annotator is still finding (pypy.module.cpyext.pyobject:35)w_root_as_pyobj
[Arfrever] has joined #pypy
<nulano> with a debugger I have found that it is being called with a 'pypy.module._hpy_universal.interp_type.W_HPyTypeObject' as an argument
oberstet has quit [Remote host closed the connection]
_whitelogger has joined #pypy
dddddd has quit [Ping timeout: 240 seconds]
dddddd has joined #pypy
jcea has quit [Ping timeout: 258 seconds]
tos9_ has joined #pypy
tos9 has quit [Ping timeout: 260 seconds]
<mattip> I disabled hpy tests on linux32, win64 and disabled it in general if cpyext not available
<bbot2> Started: http://buildbot.pypy.org/builders/pypy-c-jit-win-x86-64/builds/29 [mattip: test branch, win64-py3.6]
<bbot2> Started: http://buildbot.pypy.org/builders/own-win-x86-64/builds/110 [mattip: test branch, win64-py3.6]
<bbot2> Failure: http://buildbot.pypy.org/builders/pypy-c-jit-win-x86-64/builds/29 [mattip: test branch, win64-py3.6]
epony has quit [Quit: upgrades]
<bbot2> Failure: http://buildbot.pypy.org/builders/own-win-x86-64/builds/110 [mattip: test branch, win64-py3.6]
mattip has quit [Ping timeout: 258 seconds]
mattip has joined #pypy
mattip has quit [Ping timeout: 260 seconds]
mattip has joined #pypy
epony has joined #pypy
<tumbleweed> BTW I broke test_coroutines in py3.6. Been poking at solutions to it, but keep getting distracted. OTOH, that commit fixed test_dis :P
<mattip> is it the test or actual coroutines that are broken?
<tumbleweed> I think the latter
<tumbleweed> but only in corner cases
<mattip> ok, maybe not so tragic
<tumbleweed> mucking around in pycodegen is fun. But it's also annoyingly hard to debug :)
<mattip> njoy
<rjarry> hi all
<rjarry> anyone has an idea about the issue I reported ?
<rjarry> (sys.exit() while in a @ffi.def_extern() callback)
<mattip> rjarry: maybe open an issue on the issue trakcer with a reproducer
<rjarry> mattip: sure, maybe I can suggest a patch
<rjarry> mattip: can you explain how this file is used? https://foss.heptapod.net/pypy/cffi/-/blob/branch/default/c/call_python.c is it compiled&linked with the cffi compiled module?
<rjarry> or is it part of the _cffi_backend.so extension
<rjarry> I wonder if that would be possible to wrap this line https://foss.heptapod.net/pypy/cffi/-/blob/branch/default/c/call_python.c#L276
<rjarry> blocking signals just before calling the python callback and unblocking them just after
<bbot2> Started: http://buildbot.pypy.org/builders/pypy-c-jit-win-x86-64/builds/30 [mattip: test branch, win64-py3.6]
<bbot2> Started: http://buildbot.pypy.org/builders/own-win-x86-64/builds/111 [mattip: test branch, win64-py3.6]
<bbot2> Failure: http://buildbot.pypy.org/builders/pypy-c-jit-win-x86-64/builds/30 [mattip: test branch, win64-py3.6]
<bbot2> Exception: http://buildbot.pypy.org/builders/own-win-x86-64/builds/111 [mattip: test branch, win64-py3.6]
astronavt___ has joined #pypy
<mattip> thanks
lritter has joined #pypy
jcea has joined #pypy
rfgpfeiffer has joined #pypy
fling has quit [Ping timeout: 256 seconds]
jcea has quit [Ping timeout: 256 seconds]
fling has joined #pypy
Taggnostr has quit [Remote host closed the connection]
Taggnostr has joined #pypy
YannickJadoul has joined #pypy
Smigwell has joined #pypy
jcea has joined #pypy
jcea has quit [Quit: jcea]
lritter has quit [Quit: Leaving]
YannickJadoul has quit [Quit: Leaving]
<mattip> it seems rpython is out of sync between default and py3.6
<mattip> so now I cannot be sure that the rpython in win64-py3.6 is OK for win64
jcea has joined #pypy
<mattip> the only one that I don't want to touch is the rsre changes
<bbot2> Started: http://buildbot.pypy.org/builders/pypy-c-jit-win-x86-64/builds/31 [mattip: test branch, win64-py3.6]
<bbot2> Started: http://buildbot.pypy.org/builders/own-win-x86-64/builds/112 [mattip: test branch, win64-py3.6]
<bbot2> Failure: http://buildbot.pypy.org/builders/pypy-c-jit-win-x86-64/builds/31 [mattip: test branch, win64-py3.6]
<mattip> that is a strange error message from translation
<mattip> "TyperError: arithmetic not supported on <INT>, its size is too small"
<mattip> (rpython.rtyper.lltypesystem.ll_str:13)ll_int2dec__INT
<nulano> rffi.INT < Signed
<nulano> Signed is the smallest type with implemented operations
<mattip> ahh. Any thoughts how to find the offending operation?
<nulano> same as UINT before
<mattip> I could stop in a debugger, but the graph is long gone
<nulano> I think it may be rpython.rtyper.lltypesystem.ll_str:11
<nulano> rpython.rtyper.lltypesystem.ll_str:17
<nulano> my numpad is upside down for some reason...
<mattip> I understand, but how do I find where I need to add a widen()
<nulano> ah right, I didn't look at the function...
<mattip> someone is calling ll_int2dec(val) with a rffi.INT, but the crash is inside ll_int2dec and no more information is available AFAICT
<mattip> either str(var) or '%d' % var
<nulano> it may be possible to find from a debugger
<nulano> the specialize_block frame has access to `self.annotator`
<nulano> I could find a few calls before by looking at `annotator.notify`
* mattip trying again
<mattip> thanks
kipras has joined #pypy
<bbot2> Failure: http://buildbot.pypy.org/builders/own-win-x86-64/builds/112 [mattip: test branch, win64-py3.6]
<mattip> len(self.annotator.notify) -> 24037
<nulano> I used an evaluate expression to find the right function
<nulano> `annotator.notify[graph.returnblock]`
<mattip> ok
<nulano> where graph is the graph of the current block
<mattip> I am in rpython\rtyper\rtyper.py(313)specialize_block(), where graph is
<mattip> graph = self.annotator.annotated[block]
<mattip> there is block.view() and block.show(), but they need pygame, which does not install on pypy2.7-64
<nulano> what is graph.name?
<nulano> there is also `block._slowly_get_graph`
<mattip> that give the same graph
<mattip> the graph name is ll_int2dec__INT
<nulano> does `annotator.notify[graph.returnblock]` return anything?
<nulano> it should be a list of tuples, with the first element of each tuple being another graph
<nulano> which I could use to recover part of the callstack
<nulano> with `stack.append(list(annotator.notify[stack[-1][0][0].returnblock]))`
<nulano> ah, there is a KeyError
<mattip> annotator.notify[graph.returnblock] returns precisely block
<nulano> I get '*** KeyError: return block[v3268] with 0 exits'
<nulano> for 'self.annotator.notify[graph.returnblock]'
<mattip> maybe getting somewhere with [k for k,v in self.annotator.annotated.items() if block in v.iterblocks()]
<mattip> nope, that brings me back to block
<nulano> I put an `if graph.name == 'll_int2dec__INT': raise Exception` in annrpython.addpendingblock
<nulano> the call stack passes through rstr.do_stringformat
<nulano> maybe found it: (pypy.module._socket.interp_socket:270)W_Socket.descr_repr
<nulano> (by going up the call stack to specialize_block and looking at graph there)
<nulano> passing through string format also explains why there is no real caller
<mattip> makes sense, I already had to widen "family" today
<nulano> trying test_ztranslation found another one I think
<nulano> nevermind, typo
<mattip> maybe get_family_w() as well? I wonder if other socket fields are dfined as int
<nulano> in descr_repr I had to widen() all three self.sock params, but missed one on the first try
<nulano> now test_ztranslation passes
<mattip> cool. Why doesn't it happen on default, and what is the root cause?
* mattip zzz
<mattip> (thanks again)
<nulano> good question...
rfgpfeiffer has quit [Ping timeout: 256 seconds]
tos9_ is now known as tos9
kipras has quit [Ping timeout: 264 seconds]
<bbot2> Started: http://buildbot.pypy.org/builders/pypy-c-jit-win-x86-64/builds/32 [nulano: test branch, win64-py3.6]