Edit

kc3-lang/angle/src/tests/perf_tests/ANGLEPerfTestArgs.cpp

Branch :

  • Show log

    Commit

  • Author : Shahbaz Youssefi
    Date : 2019-02-04 16:52:12
    Hash : f576a708
    Message : Add glmark2 to angle_perftests Bug: angleproject:3125 Change-Id: I9242743c6b5c6e18d0a23ff853ef6b9b370865a6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1452956 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>

  • src/tests/perf_tests/ANGLEPerfTestArgs.cpp
  • //
    // Copyright 2019 The ANGLE Project Authors. All rights reserved.
    // Use of this source code is governed by a BSD-style license that can be
    // found in the LICENSE file.
    //
    // ANGLEPerfTestArgs.cpp:
    //   Parse command line arguments for angle_perftests.
    //
    
    #include "ANGLEPerfTestArgs.h"
    #include <string.h>
    #include <sstream>
    
    namespace angle
    {
    bool gCalibration = false;
    Optional<unsigned int> gStepsToRunOverride;
    bool gEnableTrace      = false;
    const char *gTraceFile = "ANGLETrace.json";
    }  // namespace angle
    
    using namespace angle;
    
    void ANGLEProcessPerfTestArgs(int *argc, char **argv)
    {
        int argcOutCount = 0;
    
        for (int argIndex = 0; argIndex < *argc; argIndex++)
        {
            if (strcmp("--one-frame-only", argv[argIndex]) == 0)
            {
                gStepsToRunOverride = 1;
            }
            else if (strcmp("--enable-trace", argv[argIndex]) == 0)
            {
                gEnableTrace = true;
            }
            else if (strcmp("--trace-file", argv[argIndex]) == 0 && argIndex < *argc - 1)
            {
                gTraceFile = argv[argIndex];
                // Skip an additional argument.
                argIndex++;
            }
            else if (strcmp("--calibration", argv[argIndex]) == 0)
            {
                gCalibration = true;
            }
            else if (strcmp("--steps", argv[argIndex]) == 0 && argIndex < *argc - 1)
            {
                unsigned int stepsToRun = 0;
                std::stringstream strstr;
                strstr << argv[argIndex + 1];
                strstr >> stepsToRun;
                gStepsToRunOverride = stepsToRun;
                // Skip an additional argument.
                argIndex++;
            }
            else
            {
                argv[argcOutCount++] = argv[argIndex];
            }
        }
    
        *argc = argcOutCount;
    }