mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-09 02:24:58 -06:00
target/microblaze: Convert dec_add to decodetree
Adds infrastrucure for translation of instructions, which could not be added before their first use. Cache a temporary which represents r0 as the immediate 0 value, or a sink. Move the special case of opcode_0_illegal from old_decode() into decodetree as well, lest this get interpreted as add. Tested-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com> Reviewed-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
parent
44d1432ba2
commit
2080017965
2 changed files with 178 additions and 43 deletions
|
@ -16,3 +16,27 @@
|
|||
# You should have received a copy of the GNU Lesser General Public
|
||||
# License along with this library; if not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
&typea rd ra rb
|
||||
&typeb rd ra imm
|
||||
|
||||
# Include any IMM prefix in the value reported.
|
||||
%extimm 0:s16 !function=typeb_imm
|
||||
|
||||
@typea ...... rd:5 ra:5 rb:5 ... .... .... &typea
|
||||
@typeb ...... rd:5 ra:5 ................ &typeb imm=%extimm
|
||||
|
||||
###
|
||||
|
||||
{
|
||||
zero 000000 00000 00000 00000 000 0000 0000
|
||||
add 000000 ..... ..... ..... 000 0000 0000 @typea
|
||||
}
|
||||
addc 000010 ..... ..... ..... 000 0000 0000 @typea
|
||||
addk 000100 ..... ..... ..... 000 0000 0000 @typea
|
||||
addkc 000110 ..... ..... ..... 000 0000 0000 @typea
|
||||
|
||||
addi 001000 ..... ..... ................ @typeb
|
||||
addic 001010 ..... ..... ................ @typeb
|
||||
addik 001100 ..... ..... ................ @typeb
|
||||
addikc 001110 ..... ..... ................ @typeb
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue