Ok, tried applying patch to both 2.6.1 and svn versions:

dan-desktop ~/Desktop/python/release26-maint: patch -p1 < threadedceval5.patch
patching file Makefile.pre.in
Hunk #1 succeeded at 248 (offset 1 line).
Hunk #2 succeeded at 578 with fuzz 2 (offset 4 lines).
patching file Python/ceval.c
Hunk #1 succeeded at 578 (offset -3 lines).
Hunk #2 succeeded at 752 (offset -2 lines).
Hunk #3 succeeded at 1061 (offset -71 lines).
Hunk #4 succeeded at 1119 (offset -71 lines).
Hunk #5 succeeded at 1136 (offset -71 lines).
Hunk #6 FAILED at 1148.
Hunk #7 FAILED at 1263.
Hunk #8 FAILED at 1424.
... <more text>
15 out of 50 hunks FAILED -- saving rejects to file Python/ceval.c.rej
patching file Python/makeopcodetargets.py
patching file Python/opcode_targets.h


Also, the script Python/makeopcodetargets.py exists and runs fine
(generates the file Python/opcode_targets.h), but some of the
generated opcodes STILL give "undefined" errors.
Since it uses a gcc specific extension, perhaps it is not recognizing
the labels as constants? Though, I assume the patch would enable it
and I AM using gcc after all.


2009/1/8 Padraig Kitterick <[email protected]>:
>
> You want:
>
> patch -p1 < threadedceval5.patch
>
> Padraig
>
> Daniel Kersten wrote:
>> Hrm, thats strange.. it SAYS it was applied correctly.. i think..
>>
>> 2009/1/8 Padraig Kitterick <[email protected]>:
>>
>>> That script is created by the patch, so if you don't see it then the
>>> patch hasn't applied correctly.
>>>
>>> Daniel Kersten wrote:
>>>
>>>> I did something like: patch -p1 Makefile < threadedceval5.patch
>>>> Also, I don't have that script. Where do I get it, I don't see it anywhere.
>>>>
>>>> It makes sense that they would have used the svn version - I used
>>>> 2.6.1 sources found on the python.org download page. I'll try the svn
>>>> version tomorrow and see.
>>>>
>>>>
>>>> 2009/1/8 Michael Twomey <[email protected]>:
>>>>
>>>>
>>>>> Also, off the top of my head, I bet these are patches against svn,
>>>>> which probably means to need to run autoconf & co to regenerate
>>>>> configure and the makefiles.
>>>>>
>>>>> mick
>>>>>
>>>>> On Thu, Jan 8, 2009 at 17:11, Padraig Kitterick
>>>>> <[email protected]> wrote:
>>>>>
>>>>>
>>>>>> Those labels that are undefined should be generated as part of the make
>>>>>> rules that the patch inserts ($(srcdir)/Python/makeopcodetargets.py).
>>>>>> How did you apply the patch?
>>>>>>
>>>>>> Daniel Kersten wrote:
>>>>>>
>>>>>>
>>>>>>> Hi again,
>>>>>>>
>>>>>>> Has anyone got any experience applying the threaded code patch to 
>>>>>>> Python 2.6?
>>>>>>> http://bugs.python.org/issue4753
>>>>>>>
>>>>>>> Apparently it changes the eval loop to uses threaded code instead of
>>>>>>> table lookups or something like that and can make the interpreter
>>>>>>> execute 10-20% faster on most platforms. Only works in gcc because it
>>>>>>> requires gcc's labels as values extension.
>>>>>>>
>>>>>>> Anyway, I'm trying to get this working and have applied the
>>>>>>> threadedceval5.patch patch. I don't really know much about diff/patch,
>>>>>>> so maybe I'm doing it wrong.. I'm not sure if I need the other files
>>>>>>> or what. The patch seems to have worked fine, but when compiling
>>>>>>> Python (2.6.1) I get this error:
>>>>>>>
>>>>>>> Python/ceval.c: In function 'PyEval_EvalFrameEx':
>>>>>>> Python/ceval.c:1057: error: '_Py_TracingPossible' undeclared (first
>>>>>>> use in this function)
>>>>>>> Python/ceval.c:1057: error: (Each undeclared identifier is reported 
>>>>>>> only once
>>>>>>> Python/ceval.c:1057: error: for each function it appears in.)
>>>>>>> Python/opcode_targets.h:149: error: label 'TARGET_MAP_ADD' used but not 
>>>>>>> defined
>>>>>>> Python/opcode_targets.h:148: error: label 'TARGET_SET_ADD' used but not 
>>>>>>> defined
>>>>>>> Python/opcode_targets.h:147: error: label 'TARGET_LIST_APPEND' used
>>>>>>> but not defined
>>>>>>> Python/opcode_targets.h:136: error: label 'TARGET_MAKE_CLOSURE' used
>>>>>>> but not defined
>>>>>>> Python/opcode_targets.h:134: error: label 'TARGET_MAKE_FUNCTION' used
>>>>>>> but not defined
>>>>>>> Python/opcode_targets.h:132: error: label 'TARGET_RAISE_VARARGS' used
>>>>>>> but not defined
>>>>>>>
>>>>>>> followed by more undefined labels.
>>>>>>> Python/opcode_targets.h is just a big table of opcodes, the opcodes
>>>>>>> being the TARGET_* labels, but they don't seem to be defined any
>>>>>>> place.
>>>>>>>
>>>>>>> Has anyone successfully got this working? If yes, what am I doing wrong?
>>>>>>>
>>>>>>> Thanks!!
>>>>>>> Dan.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>
>>>>
>>>>
>>>
>>
>>
>>
>>
>
>
> >
>



-- 
Daniel Kersten.
Leveraging dynamic paradigms since the synergies of 1985.

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Python Ireland" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.ie/group/pythonireland?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to