Giter Club home page Giter Club logo

Comments (6)

bchurchill avatar bchurchill commented on July 21, 2024

It would also be nice to have functionality to get the memory addresses touched. I think we've duplicated this logic in a few places (especially for pop/push) and it would be nice to centralize it.

from x64asm.

eschkufz avatar eschkufz commented on July 21, 2024

re: getting addresses touched --

This requires emulation of the source code, which isn't really something that this library is equipped to do. There is probably a place for this functionality somewhere in the stoke codebase, though. Probably somewhere in the sandbox, or in a class that uses sandbox callbacks.

from x64asm.

bchurchill avatar bchurchill commented on July 21, 2024

Oh, I probably wrote that wrong. What I really mean is memory
references that get touched. For example, 'push %rdx' is going to touch
-8(%rsp). That's something that can be returned as an x64asm::M64 or
something. Does that make sense to include here?

On 10/14/2014 03:32 PM, eric schkufza wrote:

re: getting addresses touched --

This requires emulation of the source code, which isn't really something that this library is equipped to do. There is probably a place for this functionality somewhere in the stoke codebase, though. Probably somewhere in the sandbox, or in a class that uses sandbox callbacks.


Reply to this email directly or view it on GitHub:
#38 (comment)

from x64asm.

eschkufz avatar eschkufz commented on July 21, 2024

re: implicit memory dereference

I can make this change. BUT. There's a semantic issue here, which is that I originally intended derefs_mem() to also imply that mem_index() would return non -1. Changing this to the semantics you want will break this invariant.

I'm going to leave derefs_mem(), but label it as deprecated, and replace it with three new methods:

is_implicit_memory_deref();
is_explicit_memory_deref();
is_memory_deref();

The semantics of is_explicit_memory_deref() will correspond to derefs_mem().

from x64asm.

eschkufz avatar eschkufz commented on July 21, 2024

back to touched addresses --

I see what you mean. I have to think about that one a little bit. There are some pretty strange corner cases that would make that a difficult method to write in full generality. Let's make that a separate issue and for now I'll just change the derefs_mem() thing.

from x64asm.

eschkufz avatar eschkufz commented on July 21, 2024

Closed.

from x64asm.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.