1//===- subzero/src/IceTimerTree.def - X-macros for timing -------*- C++ -*-===// 2// 3// The Subzero Code Generator 4// 5// This file is distributed under the University of Illinois Open Source 6// License. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// 9// 10// This file lists predefined timing tags. New tags can be added to avoid a 11// runtime string lookup. 12// 13//===----------------------------------------------------------------------===// 14 15#ifndef SUBZERO_SRC_ICETIMERTREE_DEF 16#define SUBZERO_SRC_ICETIMERTREE_DEF 17 18#define TIMERTREE_TABLE \ 19 /* enum value */ \ 20 X(O2) \ 21 X(Om1) \ 22 X(advancedPhiLowering) \ 23 X(alloca) \ 24 X(computeLoopNestDepth) \ 25 X(convertToIce) \ 26 X(deletePhis) \ 27 X(doAddressOpt) \ 28 X(doArgLowering) \ 29 X(doBranchOpt) \ 30 X(emitAsm) \ 31 X(emitGlobalInitializers) \ 32 X(findRMW) \ 33 X(floatConstantCse) \ 34 X(genCode) \ 35 X(genFrame) \ 36 X(genHelpers) \ 37 X(initUnhandled) \ 38 X(linearScan) \ 39 X(liveRange) \ 40 X(liveness) \ 41 X(livenessLightweight) \ 42 X(llvmConvert) \ 43 X(loadOpt) \ 44 X(localCse) \ 45 X(loopInvariantCodeMotion) \ 46 X(lowerPhiAssignments) \ 47 X(materializeVectorShuffles) \ 48 X(parse) \ 49 X(parseConstants) \ 50 X(parseFunctions) \ 51 X(parseFunctionValuesymtabs) \ 52 X(parseGlobals) \ 53 X(parseModule) \ 54 X(parseModuleValuesymtabs) \ 55 X(parseTypes) \ 56 X(phiValidation) \ 57 X(placePhiLoads) \ 58 X(placePhiStores) \ 59 X(qEmitPop) \ 60 X(qEmitPush) \ 61 X(qTransPop) \ 62 X(qTransPush) \ 63 X(regAlloc) \ 64 X(renumberInstructions) \ 65 X(shortCircuit) \ 66 X(splitGlobalVars) \ 67 X(splitLocalVars) \ 68 X(szmain) \ 69 X(translate) \ 70 X(translateFunctions) \ 71 X(validateLiveness) \ 72 X(vmetadata) \ 73 X(wasm) \ 74 X(wasmGenIce) \ 75 X(writeELF) 76//#define X(tag) 77 78#endif // SUBZERO_SRC_ICETIMERTREE_DEF 79