diff options
author | Calin Juravle <calin@google.com> | 2014-11-04 16:40:20 +0000 |
---|---|---|
committer | Calin Juravle <calin@google.com> | 2014-11-06 14:42:58 +0000 |
commit | d0d4852847432368b090c184d6639e573538dccf (patch) | |
tree | 47e31fe860ff1c3ace2f3f5945aa69689d42d998 /compiler/optimizing/builder.h | |
parent | a88b7b93e28ea86969dd3ec6a6bf6929d697fc31 (diff) | |
download | art-d0d4852847432368b090c184d6639e573538dccf.zip art-d0d4852847432368b090c184d6639e573538dccf.tar.gz art-d0d4852847432368b090c184d6639e573538dccf.tar.bz2 |
[optimizing compiler] Add div-int and exception handling.
- for backends: arm, x86, x86_64
- fixed a register allocator bug: the request for a fixed register for
the first input was ignored if the output was kSameAsFirstInput
- added divide by zero exception
- more tests
- shuffle around some code in the builder to reduce the number of lines
of code for a single function.
Change-Id: Id3a515e02bfbc66cd9d16cb9746f7551bdab3d42
Diffstat (limited to 'compiler/optimizing/builder.h')
-rw-r--r-- | compiler/optimizing/builder.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/compiler/optimizing/builder.h b/compiler/optimizing/builder.h index f25415b..f09f729 100644 --- a/compiler/optimizing/builder.h +++ b/compiler/optimizing/builder.h @@ -120,6 +120,11 @@ class HGraphBuilder : public ValueObject { Primitive::Type input_type, Primitive::Type result_type); + void BuildCheckedDiv(const Instruction& instruction, + uint32_t dex_offset, + Primitive::Type type, + bool second_is_lit); + void BuildReturn(const Instruction& instruction, Primitive::Type type); // Builds an instance field access node and returns whether the instruction is supported. @@ -150,6 +155,8 @@ class HGraphBuilder : public ValueObject { uint32_t* args, uint32_t register_index); + void BuildFillArrayData(const Instruction& instruction, uint32_t dex_offset); + // Fills the given object with data as specified in the fill-array-data // instruction. Currently only used for non-reference and non-floating point // arrays. |