Re: [DynInst_API:] testsuite v10.0.0 release?

2019-01-09 Thread Barton Miller
Yes.  In the frenzy of getting 10.0 out, we didn't tag a version of the test 
suite.  We've been under-staffed, so missed that.

We'll fix that shortly.

--bart


On 2019-01-09 1:28 PM, Stan Cox wrote:

On 1/9/19 10:26, Knapp, Rashawn L wrote:
I found the Dyninst 10.0.0 test suite here: 
https://github.com/dyninst/testsuite  and built it with  Dyninst v10.0.0 using 
similar semantics as  with v9.3.0.
I'm using the upstream testsuite sources but the reason I ask about a formal 
https://github.com/dyninst/testsuite/releases release is that the rpm framework 
likes to be able to point to upstream sources.  For example for the 9.3 
releases in dyninst.spec (the rpm specfile) uses:
 Source1: 
https://github.com/dyninst/testsuite/archive/v9.3.0/testsuite-9.3.0.tar.gz
So for dyninst 10 it would be convenient to have a testsuite-10.0.0.tar.gz 
equivalent.  Meanwhile I created a local one with git archive

___
Dyninst-api mailing list
Dyninst-api@cs.wisc.edu
https://lists.cs.wisc.edu/mailman/listinfo/dyninst-api
___
Dyninst-api mailing list
Dyninst-api@cs.wisc.edu
https://lists.cs.wisc.edu/mailman/listinfo/dyninst-api

Re: [DynInst_API:] Add a new function

2019-01-09 Thread Buddhika Chamith Kahawitage Don
Thanks Xiaozhu. I will check it out.

On Wed, Jan 9, 2019 at 8:41 PM Xiaozhu Meng  wrote:

> It looks like you can create your own instrumentation library and use
> Dyninst to insert calls to the library into the mutatee. Dyninst will
> properly create linking dependency for the mutatee against the
> instrumentation library.
>
> You can refer to our code coverage code example to see how to program in
> this way:
> https://github.com/dyninst/dyninst/tree/master/examples/codeCoverage.dir
>
> On Tue, Jan 8, 2019 at 6:03 AM Buddhika Chamith Kahawitage Don <
> budka...@iu.edu> wrote:
>
>> Actually I have two use cases.
>>
>> 1. Create a jump table and insert it to the binary and make the each
>> function epilog instrumentation jump to it.
>>
>
> You can definitely instrument the exits of each function to call a common
> function. This common function can contain the jump table and resides in
> your instrumentation library. However, Dyninst does not provide the
> functionality of creating jump tables. So you will need to do your code
> generation to create a jump table.
>
>
>> 2. Introduce a new function which does some initialization and inject a
>> call to it after the function main prolog.
>>
>
> You can write the new function in c/c++ and then compile it into your
> instrumentation library, and then use Dyninst to inject calls to it.
>
>
>>
>> Does it look doable?
>>
>> Thanks
>> Buddhika
>>
>>
>> On Mon, Jan 7, 2019 at 8:53 PM Xiaozhu Meng  wrote:
>>
>>> Hi,
>>>
>>> Yes, you can add new functions. But depending on what exactly you want
>>> to do with the added function, there are different ways to do it.
>>>
>>> For example, do you want to call this new function in your
>>> instrumentation? Do you want to add a new interface into a shared library?
>>>
>>> Let me know the details so that we can find the best way to do it.
>>>
>>> Thanks,
>>>
>>> --Xiaozhu
>>>
>>> On Sun, Jan 6, 2019 at 12:50 AM Buddhika Chamith Kahawitage Don <
>>> budka...@iu.edu> wrote:
>>>
 Hi All,

 Is it possible to add new function to the binary using Dyninst APIs?

 Cheers
 Buddhika
 ___
 Dyninst-api mailing list
 Dyninst-api@cs.wisc.edu
 https://lists.cs.wisc.edu/mailman/listinfo/dyninst-api
>>>
>>>
___
Dyninst-api mailing list
Dyninst-api@cs.wisc.edu
https://lists.cs.wisc.edu/mailman/listinfo/dyninst-api

