DynamoRIO / DynamoRIO/dynamorio

mark conditional branches and string loops as predicated

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

Description

_From [bruen...@google.com](https://code.google.com/u/109494838902877177630/) on October 30, 2014 18:52:04_

The new predication API (xref issue #269 , issue #1181 ) should probably consider general
conditional branches to also be predicated. For x86, OP_jcc is simple to
translate to DR_PRED_ constants -- but we'd have to add new ones or ensure
DR_PRED_COMPLEX's assumptions hold for OP_jecxz.

What about OP_rep_movs for when ecx is 0?

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

Contributor guide

Open the contributing guide

Research direction

Start by reading the predication API and the existing x86 translation for OP_jcc, then compare the assumptions behind DR_PRED_COMPLEX with OP_jecxz and OP_rep_movs. The issue is complete only after the project decides which conditional branches and string-loop cases count as predicated and defines the required DR_PRED constants or semantics.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.