Ok, part of the patch failed, but I reapplied it and it builds now. I
think I applied it BEFORE running ./configure, so the Makefile was
wrong. At least, I guess that was the problem.

Now, I guess I need to benchmark to see if it worked regardless of the
patching errors..

Thanks for the help though!!

Dan.

2009/1/9 Daniel Kersten <[email protected]>:
> 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.
>



-- 
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