Skip to content

Conversation

@sephiroth99
Copy link

The reader_info struct is not typedef'd, so the struct keyword is needed
when compiling with a C compiler.

The reader_info struct is not typedef'd, so the struct keyword is needed
when compiling with a C compiler.
benvanik added a commit that referenced this pull request Sep 22, 2015
Fix compilation under C compilers.
@benvanik benvanik merged commit bf7e969 into xenia-project:master Sep 22, 2015
@sephiroth99 sephiroth99 deleted the fix-c branch September 26, 2015 04:21
gibbed pushed a commit that referenced this pull request Aug 2, 2019
* Fixes capstone-engine#1317 - arm thb operand.shift.value

For a more detailed description, see issue capstone-engine#1317.

Release 4.0.0 introduced a new field for ARM operands:
`operand.mem.lshift`. This field was supposed to be a bug fix for capstone-engine#246.
The capstone-engine#246 issue has been fixed in the meantime and the proper shift value
was stored in `operand.shift.value`.

The 4.0.0 changes created a regression in which `operand.shift.value`
was not set for a `tbh [r0, r1, lsl #1]` instruction on ARM and the
value was set in a `operand.mem.lshift` field instead.

As the regression broke some of users codebase (e.g. in
[manticore](trailofbits/manticore#1312) project), we fix it by setting
`operand.shift.value` back again.

As a result, the shift value is set in two fields: `operand.shift.value`
and `operand.mem.lshift`. As the `operand.shift` also stores a `.type`
field, we might want to deprecate `operand.mem.lshift` in the future.

* Add changelog stub
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants