From d6fb6cfb6f2d0d9595f55e8cc18d2753be5d9a13 Mon Sep 17 00:00:00 2001 From: Calin Juravle Date: Tue, 11 Nov 2014 19:07:44 +0000 Subject: [optimizing compiler] Add DIV_LONG - for backends: arm, x86, x86_64 - added cqo, idivq, testq assembly for x64_64 - small cleanups Change-Id: I762ef37880749038ed25d6014370be9a61795200 --- compiler/optimizing/builder.h | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'compiler/optimizing/builder.h') diff --git a/compiler/optimizing/builder.h b/compiler/optimizing/builder.h index 9cf83055b2..b4497bf47c 100644 --- a/compiler/optimizing/builder.h +++ b/compiler/optimizing/builder.h @@ -101,9 +101,15 @@ class HGraphBuilder : public ValueObject { template void Binop_23x(const Instruction& instruction, Primitive::Type type); + template + void Binop_23x(const Instruction& instruction, Primitive::Type type, uint32_t dex_pc); + template void Binop_12x(const Instruction& instruction, Primitive::Type type); + template + void Binop_12x(const Instruction& instruction, Primitive::Type type, uint32_t dex_pc); + template void Binop_22b(const Instruction& instruction, bool reverse); @@ -119,7 +125,7 @@ class HGraphBuilder : public ValueObject { void BuildCheckedDiv(uint16_t out_reg, uint16_t first_reg, - int32_t second_reg, // can be a constant + int64_t second_reg_or_constant, uint32_t dex_offset, Primitive::Type type, bool second_is_lit); -- cgit v1.2.3-59-g8ed1b