Commit 71f14bd0 authored by Junliang Yan's avatar Junliang Yan Committed by Commit Bot

PPC: fix left_reg clobber issue on float min op

Change-Id: I0bd15f4769e9ab09aec3f479af0ee50fc81fd6dc
Reviewed-on: https://chromium-review.googlesource.com/1204950Reviewed-by: 's avatarJoran Siu <joransiu@ca.ibm.com>
Commit-Queue: Junliang Yan <jyan@ca.ibm.com>
Cr-Commit-Position: refs/heads/master@{#55620}
parent 1d1d4d21
...@@ -513,11 +513,11 @@ void EmitWordLoadPoisoningIfNeeded(CodeGenerator* codegen, Instruction* instr, ...@@ -513,11 +513,11 @@ void EmitWordLoadPoisoningIfNeeded(CodeGenerator* codegen, Instruction* instr,
/* Min: The algorithm is: -((-L) + (-R)), which in case of L and R */ \ /* Min: The algorithm is: -((-L) + (-R)), which in case of L and R */ \
/* being different registers is most efficiently expressed */ \ /* being different registers is most efficiently expressed */ \
/* as -((-L) - R). */ \ /* as -((-L) - R). */ \
__ fneg(left_reg, left_reg); \ __ fneg(kScratchDoubleReg, left_reg); \
if (left_reg == right_reg) { \ if (kScratchDoubleReg == right_reg) { \
__ fadd(result_reg, left_reg, right_reg); \ __ fadd(result_reg, kScratchDoubleReg, right_reg); \
} else { \ } else { \
__ fsub(result_reg, left_reg, right_reg); \ __ fsub(result_reg, kScratchDoubleReg, right_reg); \
} \ } \
__ fneg(result_reg, result_reg); \ __ fneg(result_reg, result_reg); \
__ b(&done); \ __ b(&done); \
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment