1 /**************************************************************************** 2 * Copyright (C) 2014-2015 Intel Corporation. All Rights Reserved. 3 * 4 * Permission is hereby granted, free of charge, to any person obtaining a 5 * copy of this software and associated documentation files (the "Software"), 6 * to deal in the Software without restriction, including without limitation 7 * the rights to use, copy, modify, merge, publish, distribute, sublicense, 8 * and/or sell copies of the Software, and to permit persons to whom the 9 * Software is furnished to do so, subject to the following conditions: 10 * 11 * The above copyright notice and this permission notice (including the next 12 * paragraph) shall be included in all copies or substantial portions of the 13 * Software. 14 * 15 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 18 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 20 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS 21 * IN THE SOFTWARE. 22 ****************************************************************************/ 23 24 #include "rdtsc_core.h" 25 #include "common/rdtsc_buckets.h" 26 27 // must match CORE_BUCKETS enum order 28 BUCKET_DESC gCoreBuckets[] = { 29 {"APIClearRenderTarget", "", true, 0xff0b8bea}, 30 {"APIDraw", "", true, 0xff000066}, 31 {"APIDrawWakeAllThreads", "", false, 0xffffffff}, 32 {"APIDrawIndexed", "", true, 0xff000066}, 33 {"APIDispatch", "", true, 0xff660000}, 34 {"APIStoreTiles", "", true, 0xff00ffff}, 35 {"APIGetDrawContext", "", false, 0xffffffff}, 36 {"APISync", "", true, 0xff6666ff}, 37 {"APIWaitForIdle", "", true, 0xff0000ff}, 38 {"FEProcessDraw", "", true, 0xff009900}, 39 {"FEProcessDrawIndexed", "", true, 0xff009900}, 40 {"FEFetchShader", "", false, 0xffffffff}, 41 {"FEVertexShader", "", false, 0xffffffff}, 42 {"FEHullShader", "", false, 0xffffffff}, 43 {"FETessellation", "", false, 0xffffffff}, 44 {"FEDomainShader", "", false, 0xffffffff}, 45 {"FEGeometryShader", "", false, 0xffffffff}, 46 {"FEStreamout", "", false, 0xffffffff}, 47 {"FEPAAssemble", "", false, 0xffffffff}, 48 {"FEBinPoints", "", false, 0xff29b854}, 49 {"FEBinLines", "", false, 0xff29b854}, 50 {"FEBinTriangles", "", false, 0xff29b854}, 51 {"FETriangleSetup", "", false, 0xffffffff}, 52 {"FEViewportCull", "", false, 0xffffffff}, 53 {"FEGuardbandClip", "", false, 0xffffffff}, 54 {"FEClipPoints", "", false, 0xffffffff}, 55 {"FEClipLines", "", false, 0xffffffff}, 56 {"FEClipTriangles", "", false, 0xffffffff}, 57 {"FEClipRectangles", "", false, 0xffffffff}, 58 {"FECullZeroAreaAndBackface", "", false, 0xffffffff}, 59 {"FECullBetweenCenters", "", false, 0xffffffff}, 60 {"FEEarlyRastEnter", "", false, 0xffffffff}, 61 {"FEEarlyRastExit", "", false, 0xffffffff}, 62 {"FEProcessStoreTiles", "", true, 0xff39c864}, 63 {"FEProcessInvalidateTiles", "", true, 0xffffffff}, 64 {"WorkerWorkOnFifoBE", "", false, 0xff40261c}, 65 {"WorkerFoundWork", "", false, 0xff573326}, 66 {"BELoadTiles", "", true, 0xffb0e2ff}, 67 {"BEDispatch", "", true, 0xff00a2ff}, 68 {"BEClear", "", true, 0xff00ccbb}, 69 {"BERasterizeLine", "", true, 0xffb26a4e}, 70 {"BERasterizeTriangle", "", true, 0xffb26a4e}, 71 {"BETriangleSetup", "", false, 0xffffffff}, 72 {"BEStepSetup", "", false, 0xffffffff}, 73 {"BECullZeroArea", "", false, 0xffffffff}, 74 {"BEEmptyTriangle", "", false, 0xffffffff}, 75 {"BETrivialAccept", "", false, 0xffffffff}, 76 {"BETrivialReject", "", false, 0xffffffff}, 77 {"BERasterizePartial", "", false, 0xffffffff}, 78 {"BEPixelBackend", "", false, 0xffffffff}, 79 {"BESetup", "", false, 0xffffffff}, 80 {"BEBarycentric", "", false, 0xffffffff}, 81 {"BEEarlyDepthTest", "", false, 0xffffffff}, 82 {"BEPixelShader", "", false, 0xffffffff}, 83 {"BESingleSampleBackend", "", false, 0xffffffff}, 84 {"BEPixelRateBackend", "", false, 0xffffffff}, 85 {"BESampleRateBackend", "", false, 0xffffffff}, 86 {"BENullBackend", "", false, 0xffffffff}, 87 {"BELateDepthTest", "", false, 0xffffffff}, 88 {"BEOutputMerger", "", false, 0xffffffff}, 89 {"BEStoreTiles", "", true, 0xff00cccc}, 90 {"BEEndTile", "", false, 0xffffffff}, 91 }; 92 static_assert(NumBuckets == (sizeof(gCoreBuckets) / sizeof(gCoreBuckets[0])), 93 "RDTSC Bucket enum and description table size mismatched."); 94 95