Skip to content

Conversation

pwnslinger
Copy link

modifying qemu-cgc to work with qira. There are some problems which I couldn't handle it:

  1. there's a linking problem error to resolving GLOBAL_* symbols defined in tci.c in linux-user/main.c. I added tci.o in linux-user/Makefile.objs which resulted in a compilation error.
    adding these lines didn't help much:
#ifndef TCG-TARGET_H
#define TCG-TARGET_H
#endif
  1. One major difference in structures between the two version of QEMU is at CPUArchState and CPUState in real_target_disasm which has been patched by qira which is under my repo.

@Jacopo
Copy link
Member

Jacopo commented Aug 2, 2018

Hi! What version of qemu does qira use? Perhaps issues are because of this mismatch: it might be easier to first go to the newer qemu version, and then add the qira hooks.

Also: the "core" port layer (first commits) is fairly thin, mostly limited to the syscall emulation. Later on I tried to "force in" some optimization (making globals const, etc.), noexec protection, faithful start state, etc. Pizza also added in his changes, angr-matching, etc.
In short: it may be easier to start the port from an old commit, instead of moving all at once.

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