Console View
|
Categories: aarch64 benchmark-run linux32 linux64 macos-arm64 macos-x86_64 win64 |
|
| aarch64 | benchmark-run | linux32 | linux64 | macos-arm64 | macos-x86_64 | win64 | ||||||||||||||||||||||
|
|
|
|
|
|
|
|
||||||||||||||||||||||
|
mattip
matti.picus@gmail.com |
|
|
|
|
|
|
|
|||||||||||||||||||||
| fix json encoding (issue 5547) | ||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||
|
CF Bolz-Tereick
cfbolz@gmx.de |
|
|
|
|
|
|
|
|||||||||||||||||||||
|
Merge pull request #5541 from youknowone/jit-getarrayitem-raw-r-guard-never-fires jit: slice the kind in rewrite_op_getarrayitem so the raw_r guard can fire |
||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||
|
CF Bolz-Tereick
cfbolz@gmx.de |
|
|
|
|
|
|
|
|||||||||||||||||||||
| gh-5539: fix exception table propagation after non-fallthrough blocks | ||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||
|
CF Bolz-Tereick
cfbolz@gmx.de |
|
|
|
|
|
|
|
|||||||||||||||||||||
|
Merge pull request #5535 from youknowone/unicode count an empty needle in the code point domain |
||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||
|
mattip
matti.picus@gmail.com |
|
|
|
|
|
|
|
|||||||||||||||||||||
| aarch64 is slow, make timeout-minutes larger | ||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||
|
CF Bolz-Tereick
cfbolz@gmx.de |
|
|
|
|
|
|
|
|||||||||||||||||||||
|
Merge pull request #5531 from philipplc/windows_remote_debug Implementation Remote Debugger for Windows |
||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||
|
Jeong, YunWon
jeong@youknowone.org |
|
|
|
|
|
|
|
|||||||||||||||||||||
|
jit: slice the kind in rewrite_op_getarrayitem so the raw_r guard can fire getkind() returns one of 'void', 'int', 'float', 'ref', so kind = getkind(op.result.concretetype) if ARRAY._gckind != 'gc': assert ARRAY._gckind == 'raw' if kind == 'r': raise Exception("getarrayitem_raw_r not supported") is never true, and a raw array of GC pointers is lowered to getarrayitem_raw_r instead. That opcode has no opimpl_ in pyjitpl.py and no bhimpl_ in blackhole.py -- both define only the _i and _f spellings -- and resoperation.py declares the operation as 'GETARRAYITEM_RAW/2d/fi', so it would surface in setup_insns() at getattr(MIFrame, 'opimpl_' + name), away from the operation that produced it. The two sibling guards do fire: rewrite_op_getfield and rewrite_op_setfield also compare against 'r', but they assign kind = getkind(RESULT)[0]. This function keeps the whole word and spells the opcode with kind[0] at both SpaceOperation sites, so slice at the assignment rather than reword the comparison. Both assignments in the function are sliced; the virtualizable branch has no bug, but leaving one of the two unsliced is the inconsistency this came from. Add two tests: one requiring the exception for an rffi.CArray(Ptr(GcStruct)), and one pinning the kinds that must still get through -- 1- and 2-byte ints, Signed, Float, and a pointer to a raw struct, which is an 'i' as well -- so the guard cannot widen to them. Assisted-by: Claude |
||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||
|
CF Bolz-Tereick
cfbolz@gmx.de |
|
|
|
|
|
|
|
|||||||||||||||||||||
|
Merge pull request #5538 from youknowone/jit-list-getitem-stale-caller jit: repair the stale rlist.ll_getitem() call in the codewriter builtin table |
||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||
|
mattip
matti.picus@gmail.com |
|
|
|
|
|
|
|
|||||||||||||||||||||
| adjust test for pypy host | ||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||
|
Jeong, YunWon
jeong@youknowone.org |
|
|
|
|
|
|
|
|||||||||||||||||||||
|
jit: add a metainterp test for the getarrayitem_raw_r refusal Reading a GC pointer out of a raw array reaches the codewriter through interp_operations, so the guard can be exercised end to end. Without the previous commit the codewriter emits getarrayitem_raw_r %i1, %i0, ArrayDescr(...) -> %r0 and the failure surfaces in BlackholeInterpreter.setup_insns() as AttributeError: type object 'BlackholeInterpreter' has no attribute 'bhimpl_getarrayitem_raw_r' which names an opcode rather than the operation that produced it. With it, rewrite_op_getarrayitem raises "getarrayitem_raw_r not supported" instead. Assisted-by: Claude |
||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||
|
Jeong, YunWon
jeong@youknowone.org |
|
|
|
|
|
|
|
|||||||||||||||||||||
|
jit: repair the stale rlist.ll_getitem() call in the codewriter builtin table 72270f2624 gave rlist.ll_getitem() a 'basegetitem' parameter -- ll_getitem(func, basegetitem, l, index) -- and updated rlist.py and test_rlist.py, but not the codewriter wrapper, which still passes three arguments. The list is therefore bound to 'basegetitem' and the index is dropped, so _ll_2_list_getitem cannot even be annotated. The same commit replaced the standalone ll_getitem_foldable() with the basegetitem specialization, so the alias _ll_2_list_getitem_foldable = _ll_2_list_getitem no longer expresses foldability; 'list.getitem_foldable' resolved to the mutable getter. Make it a function that passes ll_getitem_foldable_nonneg. Nothing reaches these two today: handle_builtin_call() routes every 'list.*' oopspec to _handle_list_call(), and both do_fixed_list_getitem() and do_resizable_list_getitem() exist, so setup_extra_builtin() is never asked for this name. Add tests for both wrappers; they monkeypatch rlist.ll_getitem with a four-argument recorder and check what each hands it. Assisted-by: Claude |
||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||
|
CF Bolz-Tereick
cfbolz@gmx.de |
|
|
|
|
|
|
|
|||||||||||||||||||||
|
Merge pull request #5540 from pypy/py3-fix-pytest-builtin-name fix pytest assertion rewriting on python 2 |
||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||
|
CF Bolz-Tereick
cfbolz@gmx.de |
|
|
|
|
|
|
|
|||||||||||||||||||||
| Merge branch 'main' into py3.11 | ||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||
|
mattip
matti.picus@gmail.com |
|
|
|
|
|
|
|
|||||||||||||||||||||
| Merge branch 'main' into py3.11 | ||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||
|
Matti Picus
matti.picus@gmail.com |
|
|
|
|
|
|
|
|||||||||||||||||||||
| skip recursive test that stack overflows on top of pypy | ||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||
|
mattip
matti.picus@gmail.com |
|
|
|
|
|
|
|
|||||||||||||||||||||
| Merge branch 'py3.11' into py3.12 | ||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||
|
Jeong YunWon
jeong@youknowone.org |
|
|
|
|
|
|
|
|||||||||||||||||||||
|
count an empty needle in the code point domain descr_count passed the byte bounds from _unwrap_and_compute_idx_params straight to rstring's search, which answers end - start + 1 for an empty needle, so '\xe9\xe8\xe9\xe8\xe9'.count('') was 11 rather than 6. Answer it from _codepoints_in_utf8 instead, with start_index > end_index giving 0 as rstring.py:827 does, and the whole-string case reading self._len() so the call stays O(1) -- rutf8.codepoints_in_utf8 is a linear scan. test_count_unicode in apptest_unicode.py now passes; test_unicode, test_bytes, test_string and test_userstring stay green. Assisted-by: Claude |
||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||
|
mattip
matti.picus@gmail.com |
|
|
|
|
|
|
|
|||||||||||||||||||||
| rearrange tests to avoid gc cycle | ||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||
|
CF Bolz-Tereick
cfbolz@gmx.de |
|
|
|
|
|
|
|
|||||||||||||||||||||
| fix pytest assertion rewriting on python 2 | ||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||
|
mattip
matti.picus@gmail.com |
|
|
|
|
|
|
|
|||||||||||||||||||||
| fix merge, tests were converted to apptests but then remerged | ||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||
|
Matti Picus
matti.picus@gmail.com |
|
|
|
|
|
|
|
|||||||||||||||||||||
| skip slow test on windows | ||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||