[llvm-commits] [llvm] r151828 - in /llvm/trunk/include/llvm: ADT/SaveAndRestore.h Support/SaveAndRestore.h
Argyrios Kyrtzidis
akyrtzi at gmail.com
Thu Mar 1 11:45:47 PST 2012
Author: akirtzidis
Date: Thu Mar 1 13:45:47 2012
New Revision: 151828
URL: http://llvm.org/viewvc/llvm-project?rev=151828&view=rev
Log:
Move include/llvm/ADT/SaveAndRestore.h -> include/llvm/Support/SaveAndRestore.h
Added:
llvm/trunk/include/llvm/Support/SaveAndRestore.h
- copied, changed from r151824, llvm/trunk/include/llvm/ADT/SaveAndRestore.h
Removed:
llvm/trunk/include/llvm/ADT/SaveAndRestore.h
Removed: llvm/trunk/include/llvm/ADT/SaveAndRestore.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/ADT/SaveAndRestore.h?rev=151827&view=auto
==============================================================================
--- llvm/trunk/include/llvm/ADT/SaveAndRestore.h (original)
+++ llvm/trunk/include/llvm/ADT/SaveAndRestore.h (removed)
@@ -1,47 +0,0 @@
-//===-- SaveAndRestore.h - Utility -------------------------------*- C++ -*-=//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-//
-// This file provides utility classes that uses RAII to save and restore
-// values.
-//
-//===----------------------------------------------------------------------===//
-
-#ifndef LLVM_ADT_SAVERESTORE
-#define LLVM_ADT_SAVERESTORE
-
-namespace llvm {
-
-// SaveAndRestore - A utility class that uses RAII to save and restore
-// the value of a variable.
-template<typename T>
-struct SaveAndRestore {
- SaveAndRestore(T& x) : X(x), old_value(x) {}
- SaveAndRestore(T& x, const T &new_value) : X(x), old_value(x) {
- X = new_value;
- }
- ~SaveAndRestore() { X = old_value; }
- T get() { return old_value; }
-private:
- T& X;
- T old_value;
-};
-
-// SaveOr - Similar to SaveAndRestore. Operates only on bools; the old
-// value of a variable is saved, and during the dstor the old value is
-// or'ed with the new value.
-struct SaveOr {
- SaveOr(bool& x) : X(x), old_value(x) { x = false; }
- ~SaveOr() { X |= old_value; }
-private:
- bool& X;
- const bool old_value;
-};
-
-}
-#endif
Copied: llvm/trunk/include/llvm/Support/SaveAndRestore.h (from r151824, llvm/trunk/include/llvm/ADT/SaveAndRestore.h)
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Support/SaveAndRestore.h?p2=llvm/trunk/include/llvm/Support/SaveAndRestore.h&p1=llvm/trunk/include/llvm/ADT/SaveAndRestore.h&r1=151824&r2=151828&rev=151828&view=diff
==============================================================================
(empty)
More information about the llvm-commits
mailing list