Viewing file: go-optimize.h (1.06 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
// go-optimize.h -- Go frontend optimizer flags. -*- C++ -*-
// Copyright 2011 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file.
#ifndef GO_OPTIMIZE_H #define GO_OPTIMIZE_H
// This class manages different arguments to -fgo-optimize-XXX. If you // want to create a new optimization, create a variable of this type with the // name to use for XXX. You can then use is_enabled to see whether // the -fgo-optimize-XXX option was used on the command line.
class Go_optimize { public: Go_optimize(const char*, bool);
// Whether this optimizaiton was enabled. bool is_enabled() const { return this->is_enabled_; }
// Enable/disable an optimization by name. Return true if found. static bool enable_by_name(const char*, bool);
private: // The next optimize flag. These are not in any order. Go_optimize* next_; // The name of this optimization pass. const char* name_; // Whether this dump was enabled. bool is_enabled_; };
#endif // !defined(GO_OPTIMIZE_H)
|