target-ppc: add extended opcodes for dcbt/dcbtst
commit3f34cf910cbc4e77d25a300d8c290ae50bdcc2ed
authorCédric Le Goater <clg@fr.ibm.com>
Thu, 20 Feb 2014 13:20:35 +0000 (20 14:20 +0100)
committerAlexander Graf <agraf@suse.de>
Wed, 5 Mar 2014 02:06:48 +0000 (5 03:06 +0100)
tree537f5643abb8ff41e50cf7f1213bef96219a1769
parent61de36761b565a4138d8ad7ec75489ab28fe84b6
target-ppc: add extended opcodes for dcbt/dcbtst

The latest glibc provides a memrchr routine using an extended opcode
of the 'dcbt' instruction :

00000000000a7cc0 <memrchr>:
   a7cc0:       11 00 4c 3c     addis   r2,r12,17
   a7cc4:       b8 f8 42 38     addi    r2,r2,-1864
   a7cc8:       14 2a e3 7c     add     r7,r3,r5
   a7ccc:       d0 00 07 7c     neg     r0,r7
   a7cd0:       ff ff e7 38     addi    r7,r7,-1
   a7cd4:       78 1b 6a 7c     mr      r10,r3
   a7cd8:       24 06 e6 78     rldicr  r6,r7,0,56
   a7cdc:       60 00 20 39     li      r9,96
   a7ce0:       2c 32 09 7e     dcbtt   r9,r6
   ....

which breaks grep, and other commands, in TCG mode :

   invalid bits: 02000000 for opcode: 1f - 16 - 08 (7e09322c00003fff799feca0

This patch adds the extended opcodes for dcbt/dcbtst as no-ops just
like the 'dcbt' instruction.

Signed-off-by: Cédric Le Goater <clg@fr.ibm.com>
Signed-off-by: Alexander Graf <agraf@suse.de>
target-ppc/translate.c