Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(389)

Side by Side Diff: src/mips/lithium-codegen-mips.h

Issue 16951016: MIPS: Optimise Math.floor(x/y) to use integer division for MIPS. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Generic MathFloorOfDiv. Created 7 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « src/hydrogen-instructions.cc ('k') | src/mips/lithium-codegen-mips.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 366 matching lines...) Expand 10 before | Expand all | Expand 10 after
377 Handle<String> name, 377 Handle<String> name,
378 LEnvironment* env); 378 LEnvironment* env);
379 379
380 // Emits optimized code to deep-copy the contents of statically known 380 // Emits optimized code to deep-copy the contents of statically known
381 // object graphs (e.g. object literal boilerplate). 381 // object graphs (e.g. object literal boilerplate).
382 void EmitDeepCopy(Handle<JSObject> object, 382 void EmitDeepCopy(Handle<JSObject> object,
383 Register result, 383 Register result,
384 Register source, 384 Register source,
385 int* offset, 385 int* offset,
386 AllocationSiteMode mode); 386 AllocationSiteMode mode);
387 // Emit optimized code for integer division.
388 // Inputs are signed.
389 // All registers are clobbered.
390 // If 'remainder' is no_reg, it is not computed.
391 void EmitSignedIntegerDivisionByConstant(Register result,
392 Register dividend,
393 int32_t divisor,
394 Register remainder,
395 Register scratch,
396 LEnvironment* environment);
397
387 398
388 void EnsureSpaceForLazyDeopt(); 399 void EnsureSpaceForLazyDeopt();
389 void DoLoadKeyedExternalArray(LLoadKeyed* instr); 400 void DoLoadKeyedExternalArray(LLoadKeyed* instr);
390 void DoLoadKeyedFixedDoubleArray(LLoadKeyed* instr); 401 void DoLoadKeyedFixedDoubleArray(LLoadKeyed* instr);
391 void DoLoadKeyedFixedArray(LLoadKeyed* instr); 402 void DoLoadKeyedFixedArray(LLoadKeyed* instr);
392 void DoStoreKeyedExternalArray(LStoreKeyed* instr); 403 void DoStoreKeyedExternalArray(LStoreKeyed* instr);
393 void DoStoreKeyedFixedDoubleArray(LStoreKeyed* instr); 404 void DoStoreKeyedFixedDoubleArray(LStoreKeyed* instr);
394 void DoStoreKeyedFixedArray(LStoreKeyed* instr); 405 void DoStoreKeyedFixedArray(LStoreKeyed* instr);
395 406
396 Zone* zone_; 407 Zone* zone_;
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after
496 LCodeGen* codegen_; 507 LCodeGen* codegen_;
497 Label entry_; 508 Label entry_;
498 Label exit_; 509 Label exit_;
499 Label* external_exit_; 510 Label* external_exit_;
500 int instruction_index_; 511 int instruction_index_;
501 }; 512 };
502 513
503 } } // namespace v8::internal 514 } } // namespace v8::internal
504 515
505 #endif // V8_MIPS_LITHIUM_CODEGEN_MIPS_H_ 516 #endif // V8_MIPS_LITHIUM_CODEGEN_MIPS_H_
OLDNEW
« no previous file with comments | « src/hydrogen-instructions.cc ('k') | src/mips/lithium-codegen-mips.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698