On Thu, Mar 13, 2014 at 1:41 PM, Jacob Bramley <[email protected]>wrote:
> I have had to debug things caused by strict aliasing problems in the > past, and it wasn't easy to track down the cause. Nonetheless, the > problems are rare in practice, as you say. > Same experience here, but why do you think it is safe for the ARM emulator and not for the A64 emulator? If one is really, really scared about the aliasing rules, I think some casting via char* (which aliases everything) and/or some inline asm can do the trick, too. But if we do this, we should do this consistently on all simulators, and it will be ugly (because the underlying design is ugly). > Also, some of the memcpy uses in the CL are completely optimised away. > In those cases, there's no good reason to use a reinterpret_cast so they > should probably stay. > For something as performance-sensitive as a simulator, I think some hacks are worth the trouble. The CL shaves away more than 1min of developer time per quickcheck run and more than half an hour on the bots. > > The *right* way of doing this is either throwing away the useless > > distinction > > between Instr and Instruction or make Instruction carry an Instr as a > member > > field, but this would probably be a bigger change. If somebody has time > > left it > > can be done, but in the meantime let's speed up our daily work. > Hmmm, no reply to the *real* fix...? ;-) -- -- v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups "v8-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
