2013-11-24 4 views
12

मैं अपने पुस्तकालय में एक सी ++ विधि के लिए एक perf probe जोड़ने के लिए कोशिश कर रहा हूँ, लेकिन मैं बार आ रही है निम्नलिखित:सी ++ तरीकों के लिए पर्फ़ जांच नहीं जोड़ा जा सकता

$ perf probe --exec=/path/to/file --add='my::Own::Method' 
Semantic error :There is non-digit char in line number. 

मैं की तरह उपलब्ध कार्यों को सूचीबद्ध किया है इसलिए:

$ perf probe --funcs --exec=/path/to/file 

और कुछ सी कार्यों कि भी शामिल हैं की कोशिश की। इनके लिए ठीक एक जांच जोड़ा जा सकता है। तो मैंने उलझन वाले नाम की कोशिश की (उदा। _ZN2my8Own16Method) और perf probe कहता है कि यह अस्तित्व में नहीं है।

क्या इस मुद्दे के आसपास कोई रास्ता है?

उत्तर

2

एक कामकाज के रूप में आप objdump और perf probe के साथ विधि पता प्राप्त कर सकते हैं।

$ perf probe -x /path/file '0x643f30' 
Added new event: 
    probe_libfile:abs_643f30 (on 0x643f30 in /path/file) 

You can now use it in all perf tools, such as: 

    perf record -e probe_libfile:abs_643f30 -aR sleep 1 
संबंधित मुद्दे