Questions tagged [intel-pin]

Pin is a dynamic binary instrumentation framework for the IA-32 and x86-64 instruction-set architectures that enables the creation of dynamic program analysis tools.

"Pin is a dynamic binary instrumentation framework for the IA-32 and x86-64 instruction-set architectures that enables the creation of dynamic program analysis tools."

Pin resources:

237 questions
0
votes
0 answers

Syntax Error: Unterminated Quoted String when using Intel's PIN tool on controlCARD executable

I am having some issues with Intel's PIN tool when obtaining the dynamic trace from a program's executable. I have previously used this tool on other programs successfully. I wrote some code for TI's Piccolo TMS320F28035 Isolated controlCARD. I was…
apk190000
  • 65
  • 7
0
votes
1 answer

Creating traces of SPEC using pin

I tried to create traces of spec2006 but don't know what program to pass in pin -t obj-intel64/champsim_tracer.so -- there are lots of cpp files in just one int program like bzip2 and gcc.
Dhruv Makwana
  • 61
  • 1
  • 7
0
votes
1 answer

Intel Pin GDB Runtime Overhead

I am running a Python gdb script on a program that runs with a Pintool. Specifically, I used the -appdebug_enable switch and created a semantic breakpoint in the Pintool that automatically triggers the breakpoint and runs the Python script that I…
vanbastelaer
  • 368
  • 2
  • 15
0
votes
2 answers

Intel PIN: How do I see speculative instructions?

I'm writing a PIN tool where I want to see speculatively executed instructions that were eventually squashed. I.e. if a branch direction was predicted, some instructions were executed speculatively, the branch direction was resolved and the…
Farhad
  • 516
  • 3
  • 14
0
votes
1 answer

Pin tool: wrap all routines with an entry/exit function via RTN_Replace

Using Pin, I would like to call some instrumentation function before and after each application function call. I've read that RTN_InsertCall to add some entry/exit analysis functions with IPOINT_BEFORE and IPOINT_AFTER is unreliable as the exit may…
ricky116
  • 744
  • 8
  • 21
0
votes
2 answers

How to identify the symbols in the symbol table are my 'application' functions

I have an example C program test.c that defines three functions only: main, fn1 and fn2: void fn1(void){...} void fn2(void){...} int main(int argc, char** argv){...} Compiling and then extracting the symbol table of this program (via nm ./test)…
ricky116
  • 744
  • 8
  • 21
0
votes
1 answer

Trace page table access of a Linux process

I am writing to inquire the feasibility of tracing the page table access (in terms of "index" of each page table access) of a common Linux user application. Basically, what I am doing is to re-produce the exploitation mentioned in this research…
lllllllllllll
  • 8,519
  • 9
  • 45
  • 80
0
votes
0 answers

Intel pin and chrono conflicts

I try to measure the runtime of the program using Intel Pin. For this purpose I include chrono in my project. However It is not going to compile well. It gives a lot of errors. Furthermore, I tried to include chrono to many standart Intel Pin…
DBenson
  • 377
  • 3
  • 12
0
votes
2 answers

Intel Pin Modifying Instruction Addresses

I am trying to do some instruction analysis of an executable-binary using Intel Pin-tool instrumentation. Upon analyzing the executed instructions in my Pin-tool, I am observing that the instruction address (program counter) value-range received is…
dyno8426
  • 1,179
  • 2
  • 13
  • 22
0
votes
0 answers

Perf Backtrace not Reproducible in Pin

I ran Perf multiple times and there were many backtraces in all of them not reproducible in Pin. Note that GDB could reproduce those backtraces. Here, I will show one of them: evince 13293 3713.930210: 100 mem_load_uops_retired.l3_miss:uppp:…
TheAhmad
  • 810
  • 1
  • 9
  • 21
0
votes
1 answer

Raw opcode from xed decoded data structures?

I am new to Intel Pintools, and am trying to write a pintool that stops at a given instruction type and then looks for specific instructions following it in the section. I've got the xed decoding working, but I am stuck at the part where I get the…
Polly
  • 549
  • 5
  • 11
0
votes
0 answers

Cleared Set in the Child Process

I have a multiprocess application and I trace it in Pin using the follow_execv switch. To put it simply, there exists a fork in the program. Before the fork occurs, I create a set and make some insertions. Right after fork, because of the…
TheAhmad
  • 810
  • 1
  • 9
  • 21
0
votes
1 answer

What is the rule behind instruction count in Intel PIN?

I wanted to count instructions in simple recursive fibo function O(2^n). I succeded to do so with bubble sort and matrix multiplication, but in this case it seemed like instruction count ignored my fibo function. Here is the code used for…
softkdp
  • 3
  • 2
0
votes
0 answers

nlohmann/json library with intel pin

I want to use nlohmann/json library with my intel pin tool. As directed in the document, I downloaded the json.hpp file and I'm including that in the pin tool. But, I am getting a bunch of errors something like (when I try to make): $head…
R4444
  • 2,016
  • 2
  • 19
  • 30
0
votes
0 answers

What does Intel PIN instruction count depend on and why it varies between executions?

I would like to get instruction count for bubblesort algorithm using Intel PIN. I thought that maybe I could analyse how instruction count increases, when there is more data to sort. But the result varies between executions for the same set of…
softkdp
  • 3
  • 2