Re: [DynInst_API:] testsuite v10.0.0 release?

2019-01-09 Thread Knapp, Rashawn L
I found the Dyninst 10.0.0 test suite here: 
https://github.com/dyninst/testsuite  and built it with  Dyninst v10.0.0 using 
similar semantics as  with v9.3.0.

Regards,

-Rashawn

Rashawn Knapp
Software Engineer, Intel Corporation
Intel Architecture Graphics and Software
Scripting, Analyzers & Tools
Pole: JF2-1-M4 | MS: JF2-1-102-79| O: 503-264-4221

-Original Message-
From: Dyninst-api [mailto:dyninst-api-boun...@cs.wisc.edu] On Behalf Of Stan Cox
Sent: Wednesday, January 09, 2019 7:04 AM
To: dyninst-api 
Subject: [DynInst_API:] testsuite v10.0.0 release?

Any plan to do a testsuite release that corresponds to dyninst 10.0.0 similar 
to dyninst testsuite v9.3.0 for dyninst 9.3.x?

___
Dyninst-api mailing list
Dyninst-api@cs.wisc.edu
https://lists.cs.wisc.edu/mailman/listinfo/dyninst-api

___
Dyninst-api mailing list
Dyninst-api@cs.wisc.edu
https://lists.cs.wisc.edu/mailman/listinfo/dyninst-api


Re: [DynInst_API:] Add a new function

2019-01-09 Thread Xiaozhu Meng
It looks like you can create your own instrumentation library and use
Dyninst to insert calls to the library into the mutatee. Dyninst will
properly create linking dependency for the mutatee against the
instrumentation library.

You can refer to our code coverage code example to see how to program in
this way:
https://github.com/dyninst/dyninst/tree/master/examples/codeCoverage.dir

On Tue, Jan 8, 2019 at 6:03 AM Buddhika Chamith Kahawitage Don <
budka...@iu.edu> wrote:

> Actually I have two use cases.
>
> 1. Create a jump table and insert it to the binary and make the each
> function epilog instrumentation jump to it.
>

You can definitely instrument the exits of each function to call a common
function. This common function can contain the jump table and resides in
your instrumentation library. However, Dyninst does not provide the
functionality of creating jump tables. So you will need to do your code
generation to create a jump table.


> 2. Introduce a new function which does some initialization and inject a
> call to it after the function main prolog.
>

You can write the new function in c/c++ and then compile it into your
instrumentation library, and then use Dyninst to inject calls to it.


>
> Does it look doable?
>
> Thanks
> Buddhika
>
>
> On Mon, Jan 7, 2019 at 8:53 PM Xiaozhu Meng  wrote:
>
>> Hi,
>>
>> Yes, you can add new functions. But depending on what exactly you want to
>> do with the added function, there are different ways to do it.
>>
>> For example, do you want to call this new function in your
>> instrumentation? Do you want to add a new interface into a shared library?
>>
>> Let me know the details so that we can find the best way to do it.
>>
>> Thanks,
>>
>> --Xiaozhu
>>
>> On Sun, Jan 6, 2019 at 12:50 AM Buddhika Chamith Kahawitage Don <
>> budka...@iu.edu> wrote:
>>
>>> Hi All,
>>>
>>> Is it possible to add new function to the binary using Dyninst APIs?
>>>
>>> Cheers
>>> Buddhika
>>> ___
>>> Dyninst-api mailing list
>>> Dyninst-api@cs.wisc.edu
>>> https://lists.cs.wisc.edu/mailman/listinfo/dyninst-api
>>
>>
___
Dyninst-api mailing list
Dyninst-api@cs.wisc.edu
https://lists.cs.wisc.edu/mailman/listinfo/dyninst-api

[DynInst_API:] testsuite v10.0.0 release?

2019-01-09 Thread Stan Cox
Any plan to do a testsuite release that corresponds to dyninst 10.0.0 
similar to dyninst testsuite v9.3.0 for dyninst 9.3.x?


___
Dyninst-api mailing list
Dyninst-api@cs.wisc.edu
https://lists.cs.wisc.edu/mailman/listinfo/dyninst-api