qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Mike Nordell" <tamlin@algonet.se>
To: jhoger@pobox.com, Pierre d'Herbemont <stegefin@free.fr>,
	qemu-devel@nongnu.org
Subject: [Qemu-devel] Win32 port [was: .previous in exec-all.h]
Date: Fri, 19 Mar 2004 22:03:45 +0100	[thread overview]
Message-ID: <001e01c40df5$b53cb620$0401a8c0@putte2k> (raw)
In-Reply-To: 1079728362.20081.84.camel@aragorn

John R. Hogerhuis wrote:

> Mike Nordell is further along than
> I in a win32 port. He is replacing the ELF reading stuff in dyngen.c
> with code that can process a coff .o file.

Actually, he isn't anymore. AFAIK I have already done it. :-)

The last thing I'm fighting is relative (REL32, IMAGE_REL_I386_REL32)
relocations, that _sometimes_ seems to be wrong. I'm quite sure this is just
me forgetting an extra indirection somewhere, which should be fixed in
no-time, or perhaps even just the result of label_offsets being emitted with
wrong values, something I fixed today but haven't had time to test-drive
just yet.

> Some funniness in COFF is forcing him to make every function
> have its own segment. This is probably not a big issue.

Considering section the only thing in a COFF object file telling the size of
what it contains, it's obvious that each function has to be put in a section
of its own, for dyngen to know how large a function is.

But as you guessed; this is not a big issue.


As for the actual execution environment, I believe the only major thing left
is to get EBP inside generated code to actually point to "env", something
that seems to be expected and required by the functions generated from op.c.
It would be interesting to know how it's done on x86-host ELF systems. Is
EBP somehow hard-wired to "env" (from cpu_exec() ), or am I possibly missing
some prologue/epilogue native-code-generation to do this?


/Mike - not a qemu devel subsciber, why I'd appreciate CC'd comments

  parent reply	other threads:[~2004-03-19 21:03 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-03-16 18:26 [Qemu-devel] .previous in exec-all.h John R. Hogerhuis
2004-03-16 18:32 ` Mark IJbema
2004-03-19 18:34 ` Pierre d'Herbemont
2004-03-19 20:32   ` John R. Hogerhuis
2004-03-19 20:58     ` Fabrice Bellard
2004-03-19 21:10       ` John R. Hogerhuis
2004-03-25  9:41       ` John R. Hogerhuis
2004-03-26  0:43         ` John R. Hogerhuis
2004-03-19 21:03     ` Mike Nordell [this message]
2004-03-20 19:50     ` Pierre d'Herbemont

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='001e01c40df5$b53cb620$0401a8c0@putte2k' \
    --to=tamlin@algonet.se \
    --cc=jhoger@pobox.com \
    --cc=qemu-devel@nongnu.org \
    --cc=stegefin@free.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).