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