| Index: src/compiler/STYLE
|
| diff --git a/src/compiler/STYLE b/src/compiler/STYLE
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..ae41e3f989feafa2e1d570eb8b4012c283722a08
|
| --- /dev/null
|
| +++ b/src/compiler/STYLE
|
| @@ -0,0 +1,29 @@
|
| +Compiler Coding Style
|
| +=====================
|
| +
|
| +Coding style for the TurboFan compiler generally follows the Google C++ Style
|
| +Guide and the Chromium Coding Style. The notes below are usually just extensions
|
| +beyond what the Google style guide already says. If this document doesn't
|
| +mention a rule, follow the Google C++ style.
|
| +
|
| +
|
| +TODOs
|
| +-----
|
| +We use the following convention for putting TODOs into the code:
|
| +
|
| + * A TODO(turbofan) implies a performance improvement opportunity.
|
| + * A TODO(name) implies an incomplete implementation.
|
| +
|
| +
|
| +Use of C++11 auto keyword
|
| +-------------------------
|
| +Use auto to avoid type names that are just clutter. Continue to use manifest
|
| +type declarations when it helps readability, and never use auto for anything
|
| +but local variables, in particular auto should only be used where it is obvious
|
| +from context what the type is:
|
| +
|
| + for (auto block : x->blocks()) // clearly a Block of some kind
|
| + for (auto instr : x->instructions()) // clearly an Instruction of some kind
|
| +
|
| + for (auto b : x->predecessors()) // less clear, better to make it explicit
|
| + for (BasicBlock* b : x->predecessors()) // now clear
|
|
|