Chromium Code Reviews| Index: runtime/vm/flow_graph_compiler_shared.h |
| =================================================================== |
| --- runtime/vm/flow_graph_compiler_shared.h (revision 8214) |
| +++ runtime/vm/flow_graph_compiler_shared.h (working copy) |
| @@ -102,9 +102,39 @@ |
| void FinalizePcDescriptors(const Code& code); |
| void FinalizeStackmaps(const Code& code); |
| void FinalizeVarDescriptors(const Code& code); |
| + void FinalizeComments(const Code& code); |
| + void GenerateInstanceCall(intptr_t cid, |
| + intptr_t token_index, |
| + intptr_t try_index, |
| + const String& function_name, |
| + intptr_t argument_count, |
| + const Array& argument_names, |
| + intptr_t checked_argument_count); |
| + void GenerateStaticCall(intptr_t cid, |
| + intptr_t token_index, |
| + intptr_t try_index, |
| + const Function& function, |
| + intptr_t argument_count, |
| + const Array& argument_names); |
| + |
| void GenerateDeferredCode(); |
| + |
| + // Returns 'true' if code generation for this function is complete, i.e., |
| + // no fall-through to regular code is needed. |
| + bool TryIntrinsify(); |
| + virtual void IntrinsifyGetter() = 0; |
|
Vyacheslav Egorov (Google)
2012/06/04 13:05:52
The names are a bit confusing, I had to look at th
srdjan
2012/06/04 15:52:46
Changed names to GenerateInlinedSetter/Getter, pas
|
| + virtual void IntrinsifySetter() = 0; |
| + virtual intptr_t EmitInstanceCall(ExternalLabel* target_label, |
|
Vyacheslav Egorov (Google)
2012/06/04 13:05:52
please document return values of these functions.
srdjan
2012/06/04 15:52:46
// Returns pc-offset (in bytes) of the pc after th
|
| + const ICData& ic_data, |
| + const Array& arguments_descriptor, |
| + intptr_t argument_count) = 0; |
| + virtual intptr_t EmitStaticCall(const Function& function, |
| + const Array& arguments_descriptor, |
| + intptr_t argument_count) = 0; |
| + |
| + |
| struct BlockInfo : public ZoneAllocated { |
| public: |
| BlockInfo() : label() { } |
| @@ -114,6 +144,9 @@ |
| const GrowableArray<BlockInfo*>& block_info() const { return block_info_; } |
| + // Bail out of the flow graph compiler. Does not return to the caller. |
| + void Bailout(const char* reason); |
| + |
| private: |
| // Map a block number in a forward iteration into the block number in the |
| // corresponding reverse iteration. Used to obtain an index into |