[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 03/11] S/390 fake TCG implementation
From: |
Alexander Graf |
Subject: |
Re: [Qemu-devel] [PATCH 03/11] S/390 fake TCG implementation |
Date: |
Wed, 2 Dec 2009 09:44:01 +0100 |
On 02.12.2009, at 09:41, Aurelien Jarno wrote:
> On Wed, Dec 02, 2009 at 09:29:59AM +0100, Alexander Graf wrote:
>>
>> On 02.12.2009, at 09:16, Aurelien Jarno wrote:
>>
>>> On Mon, Nov 30, 2009 at 11:27:53PM +0100, Alexander Graf wrote:
>>>>
>>>> On 30.11.2009, at 19:18, Aurelien Jarno wrote:
>>>>
>>>>> On Thu, Nov 26, 2009 at 02:23:12PM +0100, Alexander Graf wrote:
>>>>>> Qemu won't let us run a KVM target without having host TCG support.
>>>>>> Well, for
>>>>>> now we don't have any so let's implement a fake target that only stubs
>>>>>> out
>>>>>> everything.
>>>>>>
>>>>>> I tried to keep the patch as close to Uli's source as possible, so
>>>>>> whenever
>>>>>> he feels like it he can easily diff his version against this one.
>>>>>
>>>>> Please find the comments below.
>>>>>
>>>>>> Signed-off-by: Alexander Graf <address@hidden>
>>>>>> ---
>>>>>> dyngen-exec.h | 2 +-
>>>>>> target-s390x/helper.c | 5 ++
>>>>>> tcg/s390/tcg-target.c | 103
>>>>>> +++++++++++++++++++++++++++++++++++++++++++++++++
>>>>>> tcg/s390/tcg-target.h | 48 +++++++++++++++++++++++
>>>>>> 4 files changed, 157 insertions(+), 1 deletions(-)
>>>>>> create mode 100644 tcg/s390/tcg-target.c
>>>>>> create mode 100644 tcg/s390/tcg-target.h
>>>>>>
>>>>>> diff --git a/dyngen-exec.h b/dyngen-exec.h
>>>>>> index 86e61c3..0353f36 100644
>>>>>> --- a/dyngen-exec.h
>>>>>> +++ b/dyngen-exec.h
>>>>>> @@ -117,7 +117,7 @@ extern int printf(const char *, ...);
>>>>>>
>>>>>> /* The return address may point to the start of the next instruction.
>>>>>> Subtracting one gets us the call instruction itself. */
>>>>>> -#if defined(__s390__)
>>>>>> +#if defined(__s390__) && !defined(__s390x__)
>>>>>> # define GETPC() ((void*)(((unsigned long)__builtin_return_address(0) &
>>>>>> 0x7fffffffUL) - 1))
>>>>>> #elif defined(__arm__)
>>>>>> /* Thumb return addresses have the low bit set, so we need to subtract
>>>>>> two.
>>>>>> diff --git a/target-s390x/helper.c b/target-s390x/helper.c
>>>>>> index 4e23b4a..0e222e3 100644
>>>>>> --- a/target-s390x/helper.c
>>>>>> +++ b/target-s390x/helper.c
>>>>>> @@ -44,6 +44,11 @@ CPUS390XState *cpu_s390x_init(const char *cpu_model)
>>>>>> return env;
>>>>>> }
>>>>>>
>>>>>> +target_phys_addr_t cpu_get_phys_page_debug(CPUState *env, target_ulong
>>>>>> addr)
>>>>>> +{
>>>>>> + return addr;
>>>>>> +}
>>>>>> +
>>>>>
>>>>> Why does it appear in this patch? It has nothing to do with TCG support.
>>>>
>>>> I don't remember. What is this used for anyways?
>>>
>>> If it is not used, maybe it's better to remove it.
>>
>> It's called from exec.c.
>
> Then it's clearly not part of this patch, it should probably be part of
> patch 1 or 6 instead.
Yes, moved it already.
Alex