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
1
vote
0 answers

Finding RAW, WAR,WAW dependencies in Intel PIN

I am trying to find the data hazards using Pintool. I have written this: TRACE_AddInstrumentFunction(Trace, 0); //called in main class readStore //This is for both read and write. Named read for historical reasons... { public: UINT64…
1
vote
0 answers

Intel pin tool 3.5 Building Manual Examples

I am trying to run Manual Examples of Intel pin tool kit 3.5 in x64 architecture using Ubuntu... but i am unable to build and got errors like make[1]:Entering directory '/home/desktop/source/tools/ManualExamples' make libs make[1]:Entering…
Sanza
  • 11
  • 2
1
vote
1 answer

Intel Pin call a function in the application program

I am using the Intel Pin tool to do some analysis on my application program. I have an instrumentation routine and a signal handler that does some analysis in the application program and then based on some condition makes a call to a function in the…
Rohit Poduri
  • 99
  • 2
  • 9
1
vote
1 answer

Intel Pin trace specific function calls

Is there any way to trace calls to a certain function by a thread in Intel Pin. I am following this example ManualExamples/malloc_trace.cpp and replaced malloc with a function in my application program, but it dosen't seem to work. Also this example…
Rohit Poduri
  • 99
  • 2
  • 9
1
vote
0 answers

Delete instruction using PIN

I am using the Intel PIN tool to emulate some new instructions and check the corresponding results. For this purpose I am using illegal opcodes of x86_64 to represent my instructions. For example- opcodes 0x16, 0x17 are illegal in x86_64. which…
Rohit Poduri
  • 99
  • 2
  • 9
1
vote
2 answers

PIN get assembly opcodes from instruction address

I am using PIN to analyze a C program's instructions and perform necessary operations. I have compiled my C program using GCC on Ubuntu and then passed the generated executable as input to the pintool. I have a pintool which calls an instruction…
Rohit Poduri
  • 99
  • 2
  • 9
1
vote
0 answers

Detecting an illegal instruction opcode on Intel PIN

I am writing a Pin tool where I want to detect an instruction with a particular opcode. I have an executable from a sample C program where I am printing hello world. The architecture used is x86_64 and I have the trace of assembly instructions in…
Rohit Poduri
  • 99
  • 2
  • 9
1
vote
2 answers

How to get address space layout from Intel Pin on Linux?

I want to get the address space layout from Intel Pin on Linux. At first, I try to read file - /proc/PID/maps and get the address space layout. But when do you execute such part of code? If you put it before PIN_StartProgram, the maps file will not…
慕冬亮
  • 339
  • 1
  • 2
  • 10
1
vote
1 answer

why the Number of ret instructions is greater than number of call instructions?

i have written a pintool. it implements a stack for a program while instructions are executed. In case a call instruction is encountered it pushes the address of next instruction in sequence to stack. when the called procedure is completed and the…
Prof
  • 13
  • 8
1
vote
1 answer

External Memory Trace PIN Tool

I tried using PIN tool to capture the memory trace. But, the PIN website says the addresses include all memory reads and writes. I would like to capture the external memory addresses generated by a program. These addresses are the ones which are…
Benkar
  • 21
  • 1
  • 6
1
vote
1 answer

How to identify malloc calls from main executable

I have a simple program that calls malloc, and I'm trying to develop a pintool to catch this direct call to malloc from the main executable. Using malloctrace.cpp from SimpleExamples (comes with the SDK): VOID Image(IMG img, VOID *v) { RTN…
Jaaz
  • 53
  • 6
1
vote
1 answer

How are the 16 General Purpose Registers represented in Intel PIN binary instrumentation tool

I know how the 1st 8 general purpose registers are represented in PIN, like REG_GAX, REG_GBX and so on. However I cant seem to find in the user manual how registers r8 to r15 are represented.
ankahira
  • 87
  • 1
  • 11
1
vote
1 answer

intel pin with docker

i have a pintool that runs normaly with this command: ../../../pin -injection child -t obj-intel64/mypintool.so -- obj-intel64/myexcecutable i want in the position of myexcecutable to put a docker program which runs with this command: docker run…
Orion Papadakis
  • 398
  • 1
  • 14
1
vote
1 answer

Getting the stack pointer content using Intel's PinTool

Using objdump utility, we are able to retrieved the relative address of a variable for example consider a simple C program: Source-code: #include void do_stuff(int my_arg){ int my_local=my_arg+2; int i; for(i=0;i
Bernard Nongpoh
  • 1,028
  • 11
  • 20
1
vote
1 answer

Pin: instrument a specified shared library

I am performing some simple instrumentation task on an executable file and its related shared libraries, recording all the executed instructions in the main file as well as the shared libraries. However, Pin always throw Pin is out of memory:…
lllllllllllll
  • 8,519
  • 9
  • 45
  • 80