Ivan,

having a common simulator base class and subclasses for ARM and Thumb2
turned out to be more tricky than expected. I have started creating a common
base class for the thumb2 and arm simulator (in a separate svn client), but
I would also need to add common base classes for the debugger and
disassembler. Moreover, I no longer think this can be done in a reasonable
way without adding virtual methods, due to the way how the classes
interact.

Maybe a better way to avoid the code duplication in the simulator would be
to add thumb2 support to the existing simulator / debugger / disassembler?
Alternatively, we could keep the duplication for now, and remove ARM support
from the Thumb2 simulator later, when we have implemented full Thumb2
support in the assembler. I think I would prefer an integrated simulator.

Stefan

On Tue, Feb 16, 2010 at 12:21 PM, Stefan Haustein <[email protected]>wrote:

> On Tue, Feb 16, 2010 at 6:51 AM, <[email protected]> wrote:
>
>> I guess I do not understand the motivation to add a complete duplicate
>> copy of
>> the simulator to the system. Can you please elaborate your plans in that
>> respect?
>>
>
> The plan was to keep the new stuff completely separate for now, given that
> we may want to replace ARM code generation with Thumb2 code generation at
> some point. Keeping the simulators separate would also minimize interference
> with the existing ARM code while working on Thumb2.
>
> However, I am happy to extract the common simulator code to a shared base
> class, or to just add Thumb2 support to the existing ARM simulator. I think
> I would prefer a common base class for now. A common base class would reduce
> the duplicated code significantly while keeping interference between T2 and
> ARM development minimal. And we would not need virtual methods, so it should
> not have any performance impact.
>
> Stefan
>
>
>> Thanks,
>> -Ivan
>>
>>
>>
>> http://codereview.chromium.org/601028
>>
>
>
>
> --
> Stefan Haustein
> Google UK Limited
>
> Registered Office: Belgrave House, 76 Buckingham Palace Road, London SW1W
> 9TQ; Registered in England Number: 3977902
>
>


-- 
Stefan Haustein
Google UK Limited

Registered Office: Belgrave House, 76 Buckingham Palace Road, London SW1W
9TQ; Registered in England Number: 3977902

-- 
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to