Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Qira patches to QEMU version 3.1.0 #1

Closed
wants to merge 7 commits into from
Closed

Commits on Mar 25, 2019

  1. Original Qira QEMU patch ontop of v3.1.0

    I attempted to be as literal as possible, but this was not actually
    a cherry-pick. There were so many re-arranged files from v2.5.1 where
    the patch was last applied, that the merge conflicts were just nonsense.
    
    Additional fixes to get QEMU to build are in follow commits.
    Hamled committed Mar 25, 2019
    Configuration menu
    Copy the full SHA
    cc726ee View commit details
    Browse the repository at this point in the history
  2. Fix Capstone header include

    I'm really not sure about this one. I can't see how QEMU would build for
    anyone without --disable-capstone, without this change.
    
    Surely this must be a misconfiguration of my own system? However, the
    Capstone documentation for their C API clearly shows to use
    \#include <capstone/capstone.h>
    
    here: http://www.capstone-engine.org/lang_c.html
    Hamled committed Mar 25, 2019
    Configuration menu
    Copy the full SHA
    524e2db View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    4962042 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    41f7ac3 View commit details
    Browse the repository at this point in the history
  5. Pass TranslationBlock to tb_exec for TCG

    Standard QEMU passes only the pointer to the start of the translation
    block's instructions, however for Qira tracking we need more details
    from the `TranslationBlock` structure.
    
    This updates the `tcg_qemu_tb_exec` function to take a pointer to the
    `TranslationBlock` to execute, to minimize the changes needed to
    build with the Qira patch.
    
    We should probably determine if it would be possible to move the Qira
    tracking code into `cpu_tb_exec` instead, which would not require
    modifying the signature of `tcg_qemu_tb_exec` (although it is only
    called from that one location).
    Hamled committed Mar 25, 2019
    Configuration menu
    Copy the full SHA
    5383c18 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    8c3de14 View commit details
    Browse the repository at this point in the history
  7. Fix Qira tracking in TCG's tb_exec

    The `next_tb` variable was renamed to `ret` at some point.
    Hamled committed Mar 25, 2019
    Configuration menu
    Copy the full SHA
    20039e2 View commit details
    Browse the repository at this point in the history