OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 1756 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1767 // as the holder! | 1767 // as the holder! |
1768 Handle<JSObject> holder() { return holder_; } | 1768 Handle<JSObject> holder() { return holder_; } |
1769 | 1769 |
1770 Handle<Cell> cell() { return cell_; } | 1770 Handle<Cell> cell() { return cell_; } |
1771 | 1771 |
1772 bool ComputeTarget(Handle<Map> type, Handle<String> name); | 1772 bool ComputeTarget(Handle<Map> type, Handle<String> name); |
1773 bool ComputeGlobalTarget(Handle<GlobalObject> global, LookupResult* lookup); | 1773 bool ComputeGlobalTarget(Handle<GlobalObject> global, LookupResult* lookup); |
1774 | 1774 |
1775 BailoutId ReturnId() const { return return_id_; } | 1775 BailoutId ReturnId() const { return return_id_; } |
1776 | 1776 |
| 1777 enum CallType { |
| 1778 POSSIBLY_EVAL_CALL, |
| 1779 GLOBAL_CALL, |
| 1780 LOOKUP_SLOT_CALL, |
| 1781 PROPERTY_CALL, |
| 1782 OTHER_CALL |
| 1783 }; |
| 1784 |
| 1785 // Helpers to determine how to handle the call. |
| 1786 CallType GetCallType(Isolate* isolate) const; |
| 1787 |
1777 // TODO(rossberg): this should really move somewhere else (and be merged with | 1788 // TODO(rossberg): this should really move somewhere else (and be merged with |
1778 // various similar methods in objets.cc), but for now... | 1789 // various similar methods in objets.cc), but for now... |
1779 static Handle<JSObject> GetPrototypeForPrimitiveCheck( | 1790 static Handle<JSObject> GetPrototypeForPrimitiveCheck( |
1780 CheckType check, Isolate* isolate); | 1791 CheckType check, Isolate* isolate); |
1781 | 1792 |
1782 #ifdef DEBUG | 1793 #ifdef DEBUG |
1783 // Used to assert that the FullCodeGenerator records the return site. | 1794 // Used to assert that the FullCodeGenerator records the return site. |
1784 bool return_is_recorded_; | 1795 bool return_is_recorded_; |
1785 #endif | 1796 #endif |
1786 | 1797 |
(...skipping 1512 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3299 private: | 3310 private: |
3300 Isolate* isolate_; | 3311 Isolate* isolate_; |
3301 Zone* zone_; | 3312 Zone* zone_; |
3302 Visitor visitor_; | 3313 Visitor visitor_; |
3303 }; | 3314 }; |
3304 | 3315 |
3305 | 3316 |
3306 } } // namespace v8::internal | 3317 } } // namespace v8::internal |
3307 | 3318 |
3308 #endif // V8_AST_H_ | 3319 #endif // V8_AST_H_ |
OLD | NEW |