s390: First round of changes to support the PFPO insn.
Support these IROps:
Iop_F64toD64, Iop_D64toF64
Iop_F64toD128, Iop_D128toF64,
Iop_F128toD128, Iop_D128toF128,

Patch by Maran Pakkirisamy (maranp@linux.vnet.ibm.com).
Part of fixing BZ #307113


git-svn-id: svn://svn.valgrind.org/vex/trunk@2719 8f6e269a-dfd6-0310-a8e1-e2731360e62c
diff --git a/priv/main_main.c b/priv/main_main.c
index 1be918c..a2920fe 100644
--- a/priv/main_main.c
+++ b/priv/main_main.c
@@ -1132,6 +1132,12 @@
         return "Encountered an instruction that requires the floating "
                "point extension facility.\n"
                "  That facility is not available on this host";
+     case EmFail_S390X_invalid_PFPO_rounding_mode:
+        return "The rounding mode specified in GPR 0 for PFPO instruction"
+               " is invalid";
+     case EmFail_S390X_invalid_PFPO_function:
+        return "The function code specified in GPR 0 for PFPO instruction"
+               " is invalid";
      default: 
         vpanic("LibVEX_EmNote_string: unknown warning");
    }
@@ -1384,6 +1390,7 @@
       { VEX_HWCAPS_S390X_STCKF, "stckf" },
       { VEX_HWCAPS_S390X_FPEXT, "fpext" },
       { VEX_HWCAPS_S390X_LSC,   "lsc" },
+      { VEX_HWCAPS_S390X_PFPO,  "pfpo" },
    };
 #define NUM_HWCAPS (sizeof hwcaps_list / sizeof hwcaps_list[0])
    static HChar buf[sizeof prefix +