DynamoRIO / DynamoRIO/dynamorio

speed up encoding w/ direct template pointer and no checks

Open
#606 1 comment 0 reactions 0 assignees View on GitHub
Migrated Performance Priority-Medium Type-Feature
Dominant language
C
Stars
3.2k
Forks
629
Avg merge
2d 15h
Merged PRs (30d)
31

Description

_From [bruen...@google.com](https://code.google.com/u/109494838902877177630/) on November 11, 2011 16:40:40_

preliminary analysis has encoding as the biggest bottleneck for
heavy-instrumentation clients running big apps with little code reuse
(startup of desktop app, e.g.). mov_st has to go through a bunch of
special case templates (have to go first else would never use them). could
have some kind of direct pointer or reference to the proper template, along
w/ getting rid of the opnd size checks when such a pointer is in place
since we would assume user is an expert (checks would remain in debug
build).

perhaps an opcode heirarchy: use OP_mov_st by default for general, or can
use OP_mov_st_Ev_Gv. or if analyze encoding and it's really all about
multi-template instrs, perhaps encoder doing some quicker up-front checks
can figure out it can skip the specialized templates.

xref issue #483

_Original issue: http://code.google.com/p/dynamorio/issues/detail?id=606_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.