Mesa (main): aco: add .clang-format file

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Mon Jul 12 21:45:20 UTC 2021


Module: Mesa
Branch: main
Commit: 97ec360dc46d1c4a0384f387a740cde7983695ed
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=97ec360dc46d1c4a0384f387a740cde7983695ed

Author: Daniel Schürmann <daniel at schuermann.dev>
Date:   Wed Jun  9 08:53:11 2021 +0200

aco: add .clang-format file

Based on src/amd/.clang-format with following changes:
Language: Cpp
Standard: c++14
PointerAlignment: Left
IndentAccessModifiers: False
SpaceBeforeCtorInitializerColon: True
AllowShortCaseLabelsOnASingleLine: True
AllowShortFunctionsOnASingleLine: InlineOnly
AllowShortBlocksOnASingleLine: Empty
AllowShortLambdasOnASingleLine: All
BraceWrapping:
  SplitEmptyFunction: false
  SplitEmptyRecord: false
  BeforeLambdaBody: true
IncludeBlocks: Regroup (with specified IncludeCategories)

Reviewed-by: Tony Wasserka <tony.wasserka at gmx.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11258>

---

 src/amd/compiler/.clang-format | 147 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 147 insertions(+)

diff --git a/src/amd/compiler/.clang-format b/src/amd/compiler/.clang-format
new file mode 100644
index 00000000000..04dbbe6da69
--- /dev/null
+++ b/src/amd/compiler/.clang-format
@@ -0,0 +1,147 @@
+
+# TODO: Inherit Style from RADV when Clang 13 is default.
+# BasedOnStyle: InheritParentConfig
+
+# Copied from /src/amd/.clang-format
+# ACO specific rules can be found below
+AlignAfterOpenBracket: true
+AlignConsecutiveMacros: true
+AllowAllArgumentsOnNextLine: false
+AllowShortCaseLabelsOnASingleLine: false
+AllowShortFunctionsOnASingleLine: false
+AlwaysBreakAfterReturnType: TopLevelDefinitions
+BasedOnStyle: LLVM
+BraceWrapping:
+  AfterControlStatement: false
+  AfterEnum: false
+  AfterFunction: true
+  AfterStruct: false
+  BeforeElse: false
+  SplitEmptyFunction: true
+BinPackArguments: true
+BinPackParameters: true
+BreakBeforeBraces: Custom
+ColumnLimit: 100
+ContinuationIndentWidth: 3
+Cpp11BracedListStyle: false
+Cpp11BracedListStyle: true
+ForEachMacros:
+  - LIST_FOR_EACH_ENTRY
+  - LIST_FOR_EACH_ENTRY_SAFE
+  - foreach_list_typed
+  - util_dynarray_foreach
+  - nir_foreach_variable
+  - nir_foreach_variable_safe
+  - nir_foreach_register
+  - nir_foreach_register_safe
+  - nir_foreach_use
+  - nir_foreach_use_safe
+  - nir_foreach_if_use
+  - nir_foreach_if_use_safe
+  - nir_foreach_def
+  - nir_foreach_def_safe
+  - nir_foreach_phi_src
+  - nir_foreach_phi_src_safe
+  - nir_foreach_parallel_copy_entry
+  - nir_foreach_instr
+  - nir_foreach_instr_reverse
+  - nir_foreach_instr_safe
+  - nir_foreach_instr_reverse_safe
+  - nir_foreach_function
+  - nir_foreach_block
+  - nir_foreach_block_safe
+  - nir_foreach_block_reverse
+  - nir_foreach_block_reverse_safe
+  - nir_foreach_block_in_cf_node
+  - nir_foreach_shader_in_variable
+  - nir_foreach_shader_out_variable_safe
+  - nir_foreach_variable_in_list
+  - nir_foreach_src
+  - foreach_two_lists
+  - foreach_bit
+  - foreach_sched_node
+  - foreach_src
+  - foreach_src_n
+  - foreach_ssa_use
+  - foreach_ssa_srcp_n
+  - foreach_ssa_srcp
+  - foreach_ssa_src_n
+  - foreach_ssa_src
+  - foreach_input_n
+  - foreach_input
+  - foreach_output_n
+  - foreach_output
+  - foreach_instr
+  - foreach_instr_rev
+  - foreach_instr_safe
+  - foreach_block
+  - foreach_block_safe
+  - foreach_block_rev
+  - foreach_array
+  - foreach_array_safe
+  - foreach_name_n
+  - foreach_name
+  - foreach_def
+  - foreach_use
+  - set_foreach
+
+IncludeBlocks: Preserve
+IncludeCategories:
+  - Regex:           '<[[:alnum:].]+>'
+    Priority:        1
+  - Regex:           '.*\/.*'
+    Priority:        2
+  - Regex:           '.*'
+    Priority:        3
+IndentWidth: 3
+PenaltyBreakBeforeFirstCallParameter: 1
+PenaltyExcessCharacter: 100
+SpaceAfterCStyleCast: false
+SpaceBeforeCpp11BracedList: false
+SpaceBeforeCtorInitializerColon: false
+SpacesInContainerLiterals: false
+
+
+# ACO clang-format rules:
+Language: Cpp
+Standard: c++14
+
+# Force pointers to the type for C++
+DerivePointerAlignment: false
+PointerAlignment: Left
+
+# Same effect as IndentAccessModifiers: False
+AccessModifierOffset: -3
+
+# Compact some cumbersome C++ code
+SpaceBeforeCtorInitializerColon: True
+AllowShortCaseLabelsOnASingleLine: True
+AllowShortFunctionsOnASingleLine: InlineOnly
+AllowShortBlocksOnASingleLine: Empty
+AllowShortLambdasOnASingleLine: All
+
+# Wrap before LambdaBody and disable SplitEmptyFunction
+BraceWrapping:
+  AfterControlStatement: false
+  AfterEnum: false
+  AfterFunction: true
+  AfterStruct: false
+  BeforeElse: false
+  SplitEmptyFunction: false
+  SplitEmptyRecord: false
+  BeforeLambdaBody: true
+
+# Regroup #include blocks
+IncludeBlocks: Regroup
+IncludeCategories:
+  - Regex:           '"aco.*'
+    Priority:        1
+  - Regex:           '"(common|llvm|vulkan)\/.*'
+    Priority:        2
+  - Regex:           '"(nir|util\/).*'
+    Priority:        3
+  - Regex:           '.*\/.*'
+    Priority:        4
+  - Regex:           '.*'
+    Priority:        5
+



More information about the mesa-commit mailing list