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

How to instrument a routine to fill a pin fast buffer entry on entering the routine

I am using pin 3.0(build 76991) and visual studio 2012. I have tried the following to instrument routine entry to fill an entry in pin fast buffer Used RTN_InsertFillBuffer for the required routine during image instrumentation, but the compiler…
Nishant
  • 2,571
  • 1
  • 17
  • 29
1
vote
2 answers

Compiling pintool with sqlite3 database

I am writing a pintool to instrument my binary. I would like to use sqlite3 database to store the information about instructions. I can compile and execute sqlite3 "helloworld" example without any problem. As well I can compile and execute my…
Roman
  • 117
  • 1
  • 1
  • 6
1
vote
1 answer

Resume execution at arbitrary positions inside a callback function

I am using Pin for dynamic analysis. In my dynamic analysis task on 64-bit x86 binary code, I would like to resume the execution at arbitrary program positions (e.g., the second instruction of current executed function) after I fix certain memory…
lllllllllllll
  • 8,519
  • 9
  • 45
  • 80
1
vote
0 answers

Pin tool for Android 5

Does the Intel's Pin tool support Android version 5 or 6 ? This document explains how to install PIN tool for Android. I tried to install Pin tool on android version 5 and 6. In both version, when I try to execute the pin tool, I am getting…
aMa
  • 629
  • 3
  • 10
  • 19
1
vote
1 answer

Intel Pin with PinPlay RTN_InsertCall callback not executing on replay

I'm using Intel's Pin API with the Pinplay replay framework, and am having trouble getting the following to execute when performing a replay: VOID Arg1Before(char *name, ADDRINT arg1) { tracefile << name << "(" << arg1 << ")" << endl; } VOID…
Elemnir
  • 13
  • 2
1
vote
1 answer

What instructions 'instCount' Pin tool counts?

I run pintool 'instCount' on basic C program with empty body within the main function. int main() { } When I run the instCount on this program executable , it shows around 86000 instructions. Even the program is very small why so many…
ANTHONY
  • 333
  • 5
  • 18
1
vote
1 answer

How can i get memory effective address of array in pintool?

I try to print memory location( effective address) of array, i found the following: 1- First way : by using ( for read operation as example) IARG_MEMORYREAD_EA as argument to analysis function and print this value inside this function, (Effective…
Mos Moh
  • 317
  • 3
  • 15
1
vote
1 answer

memory access trace using pin tool

I just have an issue while using the intel's pin tool. I want the memory access trace of a c++ program and for that am using it. First I run c++ program (./a.out) using ../../../pin -t obj-intel64/pinatrace.so -- ./a.out Now in the c++ I also…
1
vote
1 answer

How to find RTN by name in pintool?

I use RTN_FindByName() to search for a specific RTN, but it didn't work with me, moreover i try to force the compiler to not inline the RTN, but still not working, test code: void __attribute__ ((noinline)) MyFunInApp() { printf(" function inside…
Mos Moh
  • 317
  • 3
  • 15
1
vote
1 answer

Producer Consumer using intel-pin internal threads

I am trying to implement a producer consumer model to separate the analysis and recording the data (collected from analysis) part of my pin tool. Going through the PIN thread API, I could not find any functions which can suspend a thread based on…
Genesis
  • 11
  • 1
1
vote
2 answers

Intel Pin Tool: Get instruction from address

I'm using Intel's Pin Tool to do some binary instrumentation, and was wondering if there an API to get the instruction byte code at a given address. Something like: instruction = getInstructionatAddr(addr); where addr is the desired address. I know…
dannykim
  • 166
  • 1
  • 2
  • 10
1
vote
0 answers

Format for setting Optimization flags in cBench

I am new to Compiler related work. I want to analyse some source code before and after optimising with -O1, -O2, -O3 flags. I am using Intel's PIN tool for analysis purposes. I am using source code from cBench Benchmark suite. But I am not getting…
1
vote
1 answer

Errors compiling pin tool with python includes, getting error C2872: 'UINT32' : ambiguous symbol

I'm trying to compile pin tool with Python.h and am getting more then 100 errors about ambiguous symbols. I tried to separate the include to different namespace but it generated many other errors. Same happens when including windows.h. All the…
ProgDude
  • 21
  • 3
1
vote
1 answer

Intel Pin tool expected time overhead

I am writing a Pin tool and it seems to add a significant time overhead. My tool must instrument the program in the granularity of an instruction. To check for the overhead source I wrote a small Pin-tool that just counts the instruction by…
Roni
  • 45
  • 1
  • 6
1
vote
2 answers

Using the debug information of a executable in a pin tool

I am creating a pin tool which keep track of the bit widths actually needed for variable. To keep track of high level(eg C Variables) I would like to use the debug information build in the executable. I was not able to find a way to extract the…
Krish
  • 189
  • 2
  • 3
  • 9