Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in

Issue 217105: attempt at issue 63, not fully working

Can't Edit
Can't Publish+Mail
Start Review
14 years ago by Elliot Murphy
8 months ago
Base URL:


given this code: class A: def f(self): pass Jeff suggested fix up the name in compiler_function so that c->u->u_name = 'A.f' instead of 'f'. This change does make it all the way through into the code object created by assemble(), such that co->co_name = 'A.f'. This also makes it all the way through to the "py::LlvmFunctionBuilder fbuilder(global_data, code);" line in _PyCode_ToLlvmIr() such that the name sent into Function::Create() is 'A.f'. I've manually stepped through the compiler/assemble functions a few times and things seem to be working as expected. However, when I try testing this with "sudo opcontrol --reset; sudo opcontrol --start-daemon; sudo opcontrol --start; PYTHONPATH=../tests/lib/django/ ./python ../tests/performance/bm_django.py -n 100; sudo opcontrol --stop", and then "opreport -g -l ./python |less", the results still show things like #render5. I'm not really sure where to look next in order to figure out why what is coming out of the profiler doesn't match the name we are setting up in the code object. Collin suggested I upload this patch now so folks can take a look.

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+5 lines, -3 lines) Patch
M Python/compile.c View 2 chunks +4 lines, -2 lines 0 comments Download
M Python/llvm_fbuilder.cc View 1 chunk +1 line, -1 line 0 comments Download


Total messages: 1
Elliot Murphy
14 years ago (2010-02-23 21:51:57 UTC) #1

Sign in to reply to this message.

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b