E.g.
void
emit__NOP(
unsigned char *code, unsigned char *data, _PyExecutorObject *executor,
const _PyUOpInstruction *instruction, jit_state *state)
{
//
// _NOP.o: file format coff-x86-64
// 0: '\x00\x00\x00\x00\x04\x00\x00\x00\xf1\x00\x00\x00<\x00\x00\x00\n\x00\x01\x11\x00\x00\x00\x00\x00\x00\x00\x00.\x00<\x11\x00\x00\x00\x00\xd0\x00\x15\x00\x01\x00\x04\x00\x00\x00\x16R\x00\x00\x00\x00\x00\x00clang version 21.1.4\x00\x00'
// 4c: 00 00 00 00
const unsigned char data_body[80] = {
0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
0xf1, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x00, 0x00,
0x0a, 0x00, 0x01, 0x11, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x2e, 0x00, 0x3c, 0x11,
0x00, 0x00, 0x00, 0x00, 0xd0, 0x00, 0x15, 0x00,
0x01, 0x00, 0x04, 0x00, 0x00, 0x00, 0x16, 0x52,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x63, 0x6c,
0x61, 0x6e, 0x67, 0x20, 0x76, 0x65, 0x72, 0x73,
0x69, 0x6f, 0x6e, 0x20, 0x32, 0x31, 0x2e, 0x31,
0x2e, 0x34,
};
memcpy(data, data_body, sizeof(data_body));
}
which is in fact empty on main for Linux (at least for me on WSL) or Windows on 3.14.
Clang now generates debug info into the object files. Don't know when it happened, maybe one of the clang updates. Doesn't matter anyway, the fix is easy, just ignore .debug$S COFF sections, which brings us back to
Bug report
Bug description:
E.g.
which is in fact empty on main for Linux (at least for me on WSL) or Windows on 3.14.
The above block is contained in every stencil :(
Clang now generates debug info into the object files. Don't know when it happened, maybe one of the clang updates. Doesn't matter anyway, the fix is easy, just ignore
.debug$SCOFF sections, which brings us back toCPython versions tested on:
CPython main branch
Operating systems tested on:
Windows
Linked PRs