1*61046927SAndroid Build Coastguard Worker# Copyright © 2022 Imagination Technologies Ltd. 2*61046927SAndroid Build Coastguard Worker 3*61046927SAndroid Build Coastguard Worker# Permission is hereby granted, free of charge, to any person obtaining a copy 4*61046927SAndroid Build Coastguard Worker# of this software and associated documentation files (the "Software"), to deal 5*61046927SAndroid Build Coastguard Worker# in the Software without restriction, including without limitation the rights 6*61046927SAndroid Build Coastguard Worker# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7*61046927SAndroid Build Coastguard Worker# copies of the Software, and to permit persons to whom the Software is 8*61046927SAndroid Build Coastguard Worker# furnished to do so, subject to the following conditions: 9*61046927SAndroid Build Coastguard Worker 10*61046927SAndroid Build Coastguard Worker# The above copyright notice and this permission notice (including the next 11*61046927SAndroid Build Coastguard Worker# paragraph) shall be included in all copies or substantial portions of the 12*61046927SAndroid Build Coastguard Worker# Software. 13*61046927SAndroid Build Coastguard Worker 14*61046927SAndroid Build Coastguard Worker# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15*61046927SAndroid Build Coastguard Worker# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16*61046927SAndroid Build Coastguard Worker# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17*61046927SAndroid Build Coastguard Worker# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18*61046927SAndroid Build Coastguard Worker# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19*61046927SAndroid Build Coastguard Worker# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 20*61046927SAndroid Build Coastguard Worker# SOFTWARE. 21*61046927SAndroid Build Coastguard Worker 22*61046927SAndroid Build Coastguard WorkerLanguage: Cpp 23*61046927SAndroid Build Coastguard WorkerStandard: c++11 24*61046927SAndroid Build Coastguard Worker 25*61046927SAndroid Build Coastguard WorkerUseCRLF: false 26*61046927SAndroid Build Coastguard WorkerColumnLimit: 80 27*61046927SAndroid Build Coastguard Worker 28*61046927SAndroid Build Coastguard WorkerDeriveLineEnding: false 29*61046927SAndroid Build Coastguard WorkerDerivePointerAlignment: false 30*61046927SAndroid Build Coastguard WorkerExperimentalAutoDetectBinPacking: false 31*61046927SAndroid Build Coastguard Worker 32*61046927SAndroid Build Coastguard WorkerDisableFormat: false 33*61046927SAndroid Build Coastguard Worker 34*61046927SAndroid Build Coastguard Worker######## 35*61046927SAndroid Build Coastguard Worker# Tabs # 36*61046927SAndroid Build Coastguard Worker######## 37*61046927SAndroid Build Coastguard WorkerUseTab: Never 38*61046927SAndroid Build Coastguard WorkerTabWidth: 3 39*61046927SAndroid Build Coastguard Worker 40*61046927SAndroid Build Coastguard WorkerConstructorInitializerIndentWidth: 6 41*61046927SAndroid Build Coastguard WorkerContinuationIndentWidth: 3 42*61046927SAndroid Build Coastguard Worker 43*61046927SAndroid Build Coastguard WorkerIndentWidth: 3 44*61046927SAndroid Build Coastguard Worker#IndentCaseBlocks: true # Requires clang-11 45*61046927SAndroid Build Coastguard WorkerIndentCaseLabels: false 46*61046927SAndroid Build Coastguard Worker#IndentExternBlock: NoIndent # Requires clang-11 47*61046927SAndroid Build Coastguard WorkerIndentGotoLabels: false 48*61046927SAndroid Build Coastguard WorkerIndentPPDirectives: AfterHash 49*61046927SAndroid Build Coastguard WorkerIndentWrappedFunctionNames: false 50*61046927SAndroid Build Coastguard WorkerAccessModifierOffset: -4 # -IndentWidth 51*61046927SAndroid Build Coastguard Worker 52*61046927SAndroid Build Coastguard WorkerNamespaceIndentation: None 53*61046927SAndroid Build Coastguard Worker 54*61046927SAndroid Build Coastguard Worker########## 55*61046927SAndroid Build Coastguard Worker# Braces # 56*61046927SAndroid Build Coastguard Worker########## 57*61046927SAndroid Build Coastguard WorkerAlignAfterOpenBracket: Align 58*61046927SAndroid Build Coastguard WorkerAllowAllArgumentsOnNextLine: false 59*61046927SAndroid Build Coastguard WorkerAllowAllConstructorInitializersOnNextLine: false 60*61046927SAndroid Build Coastguard WorkerAllowAllParametersOfDeclarationOnNextLine: false 61*61046927SAndroid Build Coastguard WorkerBinPackArguments: false 62*61046927SAndroid Build Coastguard WorkerBinPackParameters: false 63*61046927SAndroid Build Coastguard Worker 64*61046927SAndroid Build Coastguard WorkerCpp11BracedListStyle: false 65*61046927SAndroid Build Coastguard Worker 66*61046927SAndroid Build Coastguard Worker######################## 67*61046927SAndroid Build Coastguard Worker# Whitespace Alignment # 68*61046927SAndroid Build Coastguard Worker######################## 69*61046927SAndroid Build Coastguard WorkerAlignConsecutiveAssignments: false 70*61046927SAndroid Build Coastguard Worker#AlignConsecutiveBitFields: false # Requires clang-11 71*61046927SAndroid Build Coastguard WorkerAlignConsecutiveDeclarations: false 72*61046927SAndroid Build Coastguard WorkerAlignConsecutiveMacros: false 73*61046927SAndroid Build Coastguard WorkerAlignTrailingComments: false 74*61046927SAndroid Build Coastguard Worker 75*61046927SAndroid Build Coastguard WorkerAlignEscapedNewlines: Left 76*61046927SAndroid Build Coastguard Worker 77*61046927SAndroid Build Coastguard Worker#AlignOperands: Align # Requires clang-11 78*61046927SAndroid Build Coastguard Worker#BitFieldColonSpacing: Both # Requires clang-12 79*61046927SAndroid Build Coastguard Worker 80*61046927SAndroid Build Coastguard WorkerPointerAlignment: Right 81*61046927SAndroid Build Coastguard Worker#SpaceAroundPointerQualifiers: Both # Requires clang-12 82*61046927SAndroid Build Coastguard Worker 83*61046927SAndroid Build Coastguard WorkerSpaceAfterCStyleCast: false 84*61046927SAndroid Build Coastguard WorkerSpaceAfterLogicalNot: false 85*61046927SAndroid Build Coastguard WorkerSpaceAfterTemplateKeyword: true 86*61046927SAndroid Build Coastguard WorkerSpaceBeforeAssignmentOperators: true 87*61046927SAndroid Build Coastguard WorkerSpaceBeforeCpp11BracedList: false 88*61046927SAndroid Build Coastguard WorkerSpaceBeforeCtorInitializerColon: true 89*61046927SAndroid Build Coastguard WorkerSpaceBeforeInheritanceColon: true 90*61046927SAndroid Build Coastguard WorkerSpaceBeforeParens: ControlStatements 91*61046927SAndroid Build Coastguard Worker#SpaceBeforeParens: ControlStatementsExceptForEachMacros # Requires clang-11 92*61046927SAndroid Build Coastguard WorkerSpaceBeforeRangeBasedForLoopColon: true 93*61046927SAndroid Build Coastguard WorkerSpaceBeforeSquareBrackets: false 94*61046927SAndroid Build Coastguard WorkerSpaceInEmptyBlock: false 95*61046927SAndroid Build Coastguard WorkerSpaceInEmptyParentheses: false 96*61046927SAndroid Build Coastguard WorkerSpacesInAngles: false 97*61046927SAndroid Build Coastguard WorkerSpacesInCStyleCastParentheses: false 98*61046927SAndroid Build Coastguard WorkerSpacesInConditionalStatement: false 99*61046927SAndroid Build Coastguard WorkerSpacesInContainerLiterals: false 100*61046927SAndroid Build Coastguard WorkerSpacesInParentheses: false 101*61046927SAndroid Build Coastguard WorkerSpacesInSquareBrackets: false 102*61046927SAndroid Build Coastguard WorkerSpacesBeforeTrailingComments: 2 103*61046927SAndroid Build Coastguard Worker 104*61046927SAndroid Build Coastguard Worker############################ 105*61046927SAndroid Build Coastguard Worker# Multi-line constructions # 106*61046927SAndroid Build Coastguard Worker############################ 107*61046927SAndroid Build Coastguard WorkerAllowShortBlocksOnASingleLine: Empty 108*61046927SAndroid Build Coastguard WorkerAllowShortCaseLabelsOnASingleLine: false 109*61046927SAndroid Build Coastguard Worker#AllowShortEnumsOnASingleLine: false # Requires clang-11 110*61046927SAndroid Build Coastguard WorkerAllowShortFunctionsOnASingleLine: Empty 111*61046927SAndroid Build Coastguard WorkerAllowShortIfStatementsOnASingleLine: Never 112*61046927SAndroid Build Coastguard WorkerAllowShortLambdasOnASingleLine: All 113*61046927SAndroid Build Coastguard WorkerAllowShortLoopsOnASingleLine: false 114*61046927SAndroid Build Coastguard Worker 115*61046927SAndroid Build Coastguard WorkerAlwaysBreakAfterReturnType: None 116*61046927SAndroid Build Coastguard WorkerAlwaysBreakBeforeMultilineStrings: false 117*61046927SAndroid Build Coastguard WorkerAlwaysBreakTemplateDeclarations: Yes 118*61046927SAndroid Build Coastguard Worker 119*61046927SAndroid Build Coastguard WorkerBreakBeforeBraces: Custom 120*61046927SAndroid Build Coastguard WorkerBraceWrapping: 121*61046927SAndroid Build Coastguard Worker AfterCaseLabel: false 122*61046927SAndroid Build Coastguard Worker AfterClass: false 123*61046927SAndroid Build Coastguard Worker AfterControlStatement: Never 124*61046927SAndroid Build Coastguard Worker AfterEnum: false 125*61046927SAndroid Build Coastguard Worker AfterFunction: true 126*61046927SAndroid Build Coastguard Worker AfterNamespace: true 127*61046927SAndroid Build Coastguard Worker AfterObjCDeclaration: false 128*61046927SAndroid Build Coastguard Worker AfterStruct: false 129*61046927SAndroid Build Coastguard Worker AfterUnion: false 130*61046927SAndroid Build Coastguard Worker BeforeCatch: false 131*61046927SAndroid Build Coastguard Worker BeforeElse: false 132*61046927SAndroid Build Coastguard Worker# BeforeLambdaBody: false # Requires clang-11 133*61046927SAndroid Build Coastguard Worker IndentBraces: false 134*61046927SAndroid Build Coastguard Worker SplitEmptyFunction: true 135*61046927SAndroid Build Coastguard Worker SplitEmptyNamespace: true 136*61046927SAndroid Build Coastguard Worker SplitEmptyRecord: true 137*61046927SAndroid Build Coastguard Worker 138*61046927SAndroid Build Coastguard WorkerBreakBeforeBinaryOperators: None 139*61046927SAndroid Build Coastguard WorkerBreakBeforeTernaryOperators: true 140*61046927SAndroid Build Coastguard Worker 141*61046927SAndroid Build Coastguard WorkerBreakConstructorInitializers: AfterColon 142*61046927SAndroid Build Coastguard WorkerBreakInheritanceList: AfterColon 143*61046927SAndroid Build Coastguard Worker 144*61046927SAndroid Build Coastguard WorkerBreakStringLiterals: false 145*61046927SAndroid Build Coastguard Worker 146*61046927SAndroid Build Coastguard WorkerCompactNamespaces: false 147*61046927SAndroid Build Coastguard WorkerConstructorInitializerAllOnOneLineOrOnePerLine: true 148*61046927SAndroid Build Coastguard Worker 149*61046927SAndroid Build Coastguard Worker#InsertTrailingCommas: Wrapped # Requires clang-11 150*61046927SAndroid Build Coastguard Worker 151*61046927SAndroid Build Coastguard WorkerKeepEmptyLinesAtTheStartOfBlocks: false 152*61046927SAndroid Build Coastguard WorkerMaxEmptyLinesToKeep: 1 153*61046927SAndroid Build Coastguard Worker 154*61046927SAndroid Build Coastguard WorkerSortUsingDeclarations: true 155*61046927SAndroid Build Coastguard Worker 156*61046927SAndroid Build Coastguard Worker############ 157*61046927SAndroid Build Coastguard Worker# Includes # 158*61046927SAndroid Build Coastguard Worker############ 159*61046927SAndroid Build Coastguard Worker# TODO: Temporary config 160*61046927SAndroid Build Coastguard WorkerIncludeBlocks: Preserve 161*61046927SAndroid Build Coastguard WorkerSortIncludes: false 162*61046927SAndroid Build Coastguard Worker# TODO: This requires additional work to clean up headers & includes first 163*61046927SAndroid Build Coastguard Worker#IncludeBlocks: Regroup 164*61046927SAndroid Build Coastguard Worker#SortIncludes: true 165*61046927SAndroid Build Coastguard Worker#IncludeIsMainRegex: '(_test)?$' 166*61046927SAndroid Build Coastguard Worker##IncludeIsMainSourceRegex: <default> 167*61046927SAndroid Build Coastguard Worker#IncludeCategories: 168*61046927SAndroid Build Coastguard Worker# - Regex: '^"' 169*61046927SAndroid Build Coastguard Worker# Priority: 1 170*61046927SAndroid Build Coastguard Worker 171*61046927SAndroid Build Coastguard Worker############ 172*61046927SAndroid Build Coastguard Worker# Comments # 173*61046927SAndroid Build Coastguard Worker############ 174*61046927SAndroid Build Coastguard WorkerFixNamespaceComments: false 175*61046927SAndroid Build Coastguard Worker 176*61046927SAndroid Build Coastguard Worker############# 177*61046927SAndroid Build Coastguard Worker# Penalties # 178*61046927SAndroid Build Coastguard Worker############# 179*61046927SAndroid Build Coastguard Worker# Taken from torvalds/kernel:.clang-format 180*61046927SAndroid Build Coastguard WorkerPenaltyBreakAssignment: 10 181*61046927SAndroid Build Coastguard WorkerPenaltyBreakBeforeFirstCallParameter: 30 182*61046927SAndroid Build Coastguard WorkerPenaltyBreakComment: 10 183*61046927SAndroid Build Coastguard WorkerPenaltyBreakFirstLessLess: 0 184*61046927SAndroid Build Coastguard WorkerPenaltyBreakString: 10 185*61046927SAndroid Build Coastguard WorkerPenaltyBreakTemplateDeclaration: 10 186*61046927SAndroid Build Coastguard WorkerPenaltyExcessCharacter: 100 187*61046927SAndroid Build Coastguard WorkerPenaltyReturnTypeOnItsOwnLine: 60 188*61046927SAndroid Build Coastguard Worker 189*61046927SAndroid Build Coastguard Worker####################### 190*61046927SAndroid Build Coastguard Worker# User-defined macros # 191*61046927SAndroid Build Coastguard Worker####################### 192*61046927SAndroid Build Coastguard WorkerCommentPragmas: '^ IWYU pragma:' 193*61046927SAndroid Build Coastguard Worker 194*61046927SAndroid Build Coastguard WorkerMacroBlockBegin: '' 195*61046927SAndroid Build Coastguard WorkerMacroBlockEnd: '' 196*61046927SAndroid Build Coastguard Worker 197*61046927SAndroid Build Coastguard Worker#AttributeMacros: [] # Requires clang-12 198*61046927SAndroid Build Coastguard Worker 199*61046927SAndroid Build Coastguard WorkerForEachMacros: [ 200*61046927SAndroid Build Coastguard Worker 'foreach_instr', 201*61046927SAndroid Build Coastguard Worker 'foreach_instr_safe', 202*61046927SAndroid Build Coastguard Worker 'hash_table_foreach', 203*61046927SAndroid Build Coastguard Worker 'LIST_FOR_EACH_ENTRY', 204*61046927SAndroid Build Coastguard Worker 'LIST_FOR_EACH_ENTRY_FROM', 205*61046927SAndroid Build Coastguard Worker 'LIST_FOR_EACH_ENTRY_FROM_REV', 206*61046927SAndroid Build Coastguard Worker 'LIST_FOR_EACH_ENTRY_SAFE', 207*61046927SAndroid Build Coastguard Worker 'LIST_FOR_EACH_ENTRY_SAFE_REV', 208*61046927SAndroid Build Coastguard Worker 'list_for_each_entry', 209*61046927SAndroid Build Coastguard Worker 'list_for_each_entry_from', 210*61046927SAndroid Build Coastguard Worker 'list_for_each_entry_from_rev', 211*61046927SAndroid Build Coastguard Worker 'list_for_each_entry_from_safe', 212*61046927SAndroid Build Coastguard Worker 'list_for_each_entry_rev', 213*61046927SAndroid Build Coastguard Worker 'list_for_each_entry_safe', 214*61046927SAndroid Build Coastguard Worker 'list_for_each_entry_safe_rev', 215*61046927SAndroid Build Coastguard Worker 'list_pair_for_each_entry', 216*61046927SAndroid Build Coastguard Worker 'pvr_csb_emit', 217*61046927SAndroid Build Coastguard Worker 'pvr_csb_emit_merge', 218*61046927SAndroid Build Coastguard Worker 'pvr_csb_pack', 219*61046927SAndroid Build Coastguard Worker 'nir_foreach_block', 220*61046927SAndroid Build Coastguard Worker 'nir_foreach_block_safe', 221*61046927SAndroid Build Coastguard Worker 'nir_foreach_block_unstructured', 222*61046927SAndroid Build Coastguard Worker 'nir_foreach_function', 223*61046927SAndroid Build Coastguard Worker 'nir_foreach_instr', 224*61046927SAndroid Build Coastguard Worker 'nir_foreach_instr_safe', 225*61046927SAndroid Build Coastguard Worker 'nir_foreach_shader_in_variable', 226*61046927SAndroid Build Coastguard Worker 'nir_foreach_shader_out_variable', 227*61046927SAndroid Build Coastguard Worker 'nir_foreach_use', 228*61046927SAndroid Build Coastguard Worker 'nir_foreach_use_safe', 229*61046927SAndroid Build Coastguard Worker 'nir_foreach_variable_with_modes', 230*61046927SAndroid Build Coastguard Worker 'rogue_foreach_block', 231*61046927SAndroid Build Coastguard Worker 'rogue_foreach_block_safe', 232*61046927SAndroid Build Coastguard Worker 'rogue_foreach_block_rev', 233*61046927SAndroid Build Coastguard Worker 'rogue_foreach_block_safe_rev', 234*61046927SAndroid Build Coastguard Worker 'rogue_foreach_block_use', 235*61046927SAndroid Build Coastguard Worker 'rogue_foreach_block_use_safe', 236*61046927SAndroid Build Coastguard Worker 'rogue_foreach_drc_trxn', 237*61046927SAndroid Build Coastguard Worker 'rogue_foreach_drc_trxn_safe', 238*61046927SAndroid Build Coastguard Worker 'rogue_foreach_phase_in_set', 239*61046927SAndroid Build Coastguard Worker 'rogue_foreach_phase_in_set_rev', 240*61046927SAndroid Build Coastguard Worker 'rogue_foreach_imm_use', 241*61046927SAndroid Build Coastguard Worker 'rogue_foreach_imm_use_safe', 242*61046927SAndroid Build Coastguard Worker 'rogue_foreach_instr_group_in_block', 243*61046927SAndroid Build Coastguard Worker 'rogue_foreach_instr_group_in_block_safe', 244*61046927SAndroid Build Coastguard Worker 'rogue_foreach_instr_group_in_shader', 245*61046927SAndroid Build Coastguard Worker 'rogue_foreach_instr_group_in_shader_safe', 246*61046927SAndroid Build Coastguard Worker 'rogue_foreach_instr_in_block', 247*61046927SAndroid Build Coastguard Worker 'rogue_foreach_instr_in_block_safe', 248*61046927SAndroid Build Coastguard Worker 'rogue_foreach_instr_in_block_rev', 249*61046927SAndroid Build Coastguard Worker 'rogue_foreach_instr_in_block_safe_rev', 250*61046927SAndroid Build Coastguard Worker 'rogue_foreach_instr_in_shader', 251*61046927SAndroid Build Coastguard Worker 'rogue_foreach_instr_in_shader_safe', 252*61046927SAndroid Build Coastguard Worker 'rogue_foreach_instr_in_shader_rev', 253*61046927SAndroid Build Coastguard Worker 'rogue_foreach_instr_in_shader_safe_rev', 254*61046927SAndroid Build Coastguard Worker 'rogue_foreach_mod_in_set', 255*61046927SAndroid Build Coastguard Worker 'rogue_foreach_reg', 256*61046927SAndroid Build Coastguard Worker 'rogue_foreach_reg_safe', 257*61046927SAndroid Build Coastguard Worker 'rogue_foreach_reg_use', 258*61046927SAndroid Build Coastguard Worker 'rogue_foreach_reg_use_safe', 259*61046927SAndroid Build Coastguard Worker 'rogue_foreach_reg_write', 260*61046927SAndroid Build Coastguard Worker 'rogue_foreach_reg_write_safe', 261*61046927SAndroid Build Coastguard Worker 'rogue_foreach_regarray', 262*61046927SAndroid Build Coastguard Worker 'rogue_foreach_regarray_safe', 263*61046927SAndroid Build Coastguard Worker 'rogue_foreach_regarray_use', 264*61046927SAndroid Build Coastguard Worker 'rogue_foreach_regarray_use_safe', 265*61046927SAndroid Build Coastguard Worker 'rogue_foreach_regarray_write', 266*61046927SAndroid Build Coastguard Worker 'rogue_foreach_regarray_write_safe', 267*61046927SAndroid Build Coastguard Worker 'rogue_foreach_subarray', 268*61046927SAndroid Build Coastguard Worker 'rogue_foreach_subarray_safe', 269*61046927SAndroid Build Coastguard Worker 'rb_tree_foreach', 270*61046927SAndroid Build Coastguard Worker 'rb_tree_foreach_safe', 271*61046927SAndroid Build Coastguard Worker 'u_foreach_bit', 272*61046927SAndroid Build Coastguard Worker 'u_vector_foreach', 273*61046927SAndroid Build Coastguard Worker 'util_dynarray_foreach', 274*61046927SAndroid Build Coastguard Worker 'vk_foreach_struct', 275*61046927SAndroid Build Coastguard Worker 'vk_foreach_struct_const', 276*61046927SAndroid Build Coastguard Worker# FIXME: vk_outarray_append doesn't fit here, remove 277*61046927SAndroid Build Coastguard Worker# it when a better solution exists for it. 278*61046927SAndroid Build Coastguard Worker 'vk_outarray_append', 279*61046927SAndroid Build Coastguard Worker 'vk_outarray_append_typed' 280*61046927SAndroid Build Coastguard Worker] 281*61046927SAndroid Build Coastguard Worker 282*61046927SAndroid Build Coastguard WorkerNamespaceMacros: [ 283*61046927SAndroid Build Coastguard Worker] 284*61046927SAndroid Build Coastguard Worker 285*61046927SAndroid Build Coastguard WorkerStatementMacros: [ 286*61046927SAndroid Build Coastguard Worker] 287*61046927SAndroid Build Coastguard Worker 288*61046927SAndroid Build Coastguard WorkerTypenameMacros: [ 289*61046927SAndroid Build Coastguard Worker] 290*61046927SAndroid Build Coastguard Worker 291*61046927SAndroid Build Coastguard Worker#WhitespaceSensitiveMacros: [] # Requires clang-11 292