Reviewers: jarin,
Message:
Committed patchset #1 (id:1) manually as 24659 (presubmit successful).
Description:
Fix x64 after r24656.
[email protected]
Committed: https://code.google.com/p/v8/source/detail?r=24659
Please review this at https://codereview.chromium.org/655383003/
Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Affected files (+7, -4 lines):
M src/compiler/pipeline.cc
M src/compiler/simplified-lowering.cc
M src/compiler/x64/code-generator-x64.cc
Index: src/compiler/pipeline.cc
diff --git a/src/compiler/pipeline.cc b/src/compiler/pipeline.cc
index
707d88757c698435a41aadee3738f6c73ed619d1..2669b18b529b8902764095c4a9273146ea732798
100644
--- a/src/compiler/pipeline.cc
+++ b/src/compiler/pipeline.cc
@@ -319,8 +319,8 @@ Handle<Code> Pipeline::GenerateCode() {
ValueNumberingReducer vn_reducer(zone());
SimplifiedOperatorReducer simple_reducer(&jsgraph);
GraphReducer graph_reducer(&graph);
- graph_reducer.AddReducer(&simple_reducer);
graph_reducer.AddReducer(&vn_reducer);
+ graph_reducer.AddReducer(&simple_reducer);
graph_reducer.ReduceGraph();
VerifyAndPrintGraph(&graph, "Lowered simplified");
@@ -333,11 +333,13 @@ Handle<Code> Pipeline::GenerateCode() {
SourcePosition::Unknown());
Linkage linkage(info());
ValueNumberingReducer vn_reducer(zone());
+ SimplifiedOperatorReducer simple_reducer(&jsgraph);
ChangeLowering lowering(&jsgraph, &linkage);
MachineOperatorReducer mach_reducer(&jsgraph);
GraphReducer graph_reducer(&graph);
// TODO(titzer): Figure out if we should run all reducers at once
here.
graph_reducer.AddReducer(&vn_reducer);
+ graph_reducer.AddReducer(&simple_reducer);
graph_reducer.AddReducer(&lowering);
graph_reducer.AddReducer(&mach_reducer);
graph_reducer.ReduceGraph();
Index: src/compiler/simplified-lowering.cc
diff --git a/src/compiler/simplified-lowering.cc
b/src/compiler/simplified-lowering.cc
index
7a0f32493239279bb25136f23e1fbd7c76a1c4b3..8db430e09403b11532841ec401dbe4550f0d6545
100644
--- a/src/compiler/simplified-lowering.cc
+++ b/src/compiler/simplified-lowering.cc
@@ -726,7 +726,7 @@ class RepresentationSelector {
}
case IrOpcode::kWord32Shr:
// We output unsigned int32 for shift right because JavaScript.
- return VisitBinop(node, kRepWord32, kRepWord32 | kTypeUint32);
+ return VisitBinop(node, kMachUint32, kMachUint32);
case IrOpcode::kWord32And:
case IrOpcode::kWord32Or:
case IrOpcode::kWord32Xor:
Index: src/compiler/x64/code-generator-x64.cc
diff --git a/src/compiler/x64/code-generator-x64.cc
b/src/compiler/x64/code-generator-x64.cc
index
6fa758f27899acb5a0c53f930834ac3ef9270cdd..b4dfc25f23e5cc7a30f6e02459fc5cb9e798a1a4
100644
--- a/src/compiler/x64/code-generator-x64.cc
+++ b/src/compiler/x64/code-generator-x64.cc
@@ -447,10 +447,11 @@ void
CodeGenerator::AssembleArchInstruction(Instruction* instr) {
break;
case kSSEUint32ToFloat64:
if (instr->InputAt(0)->IsRegister()) {
- __ cvtqsi2sd(i.OutputDoubleRegister(), i.InputRegister(0));
+ __ movl(kScratchRegister, i.InputRegister(0));
} else {
- __ cvtqsi2sd(i.OutputDoubleRegister(), i.InputOperand(0));
+ __ movl(kScratchRegister, i.InputOperand(0));
}
+ __ cvtqsi2sd(i.OutputDoubleRegister(), kScratchRegister);
break;
case kX64Movsxbl:
__ movsxbl(i.OutputRegister(), i.MemoryOperand());
--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
---
You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.