diff options
author | Erik Verbruggen <erik.verbruggen@qt.io> | 2018-10-09 16:15:10 +0200 |
---|---|---|
committer | Erik Verbruggen <erik.verbruggen@qt.io> | 2019-03-22 16:11:46 +0000 |
commit | c740143ad6938bf1c81a40de73649e8664f6037f (patch) | |
tree | b25795145386b61f8115e7026b7e62eb437bf123 /src/3rdparty/llvm/include/llvm/Support/Compiler.h | |
parent | b92b125455cc01dd48f496d85bdb7a1c96a258fd (diff) |
V4: Add headers from LLVM that define an intrusive list template
These intrusive list is used in the follow-up patch, where it is used to
hold a list of basic blocks in a function, and a list of instructions in
the basic block.
The advantage of this implementation is that it there is an easy and
direct access to iterators when you have an element, it defines STL-like
iterators, is double-linked, and you can easily insert before and after
elements. We don't have something like this in Qt, and it's better to
take an existing and well-tested implementation that making a home-grown
one.
Change-Id: Ie8c726eafe6d7558ae6a3550e8ecc2f15f362b17
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Diffstat (limited to 'src/3rdparty/llvm/include/llvm/Support/Compiler.h')
-rw-r--r-- | src/3rdparty/llvm/include/llvm/Support/Compiler.h | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/3rdparty/llvm/include/llvm/Support/Compiler.h b/src/3rdparty/llvm/include/llvm/Support/Compiler.h new file mode 100644 index 0000000000..43a96e49ce --- /dev/null +++ b/src/3rdparty/llvm/include/llvm/Support/Compiler.h @@ -0,0 +1,19 @@ +//===-- llvm/Support/Compiler.h - Compiler abstraction support --*- C++ -*-===// +// +// The LLVM Compiler Infrastructure +// +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// +// +// Due to layering constraints (Support depends on Demangler) this is a thin +// wrapper around the implementation that lives in llvm-c, though most clients +// can/should think of this as being provided by Support for simplicity (not +// many clients are aware of their dependency on Demangler/it's a weird place to +// own this - but didn't seem to justify splitting Support into "lower support" +// and "upper support"). +// +//===----------------------------------------------------------------------===// + +#include "llvm/Demangle/Compiler.h" |