summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorClement Courbet <courbet@google.com>2018-05-31 14:22:01 +0000
committerClement Courbet <courbet@google.com>2018-05-31 14:22:01 +0000
commit2e41c5a79c164250751c76da332e2f7dac9e646e (patch)
treedc7714107659cbf5a7de0add3532517240057cb9
parent62716803fee62f8c02701814d4c08e5734a146cf (diff)
downloadbcm5719-llvm-2e41c5a79c164250751c76da332e2f7dac9e646e.tar.gz
bcm5719-llvm-2e41c5a79c164250751c76da332e2f7dac9e646e.zip
[X86] Introduce WriteFLDC for x87 constant loads.
Summary: {FLDL2E, FLDL2T, FLDLG2, FLDLN2, FLDPI} were using WriteMicrocoded. - I've measured the values for Broadwell, Haswell, SandyBridge, Skylake. - For ZnVer1 and Atom, values were transferred form InstRWs. - For SLM and BtVer2, I've guessed some values :( Reviewers: RKSimon, craig.topper, andreadb Subscribers: gbedwell, llvm-commits Differential Revision: https://reviews.llvm.org/D47585 llvm-svn: 333656
-rw-r--r--llvm/lib/Target/X86/X86InstrFPStack.td13
-rwxr-xr-xllvm/lib/Target/X86/X86SchedBroadwell.td1
-rw-r--r--llvm/lib/Target/X86/X86SchedHaswell.td4
-rw-r--r--llvm/lib/Target/X86/X86SchedSandyBridge.td1
-rw-r--r--llvm/lib/Target/X86/X86SchedSkylakeClient.td1
-rwxr-xr-xllvm/lib/Target/X86/X86SchedSkylakeServer.td1
-rw-r--r--llvm/lib/Target/X86/X86Schedule.td1
-rw-r--r--llvm/lib/Target/X86/X86ScheduleAtom.td2
-rw-r--r--llvm/lib/Target/X86/X86ScheduleBtVer2.td1
-rw-r--r--llvm/lib/Target/X86/X86ScheduleSLM.td1
-rw-r--r--llvm/lib/Target/X86/X86ScheduleZnver1.td2
-rw-r--r--llvm/test/CodeGen/X86/x87-schedule.ll70
-rw-r--r--llvm/test/tools/llvm-mca/X86/Broadwell/resources-x87.s22
-rw-r--r--llvm/test/tools/llvm-mca/X86/BtVer2/resources-x87.s22
-rw-r--r--llvm/test/tools/llvm-mca/X86/Haswell/resources-x87.s22
-rw-r--r--llvm/test/tools/llvm-mca/X86/SLM/resources-x87.s22
-rw-r--r--llvm/test/tools/llvm-mca/X86/SandyBridge/resources-x87.s22
-rw-r--r--llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-x87.s22
-rw-r--r--llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-x87.s22
19 files changed, 130 insertions, 122 deletions
diff --git a/llvm/lib/Target/X86/X86InstrFPStack.td b/llvm/lib/Target/X86/X86InstrFPStack.td
index bbfe7b2a316..cc81a919ec9 100644
--- a/llvm/lib/Target/X86/X86InstrFPStack.td
+++ b/llvm/lib/Target/X86/X86InstrFPStack.td
@@ -570,6 +570,14 @@ def LD_F0 : FPI<0xD9, MRM_EE, (outs), (ins), "fldz">;
let SchedRW = [WriteFLD1] in
def LD_F1 : FPI<0xD9, MRM_E8, (outs), (ins), "fld1">;
+let SchedRW = [WriteFLDC], Defs = [FPSW] in {
+def FLDL2T : I<0xD9, MRM_E9, (outs), (ins), "fldl2t", []>;
+def FLDL2E : I<0xD9, MRM_EA, (outs), (ins), "fldl2e", []>;
+def FLDPI : I<0xD9, MRM_EB, (outs), (ins), "fldpi", []>;
+def FLDLG2 : I<0xD9, MRM_EC, (outs), (ins), "fldlg2", []>;
+def FLDLN2 : I<0xD9, MRM_ED, (outs), (ins), "fldln2", []>;
+} // SchedRW
+
// Floating point compares.
let SchedRW = [WriteFCom] in {
def UCOM_Fpr32 : FpIf32<(outs), (ins RFP32:$lhs, RFP32:$rhs), CompareFP,
@@ -649,11 +657,6 @@ let SchedRW = [WriteMicrocoded] in {
let Defs = [FPSW] in {
def WAIT : I<0x9B, RawFrm, (outs), (ins), "wait", []>;
def FXAM : I<0xD9, MRM_E5, (outs), (ins), "fxam", []>;
-def FLDL2T : I<0xD9, MRM_E9, (outs), (ins), "fldl2t", []>;
-def FLDL2E : I<0xD9, MRM_EA, (outs), (ins), "fldl2e", []>;
-def FLDPI : I<0xD9, MRM_EB, (outs), (ins), "fldpi", []>;
-def FLDLG2 : I<0xD9, MRM_EC, (outs), (ins), "fldlg2", []>;
-def FLDLN2 : I<0xD9, MRM_ED, (outs), (ins), "fldln2", []>;
def F2XM1 : I<0xD9, MRM_F0, (outs), (ins), "f2xm1", []>;
def FYL2X : I<0xD9, MRM_F1, (outs), (ins), "fyl2x", []>;
def FPTAN : I<0xD9, MRM_F2, (outs), (ins), "fptan", []>;
diff --git a/llvm/lib/Target/X86/X86SchedBroadwell.td b/llvm/lib/Target/X86/X86SchedBroadwell.td
index f5acb74c098..1e5a6e3bb7d 100755
--- a/llvm/lib/Target/X86/X86SchedBroadwell.td
+++ b/llvm/lib/Target/X86/X86SchedBroadwell.td
@@ -168,6 +168,7 @@ defm : BWWriteResPair<WriteJump, [BWPort06], 1>;
// Floating point. This covers both scalar and vector operations.
defm : X86WriteRes<WriteFLD0, [BWPort01], 1, [1], 1>;
defm : X86WriteRes<WriteFLD1, [BWPort01], 1, [2], 2>;
+defm : X86WriteRes<WriteFLDC, [BWPort01], 1, [2], 2>;
defm : X86WriteRes<WriteFLoad, [BWPort23], 5, [1], 1>;
defm : X86WriteRes<WriteFLoadX, [BWPort23], 5, [1], 1>;
defm : X86WriteRes<WriteFLoadY, [BWPort23], 6, [1], 1>;
diff --git a/llvm/lib/Target/X86/X86SchedHaswell.td b/llvm/lib/Target/X86/X86SchedHaswell.td
index 70706b623f3..7517f4c8246 100644
--- a/llvm/lib/Target/X86/X86SchedHaswell.td
+++ b/llvm/lib/Target/X86/X86SchedHaswell.td
@@ -158,6 +158,7 @@ defm : HWWriteResPair<WriteIDiv64, [HWPort0, HWDivider], 25, [1,10], 1, 4>;
// Scalar and vector floating point.
defm : X86WriteRes<WriteFLD0, [HWPort01], 1, [1], 1>;
defm : X86WriteRes<WriteFLD1, [HWPort01], 1, [2], 2>;
+defm : X86WriteRes<WriteFLDC, [HWPort01], 1, [2], 2>;
defm : X86WriteRes<WriteFLoad, [HWPort23], 5, [1], 1>;
defm : X86WriteRes<WriteFLoadX, [HWPort23], 6, [1], 1>;
defm : X86WriteRes<WriteFLoadY, [HWPort23], 7, [1], 1>;
@@ -659,9 +660,6 @@ def : InstRW<[HWWriteFBLD], (instregex "FBLDm")>;
// r.
def : InstRW<[HWWriteP01], (instregex "ST_(F|FP)rr")>;
-// FLDPI FLDL2E etc.
-def : InstRW<[HWWrite2P01], (instregex "FLDPI", "FLDL2(T|E)", "FLDL(G|N)2")>;
-
// FFREE.
def : InstRW<[HWWriteP01], (instregex "FFREE")>;
diff --git a/llvm/lib/Target/X86/X86SchedSandyBridge.td b/llvm/lib/Target/X86/X86SchedSandyBridge.td
index c13212d16b1..5387250f5af 100644
--- a/llvm/lib/Target/X86/X86SchedSandyBridge.td
+++ b/llvm/lib/Target/X86/X86SchedSandyBridge.td
@@ -150,6 +150,7 @@ defm : SBWriteResPair<WriteBZHI, [SBPort1], 1>;
// Scalar and vector floating point.
defm : X86WriteRes<WriteFLD0, [SBPort5], 1, [1], 1>;
defm : X86WriteRes<WriteFLD1, [SBPort0,SBPort5], 1, [1,1], 2>;
+defm : X86WriteRes<WriteFLDC, [SBPort0,SBPort1], 1, [1,1], 2>;
defm : X86WriteRes<WriteFLoad, [SBPort23], 5, [1], 1>;
defm : X86WriteRes<WriteFLoadX, [SBPort23], 6, [1], 1>;
defm : X86WriteRes<WriteFLoadY, [SBPort23], 7, [1], 1>;
diff --git a/llvm/lib/Target/X86/X86SchedSkylakeClient.td b/llvm/lib/Target/X86/X86SchedSkylakeClient.td
index 64c0b79c2da..16ce18d9714 100644
--- a/llvm/lib/Target/X86/X86SchedSkylakeClient.td
+++ b/llvm/lib/Target/X86/X86SchedSkylakeClient.td
@@ -163,6 +163,7 @@ defm : SKLWriteResPair<WriteJump, [SKLPort06], 1>;
// Floating point. This covers both scalar and vector operations.
defm : X86WriteRes<WriteFLD0, [SKLPort05], 1, [1], 1>;
defm : X86WriteRes<WriteFLD1, [SKLPort05], 1, [2], 2>;
+defm : X86WriteRes<WriteFLDC, [SKLPort05], 1, [2], 2>;
defm : X86WriteRes<WriteFLoad, [SKLPort23], 5, [1], 1>;
defm : X86WriteRes<WriteFLoadX, [SKLPort23], 6, [1], 1>;
defm : X86WriteRes<WriteFLoadY, [SKLPort23], 7, [1], 1>;
diff --git a/llvm/lib/Target/X86/X86SchedSkylakeServer.td b/llvm/lib/Target/X86/X86SchedSkylakeServer.td
index 88376a4285b..8ee58e78109 100755
--- a/llvm/lib/Target/X86/X86SchedSkylakeServer.td
+++ b/llvm/lib/Target/X86/X86SchedSkylakeServer.td
@@ -163,6 +163,7 @@ defm : SKXWriteResPair<WriteJump, [SKXPort06], 1>;
// Floating point. This covers both scalar and vector operations.
defm : X86WriteRes<WriteFLD0, [SKXPort05], 1, [1], 1>;
defm : X86WriteRes<WriteFLD1, [SKXPort05], 1, [2], 2>;
+defm : X86WriteRes<WriteFLDC, [SKXPort05], 1, [2], 2>;
defm : X86WriteRes<WriteFLoad, [SKXPort23], 5, [1], 1>;
defm : X86WriteRes<WriteFLoadX, [SKXPort23], 6, [1], 1>;
defm : X86WriteRes<WriteFLoadY, [SKXPort23], 7, [1], 1>;
diff --git a/llvm/lib/Target/X86/X86Schedule.td b/llvm/lib/Target/X86/X86Schedule.td
index ad316905044..ccee972c482 100644
--- a/llvm/lib/Target/X86/X86Schedule.td
+++ b/llvm/lib/Target/X86/X86Schedule.td
@@ -143,6 +143,7 @@ defm WriteJump : X86SchedWritePair;
// Floating point. This covers both scalar and vector operations.
def WriteFLD0 : SchedWrite;
def WriteFLD1 : SchedWrite;
+def WriteFLDC : SchedWrite;
def WriteFLoad : SchedWrite;
def WriteFLoadX : SchedWrite;
def WriteFLoadY : SchedWrite;
diff --git a/llvm/lib/Target/X86/X86ScheduleAtom.td b/llvm/lib/Target/X86/X86ScheduleAtom.td
index ecdd60deff5..2eee8520c5a 100644
--- a/llvm/lib/Target/X86/X86ScheduleAtom.td
+++ b/llvm/lib/Target/X86/X86ScheduleAtom.td
@@ -605,7 +605,7 @@ def AtomWrite01_10 : SchedWriteRes<[AtomPort01]> {
let Latency = 10;
let ResourceCycles = [10];
}
-def : InstRW<[AtomWrite01_10], (instrs FLDL2E, FLDL2T, FLDLG2, FLDLN2, FLDPI)>;
+def : SchedAlias<WriteFLDC, AtomWrite01_10>;
def : InstRW<[AtomWrite01_10], (instregex "(U)?COMIS(D|S)rm",
"CVT(T)?SS2SI64rm(_Int)?")>;
diff --git a/llvm/lib/Target/X86/X86ScheduleBtVer2.td b/llvm/lib/Target/X86/X86ScheduleBtVer2.td
index 81a1fd0d491..764d097e369 100644
--- a/llvm/lib/Target/X86/X86ScheduleBtVer2.td
+++ b/llvm/lib/Target/X86/X86ScheduleBtVer2.td
@@ -273,6 +273,7 @@ def : WriteRes<WriteNop, [JALU01]> { let Latency = 1; }
defm : X86WriteRes<WriteFLD0, [JFPU1, JSTC], 3, [1,1], 1>;
defm : X86WriteRes<WriteFLD1, [JFPU1, JSTC], 3, [1,1], 1>;
+defm : X86WriteRes<WriteFLDC, [JFPU1, JSTC], 3, [1,1], 1>;
defm : X86WriteRes<WriteFLoad, [JLAGU, JFPU01, JFPX], 5, [1, 1, 1], 1>;
defm : X86WriteRes<WriteFLoadX, [JLAGU, JFPU01, JFPX], 5, [1, 1, 1], 1>;
defm : X86WriteRes<WriteFLoadY, [JLAGU, JFPU01, JFPX], 5, [1, 1, 1], 1>;
diff --git a/llvm/lib/Target/X86/X86ScheduleSLM.td b/llvm/lib/Target/X86/X86ScheduleSLM.td
index 94bd6e93e6d..8fdf9c645c4 100644
--- a/llvm/lib/Target/X86/X86ScheduleSLM.td
+++ b/llvm/lib/Target/X86/X86ScheduleSLM.td
@@ -138,6 +138,7 @@ defm : SLMWriteResPair<WriteIDiv64, [SLM_IEC_RSV01, SLMDivider], 25, [1,25], 1,
// Scalar and vector floating point.
defm : X86WriteRes<WriteFLD0, [SLM_FPC_RSV01], 1, [1], 1>;
defm : X86WriteRes<WriteFLD1, [SLM_FPC_RSV01], 1, [1], 1>;
+defm : X86WriteRes<WriteFLDC, [SLM_FPC_RSV01], 1, [2], 2>;
def : WriteRes<WriteFLoad, [SLM_MEC_RSV]> { let Latency = 3; }
def : WriteRes<WriteFLoadX, [SLM_MEC_RSV]> { let Latency = 3; }
def : WriteRes<WriteFLoadY, [SLM_MEC_RSV]> { let Latency = 3; }
diff --git a/llvm/lib/Target/X86/X86ScheduleZnver1.td b/llvm/lib/Target/X86/X86ScheduleZnver1.td
index b2bf66b7bec..4450bf6b114 100644
--- a/llvm/lib/Target/X86/X86ScheduleZnver1.td
+++ b/llvm/lib/Target/X86/X86ScheduleZnver1.td
@@ -821,7 +821,7 @@ def : SchedAlias<WriteFLD0, ZnWriteFPU13>;
def : SchedAlias<WriteFLD1, ZnWriteFPU3>;
// FLDPI FLDL2E etc.
-def : InstRW<[ZnWriteFPU3], (instregex "FLDPI", "FLDL2(T|E)", "FLDL(G|N)2")>;
+def : SchedAlias<WriteFLDC, ZnWriteFPU3>;
// FNSTSW.
// AX.
diff --git a/llvm/test/CodeGen/X86/x87-schedule.ll b/llvm/test/CodeGen/X86/x87-schedule.ll
index b41dc2bf851..d24d88527dc 100644
--- a/llvm/test/CodeGen/X86/x87-schedule.ll
+++ b/llvm/test/CodeGen/X86/x87-schedule.ll
@@ -2850,11 +2850,11 @@ define void @test_fld1_fldl2e_fldl2t_fldlg2_fldln2_fldpi_fldz() optsize {
; SLM: # %bb.0:
; SLM-NEXT: #APP
; SLM-NEXT: fld1 # sched: [1:0.50]
-; SLM-NEXT: fldl2e # sched: [100:1.00]
-; SLM-NEXT: fldl2t # sched: [100:1.00]
-; SLM-NEXT: fldlg2 # sched: [100:1.00]
-; SLM-NEXT: fldln2 # sched: [100:1.00]
-; SLM-NEXT: fldpi # sched: [100:1.00]
+; SLM-NEXT: fldl2e # sched: [1:1.00]
+; SLM-NEXT: fldl2t # sched: [1:1.00]
+; SLM-NEXT: fldlg2 # sched: [1:1.00]
+; SLM-NEXT: fldln2 # sched: [1:1.00]
+; SLM-NEXT: fldpi # sched: [1:1.00]
; SLM-NEXT: fldz # sched: [1:0.50]
; SLM-NEXT: #NO_APP
; SLM-NEXT: retl # sched: [4:1.00]
@@ -2863,11 +2863,11 @@ define void @test_fld1_fldl2e_fldl2t_fldlg2_fldln2_fldpi_fldz() optsize {
; SANDY: # %bb.0:
; SANDY-NEXT: #APP
; SANDY-NEXT: fld1 # sched: [1:1.00]
-; SANDY-NEXT: fldl2e # sched: [100:0.33]
-; SANDY-NEXT: fldl2t # sched: [100:0.33]
-; SANDY-NEXT: fldlg2 # sched: [100:0.33]
-; SANDY-NEXT: fldln2 # sched: [100:0.33]
-; SANDY-NEXT: fldpi # sched: [100:0.33]
+; SANDY-NEXT: fldl2e # sched: [1:1.00]
+; SANDY-NEXT: fldl2t # sched: [1:1.00]
+; SANDY-NEXT: fldlg2 # sched: [1:1.00]
+; SANDY-NEXT: fldln2 # sched: [1:1.00]
+; SANDY-NEXT: fldpi # sched: [1:1.00]
; SANDY-NEXT: fldz # sched: [1:1.00]
; SANDY-NEXT: #NO_APP
; SANDY-NEXT: retl # sched: [6:1.00]
@@ -2876,11 +2876,11 @@ define void @test_fld1_fldl2e_fldl2t_fldlg2_fldln2_fldpi_fldz() optsize {
; HASWELL: # %bb.0:
; HASWELL-NEXT: #APP
; HASWELL-NEXT: fld1 # sched: [1:1.00]
-; HASWELL-NEXT: fldl2e # sched: [1:0.50]
-; HASWELL-NEXT: fldl2t # sched: [1:0.50]
-; HASWELL-NEXT: fldlg2 # sched: [1:0.50]
-; HASWELL-NEXT: fldln2 # sched: [1:0.50]
-; HASWELL-NEXT: fldpi # sched: [1:0.50]
+; HASWELL-NEXT: fldl2e # sched: [1:1.00]
+; HASWELL-NEXT: fldl2t # sched: [1:1.00]
+; HASWELL-NEXT: fldlg2 # sched: [1:1.00]
+; HASWELL-NEXT: fldln2 # sched: [1:1.00]
+; HASWELL-NEXT: fldpi # sched: [1:1.00]
; HASWELL-NEXT: fldz # sched: [1:0.50]
; HASWELL-NEXT: #NO_APP
; HASWELL-NEXT: retl # sched: [7:1.00]
@@ -2889,11 +2889,11 @@ define void @test_fld1_fldl2e_fldl2t_fldlg2_fldln2_fldpi_fldz() optsize {
; BROADWELL: # %bb.0:
; BROADWELL-NEXT: #APP
; BROADWELL-NEXT: fld1 # sched: [1:1.00]
-; BROADWELL-NEXT: fldl2e # sched: [100:0.25]
-; BROADWELL-NEXT: fldl2t # sched: [100:0.25]
-; BROADWELL-NEXT: fldlg2 # sched: [100:0.25]
-; BROADWELL-NEXT: fldln2 # sched: [100:0.25]
-; BROADWELL-NEXT: fldpi # sched: [100:0.25]
+; BROADWELL-NEXT: fldl2e # sched: [1:1.00]
+; BROADWELL-NEXT: fldl2t # sched: [1:1.00]
+; BROADWELL-NEXT: fldlg2 # sched: [1:1.00]
+; BROADWELL-NEXT: fldln2 # sched: [1:1.00]
+; BROADWELL-NEXT: fldpi # sched: [1:1.00]
; BROADWELL-NEXT: fldz # sched: [1:0.50]
; BROADWELL-NEXT: #NO_APP
; BROADWELL-NEXT: retl # sched: [6:0.50]
@@ -2902,11 +2902,11 @@ define void @test_fld1_fldl2e_fldl2t_fldlg2_fldln2_fldpi_fldz() optsize {
; SKYLAKE: # %bb.0:
; SKYLAKE-NEXT: #APP
; SKYLAKE-NEXT: fld1 # sched: [1:1.00]
-; SKYLAKE-NEXT: fldl2e # sched: [100:0.25]
-; SKYLAKE-NEXT: fldl2t # sched: [100:0.25]
-; SKYLAKE-NEXT: fldlg2 # sched: [100:0.25]
-; SKYLAKE-NEXT: fldln2 # sched: [100:0.25]
-; SKYLAKE-NEXT: fldpi # sched: [100:0.25]
+; SKYLAKE-NEXT: fldl2e # sched: [1:1.00]
+; SKYLAKE-NEXT: fldl2t # sched: [1:1.00]
+; SKYLAKE-NEXT: fldlg2 # sched: [1:1.00]
+; SKYLAKE-NEXT: fldln2 # sched: [1:1.00]
+; SKYLAKE-NEXT: fldpi # sched: [1:1.00]
; SKYLAKE-NEXT: fldz # sched: [1:0.50]
; SKYLAKE-NEXT: #NO_APP
; SKYLAKE-NEXT: retl # sched: [6:0.50]
@@ -2915,11 +2915,11 @@ define void @test_fld1_fldl2e_fldl2t_fldlg2_fldln2_fldpi_fldz() optsize {
; SKX: # %bb.0:
; SKX-NEXT: #APP
; SKX-NEXT: fld1 # sched: [1:1.00]
-; SKX-NEXT: fldl2e # sched: [100:0.25]
-; SKX-NEXT: fldl2t # sched: [100:0.25]
-; SKX-NEXT: fldlg2 # sched: [100:0.25]
-; SKX-NEXT: fldln2 # sched: [100:0.25]
-; SKX-NEXT: fldpi # sched: [100:0.25]
+; SKX-NEXT: fldl2e # sched: [1:1.00]
+; SKX-NEXT: fldl2t # sched: [1:1.00]
+; SKX-NEXT: fldlg2 # sched: [1:1.00]
+; SKX-NEXT: fldln2 # sched: [1:1.00]
+; SKX-NEXT: fldpi # sched: [1:1.00]
; SKX-NEXT: fldz # sched: [1:0.50]
; SKX-NEXT: #NO_APP
; SKX-NEXT: retl # sched: [6:0.50]
@@ -2928,11 +2928,11 @@ define void @test_fld1_fldl2e_fldl2t_fldlg2_fldln2_fldpi_fldz() optsize {
; BTVER2: # %bb.0:
; BTVER2-NEXT: #APP
; BTVER2-NEXT: fld1 # sched: [3:1.00]
-; BTVER2-NEXT: fldl2e # sched: [100:0.50]
-; BTVER2-NEXT: fldl2t # sched: [100:0.50]
-; BTVER2-NEXT: fldlg2 # sched: [100:0.50]
-; BTVER2-NEXT: fldln2 # sched: [100:0.50]
-; BTVER2-NEXT: fldpi # sched: [100:0.50]
+; BTVER2-NEXT: fldl2e # sched: [3:1.00]
+; BTVER2-NEXT: fldl2t # sched: [3:1.00]
+; BTVER2-NEXT: fldlg2 # sched: [3:1.00]
+; BTVER2-NEXT: fldln2 # sched: [3:1.00]
+; BTVER2-NEXT: fldpi # sched: [3:1.00]
; BTVER2-NEXT: fldz # sched: [3:1.00]
; BTVER2-NEXT: #NO_APP
; BTVER2-NEXT: retl # sched: [4:1.00]
diff --git a/llvm/test/tools/llvm-mca/X86/Broadwell/resources-x87.s b/llvm/test/tools/llvm-mca/X86/Broadwell/resources-x87.s
index ebc073d691c..4b00932bd42 100644
--- a/llvm/test/tools/llvm-mca/X86/Broadwell/resources-x87.s
+++ b/llvm/test/tools/llvm-mca/X86/Broadwell/resources-x87.s
@@ -282,11 +282,11 @@ fyl2xp1
# CHECK-NEXT: 3 7 1.00 * * fldcw (%eax)
# CHECK-NEXT: 64 60 14.00 * fldenv (%eax)
# CHECK-NEXT: 2 1 1.00 * fld1
-# CHECK-NEXT: 1 100 0.25 * fldl2e
-# CHECK-NEXT: 1 100 0.25 * fldl2t
-# CHECK-NEXT: 1 100 0.25 * fldlg2
-# CHECK-NEXT: 1 100 0.25 * fldln2
-# CHECK-NEXT: 1 100 0.25 * fldpi
+# CHECK-NEXT: 2 1 1.00 * fldl2e
+# CHECK-NEXT: 2 1 1.00 * fldl2t
+# CHECK-NEXT: 2 1 1.00 * fldlg2
+# CHECK-NEXT: 2 1 1.00 * fldln2
+# CHECK-NEXT: 2 1 1.00 * fldpi
# CHECK-NEXT: 1 1 0.50 * fldz
# CHECK-NEXT: 1 5 1.00 * fmul %st(0), %st(1)
# CHECK-NEXT: 1 5 1.00 * fmul %st(2)
@@ -369,7 +369,7 @@ fyl2xp1
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9]
-# CHECK-NEXT: - 9.00 113.17 142.17 49.00 49.00 27.00 60.67 71.00 9.00
+# CHECK-NEXT: - 9.00 116.92 145.92 49.00 49.00 27.00 59.42 69.75 9.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions:
@@ -449,11 +449,11 @@ fyl2xp1
# CHECK-NEXT: - - 1.50 0.50 0.50 0.50 - - - - fldcw (%eax)
# CHECK-NEXT: - - 18.92 11.42 4.00 4.00 - 10.92 14.75 - fldenv (%eax)
# CHECK-NEXT: - - 1.00 1.00 - - - - - - fld1
-# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - fldl2e
-# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - fldl2t
-# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - fldlg2
-# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - fldln2
-# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - fldpi
+# CHECK-NEXT: - - 1.00 1.00 - - - - - - fldl2e
+# CHECK-NEXT: - - 1.00 1.00 - - - - - - fldl2t
+# CHECK-NEXT: - - 1.00 1.00 - - - - - - fldlg2
+# CHECK-NEXT: - - 1.00 1.00 - - - - - - fldln2
+# CHECK-NEXT: - - 1.00 1.00 - - - - - - fldpi
# CHECK-NEXT: - - 0.50 0.50 - - - - - - fldz
# CHECK-NEXT: - - 1.00 - - - - - - - fmul %st(0), %st(1)
# CHECK-NEXT: - - 1.00 - - - - - - - fmul %st(2)
diff --git a/llvm/test/tools/llvm-mca/X86/BtVer2/resources-x87.s b/llvm/test/tools/llvm-mca/X86/BtVer2/resources-x87.s
index 3bc25701b3b..48869c66480 100644
--- a/llvm/test/tools/llvm-mca/X86/BtVer2/resources-x87.s
+++ b/llvm/test/tools/llvm-mca/X86/BtVer2/resources-x87.s
@@ -282,11 +282,11 @@ fyl2xp1
# CHECK-NEXT: 1 5 1.00 * * fldcw (%eax)
# CHECK-NEXT: 1 100 0.50 * fldenv (%eax)
# CHECK-NEXT: 1 3 1.00 * fld1
-# CHECK-NEXT: 1 100 0.50 * fldl2e
-# CHECK-NEXT: 1 100 0.50 * fldl2t
-# CHECK-NEXT: 1 100 0.50 * fldlg2
-# CHECK-NEXT: 1 100 0.50 * fldln2
-# CHECK-NEXT: 1 100 0.50 * fldpi
+# CHECK-NEXT: 1 3 1.00 * fldl2e
+# CHECK-NEXT: 1 3 1.00 * fldl2t
+# CHECK-NEXT: 1 3 1.00 * fldlg2
+# CHECK-NEXT: 1 3 1.00 * fldln2
+# CHECK-NEXT: 1 3 1.00 * fldpi
# CHECK-NEXT: 1 3 1.00 * fldz
# CHECK-NEXT: 1 2 1.00 * fmul %st(0), %st(1)
# CHECK-NEXT: 1 2 1.00 * fmul %st(2)
@@ -373,7 +373,7 @@ fyl2xp1
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13]
-# CHECK-NEXT: 44.50 22.50 - 54.00 349.00 54.00 29.00 39.00 - 13.00 2.00 - - -
+# CHECK-NEXT: 42.00 20.00 - 54.00 349.00 54.00 34.00 39.00 - 13.00 7.00 - - -
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] Instructions:
@@ -453,11 +453,11 @@ fyl2xp1
# CHECK-NEXT: - - - - - - - 1.00 - - - - - - fldcw (%eax)
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - fldenv (%eax)
# CHECK-NEXT: - - - - - - 1.00 - - - 1.00 - - - fld1
-# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - fldl2e
-# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - fldl2t
-# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - fldlg2
-# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - fldln2
-# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - fldpi
+# CHECK-NEXT: - - - - - - 1.00 - - - 1.00 - - - fldl2e
+# CHECK-NEXT: - - - - - - 1.00 - - - 1.00 - - - fldl2t
+# CHECK-NEXT: - - - - - - 1.00 - - - 1.00 - - - fldlg2
+# CHECK-NEXT: - - - - - - 1.00 - - - 1.00 - - - fldln2
+# CHECK-NEXT: - - - - - - 1.00 - - - 1.00 - - - fldpi
# CHECK-NEXT: - - - - - - 1.00 - - - 1.00 - - - fldz
# CHECK-NEXT: - - - - 1.00 - 1.00 - - - - - - - fmul %st(0), %st(1)
# CHECK-NEXT: - - - - 1.00 - 1.00 - - - - - - - fmul %st(2)
diff --git a/llvm/test/tools/llvm-mca/X86/Haswell/resources-x87.s b/llvm/test/tools/llvm-mca/X86/Haswell/resources-x87.s
index badbb3f6c9e..42e4b2dc670 100644
--- a/llvm/test/tools/llvm-mca/X86/Haswell/resources-x87.s
+++ b/llvm/test/tools/llvm-mca/X86/Haswell/resources-x87.s
@@ -282,11 +282,11 @@ fyl2xp1
# CHECK-NEXT: 3 7 1.00 * * fldcw (%eax)
# CHECK-NEXT: 64 61 14.00 * fldenv (%eax)
# CHECK-NEXT: 2 1 1.00 * fld1
-# CHECK-NEXT: 2 1 0.50 * fldl2e
-# CHECK-NEXT: 2 1 0.50 * fldl2t
-# CHECK-NEXT: 2 1 0.50 * fldlg2
-# CHECK-NEXT: 2 1 0.50 * fldln2
-# CHECK-NEXT: 2 1 0.50 * fldpi
+# CHECK-NEXT: 2 1 1.00 * fldl2e
+# CHECK-NEXT: 2 1 1.00 * fldl2t
+# CHECK-NEXT: 2 1 1.00 * fldlg2
+# CHECK-NEXT: 2 1 1.00 * fldln2
+# CHECK-NEXT: 2 1 1.00 * fldpi
# CHECK-NEXT: 1 1 0.50 * fldz
# CHECK-NEXT: 1 5 1.00 * fmul %st(0), %st(1)
# CHECK-NEXT: 1 5 1.00 * fmul %st(2)
@@ -369,7 +369,7 @@ fyl2xp1
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9]
-# CHECK-NEXT: - 17.00 118.92 142.92 49.00 49.00 27.00 56.92 65.25 9.00
+# CHECK-NEXT: - 17.00 121.42 145.42 49.00 49.00 27.00 56.92 65.25 9.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions:
@@ -449,11 +449,11 @@ fyl2xp1
# CHECK-NEXT: - - 1.50 0.50 0.50 0.50 - - - - fldcw (%eax)
# CHECK-NEXT: - - 18.92 11.42 4.00 4.00 - 10.92 14.75 - fldenv (%eax)
# CHECK-NEXT: - - 1.00 1.00 - - - - - - fld1
-# CHECK-NEXT: - - 0.50 0.50 - - - - - - fldl2e
-# CHECK-NEXT: - - 0.50 0.50 - - - - - - fldl2t
-# CHECK-NEXT: - - 0.50 0.50 - - - - - - fldlg2
-# CHECK-NEXT: - - 0.50 0.50 - - - - - - fldln2
-# CHECK-NEXT: - - 0.50 0.50 - - - - - - fldpi
+# CHECK-NEXT: - - 1.00 1.00 - - - - - - fldl2e
+# CHECK-NEXT: - - 1.00 1.00 - - - - - - fldl2t
+# CHECK-NEXT: - - 1.00 1.00 - - - - - - fldlg2
+# CHECK-NEXT: - - 1.00 1.00 - - - - - - fldln2
+# CHECK-NEXT: - - 1.00 1.00 - - - - - - fldpi
# CHECK-NEXT: - - 0.50 0.50 - - - - - - fldz
# CHECK-NEXT: - - 1.00 - - - - - - - fmul %st(0), %st(1)
# CHECK-NEXT: - - 1.00 - - - - - - - fmul %st(2)
diff --git a/llvm/test/tools/llvm-mca/X86/SLM/resources-x87.s b/llvm/test/tools/llvm-mca/X86/SLM/resources-x87.s
index 913bce64d04..26608b5e3d3 100644
--- a/llvm/test/tools/llvm-mca/X86/SLM/resources-x87.s
+++ b/llvm/test/tools/llvm-mca/X86/SLM/resources-x87.s
@@ -282,11 +282,11 @@ fyl2xp1
# CHECK-NEXT: 1 3 1.00 * * fldcw (%eax)
# CHECK-NEXT: 1 100 1.00 * fldenv (%eax)
# CHECK-NEXT: 1 1 0.50 * fld1
-# CHECK-NEXT: 1 100 1.00 * fldl2e
-# CHECK-NEXT: 1 100 1.00 * fldl2t
-# CHECK-NEXT: 1 100 1.00 * fldlg2
-# CHECK-NEXT: 1 100 1.00 * fldln2
-# CHECK-NEXT: 1 100 1.00 * fldpi
+# CHECK-NEXT: 2 1 1.00 * fldl2e
+# CHECK-NEXT: 2 1 1.00 * fldl2t
+# CHECK-NEXT: 2 1 1.00 * fldlg2
+# CHECK-NEXT: 2 1 1.00 * fldln2
+# CHECK-NEXT: 2 1 1.00 * fldpi
# CHECK-NEXT: 1 1 0.50 * fldz
# CHECK-NEXT: 1 5 2.00 * fmul %st(0), %st(1)
# CHECK-NEXT: 1 5 2.00 * fmul %st(2)
@@ -367,7 +367,7 @@ fyl2xp1
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7]
-# CHECK-NEXT: - 312.00 16.00 65.00 56.00 9.50 9.50 52.00
+# CHECK-NEXT: - 312.00 16.00 65.00 61.00 9.50 9.50 52.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] Instructions:
@@ -447,11 +447,11 @@ fyl2xp1
# CHECK-NEXT: - - - - - - - 1.00 fldcw (%eax)
# CHECK-NEXT: - - - 1.00 - - - - fldenv (%eax)
# CHECK-NEXT: - - - 0.50 0.50 - - - fld1
-# CHECK-NEXT: - - - 1.00 - - - - fldl2e
-# CHECK-NEXT: - - - 1.00 - - - - fldl2t
-# CHECK-NEXT: - - - 1.00 - - - - fldlg2
-# CHECK-NEXT: - - - 1.00 - - - - fldln2
-# CHECK-NEXT: - - - 1.00 - - - - fldpi
+# CHECK-NEXT: - - - 1.00 1.00 - - - fldl2e
+# CHECK-NEXT: - - - 1.00 1.00 - - - fldl2t
+# CHECK-NEXT: - - - 1.00 1.00 - - - fldlg2
+# CHECK-NEXT: - - - 1.00 1.00 - - - fldln2
+# CHECK-NEXT: - - - 1.00 1.00 - - - fldpi
# CHECK-NEXT: - - - 0.50 0.50 - - - fldz
# CHECK-NEXT: - - 2.00 1.00 - - - - fmul %st(0), %st(1)
# CHECK-NEXT: - - 2.00 1.00 - - - - fmul %st(2)
diff --git a/llvm/test/tools/llvm-mca/X86/SandyBridge/resources-x87.s b/llvm/test/tools/llvm-mca/X86/SandyBridge/resources-x87.s
index fbd5d34db2c..3152b96cc8a 100644
--- a/llvm/test/tools/llvm-mca/X86/SandyBridge/resources-x87.s
+++ b/llvm/test/tools/llvm-mca/X86/SandyBridge/resources-x87.s
@@ -282,11 +282,11 @@ fyl2xp1
# CHECK-NEXT: 5 8 2.00 * * fldcw (%eax)
# CHECK-NEXT: 1 100 0.33 * fldenv (%eax)
# CHECK-NEXT: 2 1 1.00 * fld1
-# CHECK-NEXT: 1 100 0.33 * fldl2e
-# CHECK-NEXT: 1 100 0.33 * fldl2t
-# CHECK-NEXT: 1 100 0.33 * fldlg2
-# CHECK-NEXT: 1 100 0.33 * fldln2
-# CHECK-NEXT: 1 100 0.33 * fldpi
+# CHECK-NEXT: 2 1 1.00 * fldl2e
+# CHECK-NEXT: 2 1 1.00 * fldl2t
+# CHECK-NEXT: 2 1 1.00 * fldlg2
+# CHECK-NEXT: 2 1 1.00 * fldln2
+# CHECK-NEXT: 2 1 1.00 * fldpi
# CHECK-NEXT: 1 1 1.00 * fldz
# CHECK-NEXT: 1 5 1.00 * fmul %st(0), %st(1)
# CHECK-NEXT: 1 5 1.00 * fmul %st(2)
@@ -367,7 +367,7 @@ fyl2xp1
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1]
-# CHECK-NEXT: - 136.00 49.33 87.33 17.00 56.33 34.00 34.00
+# CHECK-NEXT: - 136.00 52.67 90.67 17.00 54.67 34.00 34.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:
@@ -447,11 +447,11 @@ fyl2xp1
# CHECK-NEXT: - - - - 1.00 2.00 1.00 1.00 fldcw (%eax)
# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - fldenv (%eax)
# CHECK-NEXT: - - 1.00 - - 1.00 - - fld1
-# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - fldl2e
-# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - fldl2t
-# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - fldlg2
-# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - fldln2
-# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - fldpi
+# CHECK-NEXT: - - 1.00 1.00 - - - - fldl2e
+# CHECK-NEXT: - - 1.00 1.00 - - - - fldl2t
+# CHECK-NEXT: - - 1.00 1.00 - - - - fldlg2
+# CHECK-NEXT: - - 1.00 1.00 - - - - fldln2
+# CHECK-NEXT: - - 1.00 1.00 - - - - fldpi
# CHECK-NEXT: - - - - - 1.00 - - fldz
# CHECK-NEXT: - - 1.00 - - - - - fmul %st(0), %st(1)
# CHECK-NEXT: - - 1.00 - - - - - fmul %st(2)
diff --git a/llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-x87.s b/llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-x87.s
index ad860578249..28c885534f0 100644
--- a/llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-x87.s
+++ b/llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-x87.s
@@ -282,11 +282,11 @@ fyl2xp1
# CHECK-NEXT: 3 7 1.00 * * fldcw (%eax)
# CHECK-NEXT: 64 62 14.00 * fldenv (%eax)
# CHECK-NEXT: 2 1 1.00 * fld1
-# CHECK-NEXT: 1 100 0.25 * fldl2e
-# CHECK-NEXT: 1 100 0.25 * fldl2t
-# CHECK-NEXT: 1 100 0.25 * fldlg2
-# CHECK-NEXT: 1 100 0.25 * fldln2
-# CHECK-NEXT: 1 100 0.25 * fldpi
+# CHECK-NEXT: 2 1 1.00 * fldl2e
+# CHECK-NEXT: 2 1 1.00 * fldl2t
+# CHECK-NEXT: 2 1 1.00 * fldlg2
+# CHECK-NEXT: 2 1 1.00 * fldln2
+# CHECK-NEXT: 2 1 1.00 * fldpi
# CHECK-NEXT: 1 1 0.50 * fldz
# CHECK-NEXT: 1 4 1.00 * fmul %st(0), %st(1)
# CHECK-NEXT: 1 4 1.00 * fmul %st(2)
@@ -369,7 +369,7 @@ fyl2xp1
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9]
-# CHECK-NEXT: - 7.00 123.00 53.50 49.00 49.00 27.00 146.00 70.50 9.00
+# CHECK-NEXT: - 7.00 126.75 52.25 49.00 49.00 27.00 149.75 69.25 9.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions:
@@ -449,11 +449,11 @@ fyl2xp1
# CHECK-NEXT: - - 1.50 - 0.50 0.50 - 0.50 - - fldcw (%eax)
# CHECK-NEXT: - - 19.25 9.75 4.00 4.00 - 12.25 14.75 - fldenv (%eax)
# CHECK-NEXT: - - 1.00 - - - - 1.00 - - fld1
-# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - fldl2e
-# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - fldl2t
-# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - fldlg2
-# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - fldln2
-# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - fldpi
+# CHECK-NEXT: - - 1.00 - - - - 1.00 - - fldl2e
+# CHECK-NEXT: - - 1.00 - - - - 1.00 - - fldl2t
+# CHECK-NEXT: - - 1.00 - - - - 1.00 - - fldlg2
+# CHECK-NEXT: - - 1.00 - - - - 1.00 - - fldln2
+# CHECK-NEXT: - - 1.00 - - - - 1.00 - - fldpi
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - fldz
# CHECK-NEXT: - - 1.00 - - - - - - - fmul %st(0), %st(1)
# CHECK-NEXT: - - 1.00 - - - - - - - fmul %st(2)
diff --git a/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-x87.s b/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-x87.s
index d358f5ee573..bc6fc092243 100644
--- a/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-x87.s
+++ b/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-x87.s
@@ -282,11 +282,11 @@ fyl2xp1
# CHECK-NEXT: 3 7 1.00 * * fldcw (%eax)
# CHECK-NEXT: 64 62 14.00 * fldenv (%eax)
# CHECK-NEXT: 2 1 1.00 * fld1
-# CHECK-NEXT: 1 100 0.25 * fldl2e
-# CHECK-NEXT: 1 100 0.25 * fldl2t
-# CHECK-NEXT: 1 100 0.25 * fldlg2
-# CHECK-NEXT: 1 100 0.25 * fldln2
-# CHECK-NEXT: 1 100 0.25 * fldpi
+# CHECK-NEXT: 2 1 1.00 * fldl2e
+# CHECK-NEXT: 2 1 1.00 * fldl2t
+# CHECK-NEXT: 2 1 1.00 * fldlg2
+# CHECK-NEXT: 2 1 1.00 * fldln2
+# CHECK-NEXT: 2 1 1.00 * fldpi
# CHECK-NEXT: 1 1 0.50 * fldz
# CHECK-NEXT: 1 4 1.00 * fmul %st(0), %st(1)
# CHECK-NEXT: 1 4 1.00 * fmul %st(2)
@@ -369,7 +369,7 @@ fyl2xp1
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9]
-# CHECK-NEXT: - 7.00 123.00 53.50 49.00 49.00 27.00 146.00 70.50 9.00
+# CHECK-NEXT: - 7.00 126.75 52.25 49.00 49.00 27.00 149.75 69.25 9.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions:
@@ -449,11 +449,11 @@ fyl2xp1
# CHECK-NEXT: - - 1.50 - 0.50 0.50 - 0.50 - - fldcw (%eax)
# CHECK-NEXT: - - 19.25 9.75 4.00 4.00 - 12.25 14.75 - fldenv (%eax)
# CHECK-NEXT: - - 1.00 - - - - 1.00 - - fld1
-# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - fldl2e
-# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - fldl2t
-# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - fldlg2
-# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - fldln2
-# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - fldpi
+# CHECK-NEXT: - - 1.00 - - - - 1.00 - - fldl2e
+# CHECK-NEXT: - - 1.00 - - - - 1.00 - - fldl2t
+# CHECK-NEXT: - - 1.00 - - - - 1.00 - - fldlg2
+# CHECK-NEXT: - - 1.00 - - - - 1.00 - - fldln2
+# CHECK-NEXT: - - 1.00 - - - - 1.00 - - fldpi
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - fldz
# CHECK-NEXT: - - 1.00 - - - - - - - fmul %st(0), %st(1)
# CHECK-NEXT: - - 1.00 - - - - - - - fmul %st(2)
OpenPOWER on IntegriCloud