break;
case 0x2DF: { // mftgpr (move floating-point to general purpose register)
+ /* The mftgpr instruction was deprecated in Power 7, 2009 timeframe.
+ Leaving support in Valgrind for now (9/10/2021). Can remove the
+ mftgpr support in Valgrind if the opcode ever gets reused. */
IRTemp frB = newTemp(Ity_F64);
DIP("mftgpr r%u,fr%u\n", rS_addr, rB_addr);
}
case 0x25F: { // mffgpr (move floating-point from general purpose register)
+ /* The mffgpr instruction was deprecated in Power 7, 2009 timeframe.
+ Leaving support in Valgrind for now (9/10/2021). Can remove the
+ mftgpr support in Valgrind if the opcode ever gets reused. */
IRTemp frA = newTemp(Ity_F64);
DIP("mffgpr fr%u,r%u\n", rS_addr, rB_addr);
tw_td.stderr.exp tw_td.stdout.exp tw_td.vgtest \
opcodes.h \
power6_bcmp.stderr.exp power6_bcmp.stdout.exp power6_bcmp.vgtest \
- power6_mf_gpr.stderr.exp power6_mf_gpr.stdout.exp power6_mf_gpr.vgtest \
test_isa_2_06_part1.stderr.exp test_isa_2_06_part1.stdout.exp test_isa_2_06_part1.vgtest \
test_isa_2_06_part1.stdout.exp-LE \
test_isa_2_06_part2.stderr.exp test_isa_2_06_part2.stdout.exp test_isa_2_06_part2.vgtest \
test_isa_3_1_Misc test_isa_3_1_AT \
subnormal_test test_darn_inst test_copy_paste \
test_tm test_touch_tm data-cache-instructions \
- power6_mf_gpr std_reg_imm \
+ std_reg_imm \
twi_tdi tw_td power6_bcmp scv_test
# lmw, stmw, lswi, lswx, stswi, stswx compile (and run) only on big endian.
+++ /dev/null
-/* Copyright (C) 2007 IBM
-
- Author: Pete Eberlein eberlein@us.ibm.com
-
- This program is free software; you can redistribute it and/or
- modify it under the terms of the GNU General Public License as
- published by the Free Software Foundation; either version 2 of the
- License, or (at your option) any later version.
-
- This program is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, see <http://www.gnu.org/licenses/>.
-
- The GNU General Public License is contained in the file COPYING.
-*/
-
-#include <stdio.h>
-#include <string.h>
-
-
-
-int main(int argc, char *argv[])
-{
-
- long i;
- double f;
-
- i = 0;
- f = 100.0;
-
- printf("%lx %f\n", i, f);
-
- asm("mftgpr %0, %1\n": "=r"(i):"f"(f));
-
- f = 0.0;
- printf("%lx %f\n", i, f);
-
- asm("mffgpr %0, %1\n": "=f"(f):"r"(i));
-
- printf("%lx %f\n", i, f);
-
- return 0;
-}
+++ /dev/null
-0 100.000000
-4059000000000000 0.000000
-4059000000000000 100.000000
+++ /dev/null
-prog: power6_mf_gpr