On 08/09/2011 02:39 PM, Christoffer Dall wrote:
>>  +
>>  +static u32 ls_instr[NUM_LS_INSTR][2] = {
>>  +     {0x04700000, 0x0d700000}, /* LDRBT */
>>  +     {0x04300000, 0x0d700000}, /* LDRT  */
>>  +     {0x04100000, 0x0c500000}, /* LDR   */
>>  +     {0x04500000, 0x0c500000}, /* LDRB  */
>>  +     {0x000000d0, 0x0e1000f0}, /* LDRD  */
>>  +     {0x01900090, 0x0ff000f0}, /* LDREX */
>>  +     {0x001000b0, 0x0e1000f0}, /* LDRH  */
>>  +     {0x001000d0, 0x0e1000f0}, /* LDRSB */
>>  +     {0x001000f0, 0x0e1000f0}, /* LDRSH */
>>  +     {0x04600000, 0x0d700000}, /* STRBT */
>>  +     {0x04200000, 0x0d700000}, /* STRT  */
>>  +     {0x04000000, 0x0c500000}, /* STR   */
>>  +     {0x04400000, 0x0c500000}, /* STRB  */
>>  +     {0x000000f0, 0x0e1000f0}, /* STRD  */
>>  +     {0x01800090, 0x0ff000f0}, /* STREX */
>>  +     {0x000000b0, 0x0e1000f0}  /* STRH  */
>>  +};
>>  +
>
>  Okay, maybe not.  But surely there's some clever arithmetic the cpu uses to 
decode this.

Probably, but this is only used in the rare case when the virt. extensions 
doesn't support the fault information. I highly doubt that this is in any 
critical path for any sane guest OS, but surely one could write a VM that would 
run very slow. I would like not to spend time on this right now and perhaps get 
back to it when we have all sorts of other features in place. Or, what do you 
think?

It's the ordinary case of premature optimization that afflicts even the best of us. Best to keep it simple.

--
error compiling committee.c: too many arguments to function

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to