[clang] a07aba5 - [clang] Rename all AST/Interp stuff to AST/ByteCode (#104552)
via cfe-commits
cfe-commits at lists.llvm.org
Fri Aug 16 08:13:15 PDT 2024
Author: Timm Baeder
Date: 2024-08-16T17:13:12+02:00
New Revision: a07aba5d44204a7ca0d891a3da05af9960081e4c
URL: https://github.com/llvm/llvm-project/commit/a07aba5d44204a7ca0d891a3da05af9960081e4c
DIFF: https://github.com/llvm/llvm-project/commit/a07aba5d44204a7ca0d891a3da05af9960081e4c.diff
LOG: [clang] Rename all AST/Interp stuff to AST/ByteCode (#104552)
"Interp" clashes with the clang interpreter and people often confuse
this.
Added:
clang/lib/AST/ByteCode/Boolean.h
clang/lib/AST/ByteCode/ByteCodeEmitter.cpp
clang/lib/AST/ByteCode/ByteCodeEmitter.h
clang/lib/AST/ByteCode/Compiler.cpp
clang/lib/AST/ByteCode/Compiler.h
clang/lib/AST/ByteCode/Context.cpp
clang/lib/AST/ByteCode/Context.h
clang/lib/AST/ByteCode/Descriptor.cpp
clang/lib/AST/ByteCode/Descriptor.h
clang/lib/AST/ByteCode/Disasm.cpp
clang/lib/AST/ByteCode/DynamicAllocator.cpp
clang/lib/AST/ByteCode/DynamicAllocator.h
clang/lib/AST/ByteCode/EvalEmitter.cpp
clang/lib/AST/ByteCode/EvalEmitter.h
clang/lib/AST/ByteCode/EvaluationResult.cpp
clang/lib/AST/ByteCode/EvaluationResult.h
clang/lib/AST/ByteCode/Floating.cpp
clang/lib/AST/ByteCode/Floating.h
clang/lib/AST/ByteCode/Frame.cpp
clang/lib/AST/ByteCode/Frame.h
clang/lib/AST/ByteCode/Function.cpp
clang/lib/AST/ByteCode/Function.h
clang/lib/AST/ByteCode/FunctionPointer.h
clang/lib/AST/ByteCode/Integral.h
clang/lib/AST/ByteCode/IntegralAP.h
clang/lib/AST/ByteCode/Interp.cpp
clang/lib/AST/ByteCode/Interp.h
clang/lib/AST/ByteCode/InterpBlock.cpp
clang/lib/AST/ByteCode/InterpBlock.h
clang/lib/AST/ByteCode/InterpBuiltin.cpp
clang/lib/AST/ByteCode/InterpFrame.cpp
clang/lib/AST/ByteCode/InterpFrame.h
clang/lib/AST/ByteCode/InterpShared.cpp
clang/lib/AST/ByteCode/InterpShared.h
clang/lib/AST/ByteCode/InterpStack.cpp
clang/lib/AST/ByteCode/InterpStack.h
clang/lib/AST/ByteCode/InterpState.cpp
clang/lib/AST/ByteCode/InterpState.h
clang/lib/AST/ByteCode/MemberPointer.cpp
clang/lib/AST/ByteCode/MemberPointer.h
clang/lib/AST/ByteCode/Opcode.h
clang/lib/AST/ByteCode/Opcodes.td
clang/lib/AST/ByteCode/Pointer.cpp
clang/lib/AST/ByteCode/Pointer.h
clang/lib/AST/ByteCode/PrimType.cpp
clang/lib/AST/ByteCode/PrimType.h
clang/lib/AST/ByteCode/Primitives.h
clang/lib/AST/ByteCode/Program.cpp
clang/lib/AST/ByteCode/Program.h
clang/lib/AST/ByteCode/Record.cpp
clang/lib/AST/ByteCode/Record.h
clang/lib/AST/ByteCode/Source.cpp
clang/lib/AST/ByteCode/Source.h
clang/lib/AST/ByteCode/State.cpp
clang/lib/AST/ByteCode/State.h
clang/test/AST/ByteCode/arrays.cpp
clang/test/AST/ByteCode/atomic.c
clang/test/AST/ByteCode/atomic.cpp
clang/test/AST/ByteCode/bitfields.cpp
clang/test/AST/ByteCode/builtin-align-cxx.cpp
clang/test/AST/ByteCode/builtin-constant-p.cpp
clang/test/AST/ByteCode/builtin-functions.cpp
clang/test/AST/ByteCode/builtins.cpp
clang/test/AST/ByteCode/c.c
clang/test/AST/ByteCode/c23.c
clang/test/AST/ByteCode/codegen.cpp
clang/test/AST/ByteCode/comma.cpp
clang/test/AST/ByteCode/complex.c
clang/test/AST/ByteCode/complex.cpp
clang/test/AST/ByteCode/cond.cpp
clang/test/AST/ByteCode/const-eval.c
clang/test/AST/ByteCode/const-fpfeatures.cpp
clang/test/AST/ByteCode/const-temporaries.cpp
clang/test/AST/ByteCode/constexpr-frame-describe.cpp
clang/test/AST/ByteCode/constexpr-nqueens.cpp
clang/test/AST/ByteCode/constexpr-subobj-initialization.cpp
clang/test/AST/ByteCode/crash-GH49103-2.cpp
clang/test/AST/ByteCode/cxx03.cpp
clang/test/AST/ByteCode/cxx11.cpp
clang/test/AST/ByteCode/cxx17.cpp
clang/test/AST/ByteCode/cxx20.cpp
clang/test/AST/ByteCode/cxx23.cpp
clang/test/AST/ByteCode/cxx26.cpp
clang/test/AST/ByteCode/cxx2a.cpp
clang/test/AST/ByteCode/cxx98.cpp
clang/test/AST/ByteCode/depth-limit.cpp
clang/test/AST/ByteCode/depth-limit2.cpp
clang/test/AST/ByteCode/enums-targets.cpp
clang/test/AST/ByteCode/enums.cpp
clang/test/AST/ByteCode/eval-order.cpp
clang/test/AST/ByteCode/floats.cpp
clang/test/AST/ByteCode/functions.cpp
clang/test/AST/ByteCode/hlsl.hlsl
clang/test/AST/ByteCode/if.cpp
clang/test/AST/ByteCode/intap.cpp
clang/test/AST/ByteCode/invalid.cpp
clang/test/AST/ByteCode/lambda.cpp
clang/test/AST/ByteCode/lifetimes.cpp
clang/test/AST/ByteCode/literals.cpp
clang/test/AST/ByteCode/loops.cpp
clang/test/AST/ByteCode/memberpointers.cpp
clang/test/AST/ByteCode/ms.cpp
clang/test/AST/ByteCode/mutable.cpp
clang/test/AST/ByteCode/new-delete.cpp
clang/test/AST/ByteCode/nullable.cpp
clang/test/AST/ByteCode/objc.mm
clang/test/AST/ByteCode/opencl.cl
clang/test/AST/ByteCode/pointer-addition.c
clang/test/AST/ByteCode/records.cpp
clang/test/AST/ByteCode/references.cpp
clang/test/AST/ByteCode/shifts.cpp
clang/test/AST/ByteCode/spaceship.cpp
clang/test/AST/ByteCode/switch.cpp
clang/test/AST/ByteCode/sycl.cpp
clang/test/AST/ByteCode/unions.cpp
clang/test/AST/ByteCode/vectors.cpp
clang/test/AST/ByteCode/weak.cpp
clang/unittests/AST/ByteCode/CMakeLists.txt
clang/unittests/AST/ByteCode/Descriptor.cpp
clang/unittests/AST/ByteCode/toAPValue.cpp
Modified:
clang/docs/ClangFormattedStatus.rst
clang/docs/tools/clang-formatted-files.txt
clang/lib/AST/ASTContext.cpp
clang/lib/AST/CMakeLists.txt
clang/lib/AST/ExprConstShared.h
clang/lib/AST/ExprConstant.cpp
clang/unittests/AST/CMakeLists.txt
Removed:
clang/lib/AST/Interp/Boolean.h
clang/lib/AST/Interp/ByteCodeEmitter.cpp
clang/lib/AST/Interp/ByteCodeEmitter.h
clang/lib/AST/Interp/Compiler.cpp
clang/lib/AST/Interp/Compiler.h
clang/lib/AST/Interp/Context.cpp
clang/lib/AST/Interp/Context.h
clang/lib/AST/Interp/Descriptor.cpp
clang/lib/AST/Interp/Descriptor.h
clang/lib/AST/Interp/Disasm.cpp
clang/lib/AST/Interp/DynamicAllocator.cpp
clang/lib/AST/Interp/DynamicAllocator.h
clang/lib/AST/Interp/EvalEmitter.cpp
clang/lib/AST/Interp/EvalEmitter.h
clang/lib/AST/Interp/EvaluationResult.cpp
clang/lib/AST/Interp/EvaluationResult.h
clang/lib/AST/Interp/Floating.cpp
clang/lib/AST/Interp/Floating.h
clang/lib/AST/Interp/Frame.cpp
clang/lib/AST/Interp/Frame.h
clang/lib/AST/Interp/Function.cpp
clang/lib/AST/Interp/Function.h
clang/lib/AST/Interp/FunctionPointer.h
clang/lib/AST/Interp/Integral.h
clang/lib/AST/Interp/IntegralAP.h
clang/lib/AST/Interp/Interp.cpp
clang/lib/AST/Interp/Interp.h
clang/lib/AST/Interp/InterpBlock.cpp
clang/lib/AST/Interp/InterpBlock.h
clang/lib/AST/Interp/InterpBuiltin.cpp
clang/lib/AST/Interp/InterpFrame.cpp
clang/lib/AST/Interp/InterpFrame.h
clang/lib/AST/Interp/InterpShared.cpp
clang/lib/AST/Interp/InterpShared.h
clang/lib/AST/Interp/InterpStack.cpp
clang/lib/AST/Interp/InterpStack.h
clang/lib/AST/Interp/InterpState.cpp
clang/lib/AST/Interp/InterpState.h
clang/lib/AST/Interp/MemberPointer.cpp
clang/lib/AST/Interp/MemberPointer.h
clang/lib/AST/Interp/Opcode.h
clang/lib/AST/Interp/Opcodes.td
clang/lib/AST/Interp/Pointer.cpp
clang/lib/AST/Interp/Pointer.h
clang/lib/AST/Interp/PrimType.cpp
clang/lib/AST/Interp/PrimType.h
clang/lib/AST/Interp/Primitives.h
clang/lib/AST/Interp/Program.cpp
clang/lib/AST/Interp/Program.h
clang/lib/AST/Interp/Record.cpp
clang/lib/AST/Interp/Record.h
clang/lib/AST/Interp/Source.cpp
clang/lib/AST/Interp/Source.h
clang/lib/AST/Interp/State.cpp
clang/lib/AST/Interp/State.h
clang/test/AST/Interp/arrays.cpp
clang/test/AST/Interp/atomic.c
clang/test/AST/Interp/atomic.cpp
clang/test/AST/Interp/bitfields.cpp
clang/test/AST/Interp/builtin-align-cxx.cpp
clang/test/AST/Interp/builtin-constant-p.cpp
clang/test/AST/Interp/builtin-functions.cpp
clang/test/AST/Interp/builtins.cpp
clang/test/AST/Interp/c.c
clang/test/AST/Interp/c23.c
clang/test/AST/Interp/codegen.cpp
clang/test/AST/Interp/comma.cpp
clang/test/AST/Interp/complex.c
clang/test/AST/Interp/complex.cpp
clang/test/AST/Interp/cond.cpp
clang/test/AST/Interp/const-eval.c
clang/test/AST/Interp/const-fpfeatures.cpp
clang/test/AST/Interp/const-temporaries.cpp
clang/test/AST/Interp/constexpr-frame-describe.cpp
clang/test/AST/Interp/constexpr-nqueens.cpp
clang/test/AST/Interp/constexpr-subobj-initialization.cpp
clang/test/AST/Interp/crash-GH49103-2.cpp
clang/test/AST/Interp/cxx03.cpp
clang/test/AST/Interp/cxx11.cpp
clang/test/AST/Interp/cxx17.cpp
clang/test/AST/Interp/cxx20.cpp
clang/test/AST/Interp/cxx23.cpp
clang/test/AST/Interp/cxx26.cpp
clang/test/AST/Interp/cxx2a.cpp
clang/test/AST/Interp/cxx98.cpp
clang/test/AST/Interp/depth-limit.cpp
clang/test/AST/Interp/depth-limit2.cpp
clang/test/AST/Interp/enums-targets.cpp
clang/test/AST/Interp/enums.cpp
clang/test/AST/Interp/eval-order.cpp
clang/test/AST/Interp/floats.cpp
clang/test/AST/Interp/functions.cpp
clang/test/AST/Interp/hlsl.hlsl
clang/test/AST/Interp/if.cpp
clang/test/AST/Interp/intap.cpp
clang/test/AST/Interp/invalid.cpp
clang/test/AST/Interp/lambda.cpp
clang/test/AST/Interp/lifetimes.cpp
clang/test/AST/Interp/literals.cpp
clang/test/AST/Interp/loops.cpp
clang/test/AST/Interp/memberpointers.cpp
clang/test/AST/Interp/ms.cpp
clang/test/AST/Interp/mutable.cpp
clang/test/AST/Interp/new-delete.cpp
clang/test/AST/Interp/nullable.cpp
clang/test/AST/Interp/objc.mm
clang/test/AST/Interp/opencl.cl
clang/test/AST/Interp/pointer-addition.c
clang/test/AST/Interp/records.cpp
clang/test/AST/Interp/references.cpp
clang/test/AST/Interp/shifts.cpp
clang/test/AST/Interp/spaceship.cpp
clang/test/AST/Interp/switch.cpp
clang/test/AST/Interp/sycl.cpp
clang/test/AST/Interp/unions.cpp
clang/test/AST/Interp/vectors.cpp
clang/test/AST/Interp/weak.cpp
clang/unittests/AST/Interp/CMakeLists.txt
clang/unittests/AST/Interp/Descriptor.cpp
clang/unittests/AST/Interp/toAPValue.cpp
################################################################################
diff --git a/clang/docs/ClangFormattedStatus.rst b/clang/docs/ClangFormattedStatus.rst
index 68c13076ccbb4e..0ee0782879ef6b 100644
--- a/clang/docs/ClangFormattedStatus.rst
+++ b/clang/docs/ClangFormattedStatus.rst
@@ -439,7 +439,7 @@ tree in terms of conformance to :doc:`ClangFormat` as of: March 06, 2022 17:32:2
- `2`
- `79`
- :part:`2%`
- * - clang/lib/AST/Interp
+ * - clang/lib/AST/ByteCode
- `44`
- `18`
- `26`
diff --git a/clang/docs/tools/clang-formatted-files.txt b/clang/docs/tools/clang-formatted-files.txt
index 62871133a68075..fc07357986d989 100644
--- a/clang/docs/tools/clang-formatted-files.txt
+++ b/clang/docs/tools/clang-formatted-files.txt
@@ -322,24 +322,24 @@ clang/lib/APINotes/APINotesTypes.cpp
clang/lib/APINotes/APINotesYAMLCompiler.cpp
clang/lib/AST/DataCollection.cpp
clang/lib/AST/Linkage.h
-clang/lib/AST/Interp/ByteCodeGenError.cpp
-clang/lib/AST/Interp/ByteCodeGenError.h
-clang/lib/AST/Interp/Context.cpp
-clang/lib/AST/Interp/Context.h
-clang/lib/AST/Interp/Descriptor.cpp
-clang/lib/AST/Interp/Disasm.cpp
-clang/lib/AST/Interp/EvalEmitter.h
-clang/lib/AST/Interp/Frame.cpp
-clang/lib/AST/Interp/Frame.h
-clang/lib/AST/Interp/InterpState.h
-clang/lib/AST/Interp/Opcode.h
-clang/lib/AST/Interp/Pointer.cpp
-clang/lib/AST/Interp/PrimType.cpp
-clang/lib/AST/Interp/Record.h
-clang/lib/AST/Interp/Source.cpp
-clang/lib/AST/Interp/Source.h
-clang/lib/AST/Interp/State.cpp
-clang/lib/AST/Interp/State.h
+clang/lib/AST/ByteCode/ByteCodeGenError.cpp
+clang/lib/AST/ByteCode/ByteCodeGenError.h
+clang/lib/AST/ByteCode/Context.cpp
+clang/lib/AST/ByteCode/Context.h
+clang/lib/AST/ByteCode/Descriptor.cpp
+clang/lib/AST/ByteCode/Disasm.cpp
+clang/lib/AST/ByteCode/EvalEmitter.h
+clang/lib/AST/ByteCode/Frame.cpp
+clang/lib/AST/ByteCode/Frame.h
+clang/lib/AST/ByteCode/InterpState.h
+clang/lib/AST/ByteCode/Opcode.h
+clang/lib/AST/ByteCode/Pointer.cpp
+clang/lib/AST/ByteCode/PrimType.cpp
+clang/lib/AST/ByteCode/Record.h
+clang/lib/AST/ByteCode/Source.cpp
+clang/lib/AST/ByteCode/Source.h
+clang/lib/AST/ByteCode/State.cpp
+clang/lib/AST/ByteCode/State.h
clang/lib/ASTMatchers/GtestMatchers.cpp
clang/lib/ASTMatchers/Dynamic/Marshallers.cpp
clang/lib/Basic/Attributes.cpp
diff --git a/clang/lib/AST/ASTContext.cpp b/clang/lib/AST/ASTContext.cpp
index 0dbbe0043f7031..f35a025fc8edfc 100644
--- a/clang/lib/AST/ASTContext.cpp
+++ b/clang/lib/AST/ASTContext.cpp
@@ -11,8 +11,8 @@
//===----------------------------------------------------------------------===//
#include "clang/AST/ASTContext.h"
+#include "ByteCode/Context.h"
#include "CXXABI.h"
-#include "Interp/Context.h"
#include "clang/AST/APValue.h"
#include "clang/AST/ASTConcept.h"
#include "clang/AST/ASTMutationListener.h"
diff --git a/clang/lib/AST/Interp/Boolean.h b/clang/lib/AST/ByteCode/Boolean.h
similarity index 96%
rename from clang/lib/AST/Interp/Boolean.h
rename to clang/lib/AST/ByteCode/Boolean.h
index 23f72860367646..0a2e0fe332110e 100644
--- a/clang/lib/AST/Interp/Boolean.h
+++ b/clang/lib/AST/ByteCode/Boolean.h
@@ -9,25 +9,25 @@
#ifndef LLVM_CLANG_AST_INTERP_BOOLEAN_H
#define LLVM_CLANG_AST_INTERP_BOOLEAN_H
-#include <cstddef>
-#include <cstdint>
#include "Integral.h"
#include "clang/AST/APValue.h"
#include "clang/AST/ComparisonCategories.h"
#include "llvm/ADT/APSInt.h"
#include "llvm/Support/MathExtras.h"
#include "llvm/Support/raw_ostream.h"
+#include <cstddef>
+#include <cstdint>
namespace clang {
namespace interp {
/// Wrapper around boolean types.
class Boolean final {
- private:
+private:
/// Underlying boolean.
bool V;
- public:
+public:
/// Zero-initializes a boolean.
Boolean() : V(false) {}
explicit Boolean(bool V) : V(V) {}
@@ -104,8 +104,7 @@ class Boolean final {
static Boolean zero() { return from(false); }
- template <typename T>
- static Boolean from(T Value, unsigned NumBits) {
+ template <typename T> static Boolean from(T Value, unsigned NumBits) {
return Boolean(Value);
}
@@ -153,7 +152,7 @@ inline llvm::raw_ostream &operator<<(llvm::raw_ostream &OS, const Boolean &B) {
return OS;
}
-} // namespace interp
-} // namespace clang
+} // namespace interp
+} // namespace clang
#endif
diff --git a/clang/lib/AST/Interp/ByteCodeEmitter.cpp b/clang/lib/AST/ByteCode/ByteCodeEmitter.cpp
similarity index 97%
rename from clang/lib/AST/Interp/ByteCodeEmitter.cpp
rename to clang/lib/AST/ByteCode/ByteCodeEmitter.cpp
index a01fa15dc0b7dc..1f6bdaff50b5bf 100644
--- a/clang/lib/AST/Interp/ByteCodeEmitter.cpp
+++ b/clang/lib/AST/ByteCode/ByteCodeEmitter.cpp
@@ -206,8 +206,7 @@ void ByteCodeEmitter::emitLabel(LabelTy Label) {
const size_t Target = Code.size();
LabelOffsets.insert({Label, Target});
- if (auto It = LabelRelocs.find(Label);
- It != LabelRelocs.end()) {
+ if (auto It = LabelRelocs.find(Label); It != LabelRelocs.end()) {
for (unsigned Reloc : It->second) {
using namespace llvm::support;
@@ -228,8 +227,7 @@ int32_t ByteCodeEmitter::getOffset(LabelTy Label) {
assert(aligned(Position));
// If target is known, compute jump offset.
- if (auto It = LabelOffsets.find(Label);
- It != LabelOffsets.end())
+ if (auto It = LabelOffsets.find(Label); It != LabelOffsets.end())
return It->second - Position;
// Otherwise, record relocation and return dummy offset.
@@ -308,7 +306,8 @@ void emit(Program &P, std::vector<std::byte> &Code, const IntegralAP<true> &Val,
}
template <typename... Tys>
-bool ByteCodeEmitter::emitOp(Opcode Op, const Tys &... Args, const SourceInfo &SI) {
+bool ByteCodeEmitter::emitOp(Opcode Op, const Tys &...Args,
+ const SourceInfo &SI) {
bool Success = true;
// The opcode is followed by arguments. The source info is
diff --git a/clang/lib/AST/Interp/ByteCodeEmitter.h b/clang/lib/AST/ByteCode/ByteCodeEmitter.h
similarity index 97%
rename from clang/lib/AST/Interp/ByteCodeEmitter.h
rename to clang/lib/AST/ByteCode/ByteCodeEmitter.h
index a19a25c2f9e8ec..59e12defd8e52b 100644
--- a/clang/lib/AST/Interp/ByteCodeEmitter.h
+++ b/clang/lib/AST/ByteCode/ByteCodeEmitter.h
@@ -92,7 +92,7 @@ class ByteCodeEmitter {
/// Emits an opcode.
template <typename... Tys>
- bool emitOp(Opcode Op, const Tys &... Args, const SourceInfo &L);
+ bool emitOp(Opcode Op, const Tys &...Args, const SourceInfo &L);
protected:
#define GET_LINK_PROTO
diff --git a/clang/lib/AST/Interp/Compiler.cpp b/clang/lib/AST/ByteCode/Compiler.cpp
similarity index 99%
rename from clang/lib/AST/Interp/Compiler.cpp
rename to clang/lib/AST/ByteCode/Compiler.cpp
index 5e1f507ca2b178..c3ecaa40b86f2a 100644
--- a/clang/lib/AST/Interp/Compiler.cpp
+++ b/clang/lib/AST/ByteCode/Compiler.cpp
@@ -3722,7 +3722,8 @@ bool Compiler<Emitter>::visitDeclAndReturn(const VarDecl *VD,
}
template <class Emitter>
-VarCreationState Compiler<Emitter>::visitVarDecl(const VarDecl *VD, bool Toplevel) {
+VarCreationState Compiler<Emitter>::visitVarDecl(const VarDecl *VD,
+ bool Toplevel) {
// We don't know what to do with these, so just return false.
if (VD->getType().isNull())
return false;
@@ -5124,7 +5125,7 @@ bool Compiler<Emitter>::VisitUnaryOperator(const UnaryOperator *E) {
if (!this->visit(SubExpr))
return false;
return DiscardResult ? this->emitPop(*T, E) : this->emitNeg(*T, E);
- case UO_Plus: // +x
+ case UO_Plus: // +x
if (!T)
return this->emitError(E);
diff --git a/clang/lib/AST/Interp/Compiler.h b/clang/lib/AST/ByteCode/Compiler.h
similarity index 100%
rename from clang/lib/AST/Interp/Compiler.h
rename to clang/lib/AST/ByteCode/Compiler.h
diff --git a/clang/lib/AST/Interp/Context.cpp b/clang/lib/AST/ByteCode/Context.cpp
similarity index 100%
rename from clang/lib/AST/Interp/Context.cpp
rename to clang/lib/AST/ByteCode/Context.cpp
diff --git a/clang/lib/AST/Interp/Context.h b/clang/lib/AST/ByteCode/Context.h
similarity index 100%
rename from clang/lib/AST/Interp/Context.h
rename to clang/lib/AST/ByteCode/Context.h
diff --git a/clang/lib/AST/Interp/Descriptor.cpp b/clang/lib/AST/ByteCode/Descriptor.cpp
similarity index 100%
rename from clang/lib/AST/Interp/Descriptor.cpp
rename to clang/lib/AST/ByteCode/Descriptor.cpp
diff --git a/clang/lib/AST/Interp/Descriptor.h b/clang/lib/AST/ByteCode/Descriptor.h
similarity index 99%
rename from clang/lib/AST/Interp/Descriptor.h
rename to clang/lib/AST/ByteCode/Descriptor.h
index 6f1adeb898c430..41899c3bd6831a 100644
--- a/clang/lib/AST/Interp/Descriptor.h
+++ b/clang/lib/AST/ByteCode/Descriptor.h
@@ -229,7 +229,7 @@ struct Descriptor final {
/// Returns the allocated size, including metadata.
unsigned getAllocSize() const { return AllocSize; }
/// returns the size of an element when the structure is viewed as an array.
- unsigned getElemSize() const { return ElemSize; }
+ unsigned getElemSize() const { return ElemSize; }
/// Returns the size of the metadata.
unsigned getMetadataSize() const { return MDSize; }
diff --git a/clang/lib/AST/Interp/Disasm.cpp b/clang/lib/AST/ByteCode/Disasm.cpp
similarity index 100%
rename from clang/lib/AST/Interp/Disasm.cpp
rename to clang/lib/AST/ByteCode/Disasm.cpp
diff --git a/clang/lib/AST/Interp/DynamicAllocator.cpp b/clang/lib/AST/ByteCode/DynamicAllocator.cpp
similarity index 100%
rename from clang/lib/AST/Interp/DynamicAllocator.cpp
rename to clang/lib/AST/ByteCode/DynamicAllocator.cpp
diff --git a/clang/lib/AST/Interp/DynamicAllocator.h b/clang/lib/AST/ByteCode/DynamicAllocator.h
similarity index 100%
rename from clang/lib/AST/Interp/DynamicAllocator.h
rename to clang/lib/AST/ByteCode/DynamicAllocator.h
diff --git a/clang/lib/AST/Interp/EvalEmitter.cpp b/clang/lib/AST/ByteCode/EvalEmitter.cpp
similarity index 99%
rename from clang/lib/AST/Interp/EvalEmitter.cpp
rename to clang/lib/AST/ByteCode/EvalEmitter.cpp
index 08536536ac3c2e..e36d86c814e17f 100644
--- a/clang/lib/AST/Interp/EvalEmitter.cpp
+++ b/clang/lib/AST/ByteCode/EvalEmitter.cpp
@@ -76,9 +76,7 @@ EvaluationResult EvalEmitter::interpretDecl(const VarDecl *VD,
return std::move(this->EvalResult);
}
-void EvalEmitter::emitLabel(LabelTy Label) {
- CurrentLabel = Label;
-}
+void EvalEmitter::emitLabel(LabelTy Label) { CurrentLabel = Label; }
EvalEmitter::LabelTy EvalEmitter::getLabel() { return NextLabel++; }
diff --git a/clang/lib/AST/Interp/EvalEmitter.h b/clang/lib/AST/ByteCode/EvalEmitter.h
similarity index 100%
rename from clang/lib/AST/Interp/EvalEmitter.h
rename to clang/lib/AST/ByteCode/EvalEmitter.h
diff --git a/clang/lib/AST/Interp/EvaluationResult.cpp b/clang/lib/AST/ByteCode/EvaluationResult.cpp
similarity index 100%
rename from clang/lib/AST/Interp/EvaluationResult.cpp
rename to clang/lib/AST/ByteCode/EvaluationResult.cpp
diff --git a/clang/lib/AST/Interp/EvaluationResult.h b/clang/lib/AST/ByteCode/EvaluationResult.h
similarity index 100%
rename from clang/lib/AST/Interp/EvaluationResult.h
rename to clang/lib/AST/ByteCode/EvaluationResult.h
diff --git a/clang/lib/AST/Interp/Floating.cpp b/clang/lib/AST/ByteCode/Floating.cpp
similarity index 100%
rename from clang/lib/AST/Interp/Floating.cpp
rename to clang/lib/AST/ByteCode/Floating.cpp
diff --git a/clang/lib/AST/Interp/Floating.h b/clang/lib/AST/ByteCode/Floating.h
similarity index 100%
rename from clang/lib/AST/Interp/Floating.h
rename to clang/lib/AST/ByteCode/Floating.h
diff --git a/clang/lib/AST/Interp/Frame.cpp b/clang/lib/AST/ByteCode/Frame.cpp
similarity index 100%
rename from clang/lib/AST/Interp/Frame.cpp
rename to clang/lib/AST/ByteCode/Frame.cpp
diff --git a/clang/lib/AST/Interp/Frame.h b/clang/lib/AST/ByteCode/Frame.h
similarity index 100%
rename from clang/lib/AST/Interp/Frame.h
rename to clang/lib/AST/ByteCode/Frame.h
diff --git a/clang/lib/AST/Interp/Function.cpp b/clang/lib/AST/ByteCode/Function.cpp
similarity index 100%
rename from clang/lib/AST/Interp/Function.cpp
rename to clang/lib/AST/ByteCode/Function.cpp
diff --git a/clang/lib/AST/Interp/Function.h b/clang/lib/AST/ByteCode/Function.h
similarity index 100%
rename from clang/lib/AST/Interp/Function.h
rename to clang/lib/AST/ByteCode/Function.h
diff --git a/clang/lib/AST/Interp/FunctionPointer.h b/clang/lib/AST/ByteCode/FunctionPointer.h
similarity index 100%
rename from clang/lib/AST/Interp/FunctionPointer.h
rename to clang/lib/AST/ByteCode/FunctionPointer.h
diff --git a/clang/lib/AST/Interp/Integral.h b/clang/lib/AST/ByteCode/Integral.h
similarity index 93%
rename from clang/lib/AST/Interp/Integral.h
rename to clang/lib/AST/ByteCode/Integral.h
index aafdd02676c966..e06ec1669259da 100644
--- a/clang/lib/AST/Interp/Integral.h
+++ b/clang/lib/AST/ByteCode/Integral.h
@@ -13,8 +13,8 @@
#ifndef LLVM_CLANG_AST_INTERP_INTEGRAL_H
#define LLVM_CLANG_AST_INTERP_INTEGRAL_H
-#include "clang/AST/ComparisonCategories.h"
#include "clang/AST/APValue.h"
+#include "clang/AST/ComparisonCategories.h"
#include "llvm/ADT/APSInt.h"
#include "llvm/Support/MathExtras.h"
#include "llvm/Support/raw_ostream.h"
@@ -33,14 +33,30 @@ template <bool Signed> class IntegralAP;
// Helper structure to select the representation.
template <unsigned Bits, bool Signed> struct Repr;
-template <> struct Repr<8, false> { using Type = uint8_t; };
-template <> struct Repr<16, false> { using Type = uint16_t; };
-template <> struct Repr<32, false> { using Type = uint32_t; };
-template <> struct Repr<64, false> { using Type = uint64_t; };
-template <> struct Repr<8, true> { using Type = int8_t; };
-template <> struct Repr<16, true> { using Type = int16_t; };
-template <> struct Repr<32, true> { using Type = int32_t; };
-template <> struct Repr<64, true> { using Type = int64_t; };
+template <> struct Repr<8, false> {
+ using Type = uint8_t;
+};
+template <> struct Repr<16, false> {
+ using Type = uint16_t;
+};
+template <> struct Repr<32, false> {
+ using Type = uint32_t;
+};
+template <> struct Repr<64, false> {
+ using Type = uint64_t;
+};
+template <> struct Repr<8, true> {
+ using Type = int8_t;
+};
+template <> struct Repr<16, true> {
+ using Type = int16_t;
+};
+template <> struct Repr<32, true> {
+ using Type = int32_t;
+};
+template <> struct Repr<64, true> {
+ using Type = int64_t;
+};
/// Wrapper around numeric types.
///
@@ -159,12 +175,8 @@ template <unsigned Bits, bool Signed> class Integral final {
void print(llvm::raw_ostream &OS) const { OS << V; }
- static Integral min(unsigned NumBits) {
- return Integral(Min);
- }
- static Integral max(unsigned NumBits) {
- return Integral(Max);
- }
+ static Integral min(unsigned NumBits) { return Integral(Min); }
+ static Integral max(unsigned NumBits) { return Integral(Max); }
template <typename ValT> static Integral from(ValT Value) {
if constexpr (std::is_integral<ValT>::value)
diff --git a/clang/lib/AST/Interp/IntegralAP.h b/clang/lib/AST/ByteCode/IntegralAP.h
similarity index 100%
rename from clang/lib/AST/Interp/IntegralAP.h
rename to clang/lib/AST/ByteCode/IntegralAP.h
diff --git a/clang/lib/AST/Interp/Interp.cpp b/clang/lib/AST/ByteCode/Interp.cpp
similarity index 100%
rename from clang/lib/AST/Interp/Interp.cpp
rename to clang/lib/AST/ByteCode/Interp.cpp
diff --git a/clang/lib/AST/Interp/Interp.h b/clang/lib/AST/ByteCode/Interp.h
similarity index 99%
rename from clang/lib/AST/Interp/Interp.h
rename to clang/lib/AST/ByteCode/Interp.h
index c2d73f32f0b20c..c3ce21cb13770e 100644
--- a/clang/lib/AST/Interp/Interp.h
+++ b/clang/lib/AST/ByteCode/Interp.h
@@ -1226,7 +1226,7 @@ template <PrimType Name, class T = typename PrimConv<Name>::T>
bool GetField(InterpState &S, CodePtr OpPC, uint32_t I) {
const Pointer &Obj = S.Stk.peek<Pointer>();
if (!CheckNull(S, OpPC, Obj, CSK_Field))
- return false;
+ return false;
if (!CheckRange(S, OpPC, Obj, CSK_Field))
return false;
const Pointer &Field = Obj.atField(I);
@@ -1542,7 +1542,7 @@ inline bool GetPtrActiveField(InterpState &S, CodePtr OpPC, uint32_t Off) {
}
inline bool GetPtrActiveThisField(InterpState &S, CodePtr OpPC, uint32_t Off) {
- if (S.checkingPotentialConstantExpression())
+ if (S.checkingPotentialConstantExpression())
return false;
const Pointer &This = S.Current->getThis();
if (!CheckThis(S, OpPC, This))
@@ -2053,7 +2053,7 @@ template <PrimType TIn, PrimType TOut> bool Cast(InterpState &S, CodePtr OpPC) {
/// 1) Pops a Floating from the stack.
/// 2) Pushes a new floating on the stack that uses the given semantics.
inline bool CastFP(InterpState &S, CodePtr OpPC, const llvm::fltSemantics *Sem,
- llvm::RoundingMode RM) {
+ llvm::RoundingMode RM) {
Floating F = S.Stk.pop<Floating>();
Floating Result = F.toSemantics(Sem, RM);
S.Stk.push<Floating>(Result);
@@ -2313,9 +2313,9 @@ inline bool DoShift(InterpState &S, CodePtr OpPC, LT &LHS, RT &RHS) {
if (!S.noteUndefinedBehavior())
return false;
RHS = -RHS;
- return DoShift < LT, RT,
- Dir == ShiftDir::Left ? ShiftDir::Right
- : ShiftDir::Left > (S, OpPC, LHS, RHS);
+ return DoShift<LT, RT,
+ Dir == ShiftDir::Left ? ShiftDir::Right : ShiftDir::Left>(
+ S, OpPC, LHS, RHS);
}
if constexpr (Dir == ShiftDir::Left) {
@@ -2467,7 +2467,8 @@ inline bool ArrayElemPop(InterpState &S, CodePtr OpPC, uint32_t Index) {
}
template <PrimType Name, class T = typename PrimConv<Name>::T>
-inline bool CopyArray(InterpState &S, CodePtr OpPC, uint32_t SrcIndex, uint32_t DestIndex, uint32_t Size) {
+inline bool CopyArray(InterpState &S, CodePtr OpPC, uint32_t SrcIndex,
+ uint32_t DestIndex, uint32_t Size) {
const auto &SrcPtr = S.Stk.pop<Pointer>();
const auto &DestPtr = S.Stk.peek<Pointer>();
diff --git a/clang/lib/AST/Interp/InterpBlock.cpp b/clang/lib/AST/ByteCode/InterpBlock.cpp
similarity index 100%
rename from clang/lib/AST/Interp/InterpBlock.cpp
rename to clang/lib/AST/ByteCode/InterpBlock.cpp
diff --git a/clang/lib/AST/Interp/InterpBlock.h b/clang/lib/AST/ByteCode/InterpBlock.h
similarity index 100%
rename from clang/lib/AST/Interp/InterpBlock.h
rename to clang/lib/AST/ByteCode/InterpBlock.h
index 20cf8cb9d3810e..a5cd58e3a655a0 100644
--- a/clang/lib/AST/Interp/InterpBlock.h
+++ b/clang/lib/AST/ByteCode/InterpBlock.h
@@ -14,10 +14,10 @@
#define LLVM_CLANG_AST_INTERP_BLOCK_H
#include "Descriptor.h"
+#include "clang/AST/ComparisonCategories.h"
#include "clang/AST/Decl.h"
#include "clang/AST/DeclCXX.h"
#include "clang/AST/Expr.h"
-#include "clang/AST/ComparisonCategories.h"
#include "llvm/ADT/PointerUnion.h"
#include "llvm/Support/raw_ostream.h"
diff --git a/clang/lib/AST/Interp/InterpBuiltin.cpp b/clang/lib/AST/ByteCode/InterpBuiltin.cpp
similarity index 100%
rename from clang/lib/AST/Interp/InterpBuiltin.cpp
rename to clang/lib/AST/ByteCode/InterpBuiltin.cpp
diff --git a/clang/lib/AST/Interp/InterpFrame.cpp b/clang/lib/AST/ByteCode/InterpFrame.cpp
similarity index 99%
rename from clang/lib/AST/Interp/InterpFrame.cpp
rename to clang/lib/AST/ByteCode/InterpFrame.cpp
index 4530f28d694e84..8b55b61cbbfa7e 100644
--- a/clang/lib/AST/Interp/InterpFrame.cpp
+++ b/clang/lib/AST/ByteCode/InterpFrame.cpp
@@ -137,7 +137,7 @@ void print(llvm::raw_ostream &OS, const Pointer &P, ASTContext &Ctx,
if (!Ty->isReferenceType())
OS << "&";
llvm::SmallVector<Pointer, 2> Levels;
- for (Pointer F = P; !F.isRoot(); ) {
+ for (Pointer F = P; !F.isRoot();) {
Levels.push_back(F);
F = F.isArrayElement() ? F.getArray().expand() : F.getBase();
}
diff --git a/clang/lib/AST/Interp/InterpFrame.h b/clang/lib/AST/ByteCode/InterpFrame.h
similarity index 99%
rename from clang/lib/AST/Interp/InterpFrame.h
rename to clang/lib/AST/ByteCode/InterpFrame.h
index 91b9b41b5d3343..1e0d2b1d4424b1 100644
--- a/clang/lib/AST/Interp/InterpFrame.h
+++ b/clang/lib/AST/ByteCode/InterpFrame.h
@@ -91,7 +91,7 @@ class InterpFrame final : public Frame {
/// Mutates a local copy of a parameter.
template <typename T> void setParam(unsigned Offset, const T &Value) {
- getParamPointer(Offset).deref<T>() = Value;
+ getParamPointer(Offset).deref<T>() = Value;
}
/// Returns a pointer to an argument - lazily creates a block.
diff --git a/clang/lib/AST/Interp/InterpShared.cpp b/clang/lib/AST/ByteCode/InterpShared.cpp
similarity index 100%
rename from clang/lib/AST/Interp/InterpShared.cpp
rename to clang/lib/AST/ByteCode/InterpShared.cpp
diff --git a/clang/lib/AST/Interp/InterpShared.h b/clang/lib/AST/ByteCode/InterpShared.h
similarity index 100%
rename from clang/lib/AST/Interp/InterpShared.h
rename to clang/lib/AST/ByteCode/InterpShared.h
diff --git a/clang/lib/AST/Interp/InterpStack.cpp b/clang/lib/AST/ByteCode/InterpStack.cpp
similarity index 98%
rename from clang/lib/AST/Interp/InterpStack.cpp
rename to clang/lib/AST/ByteCode/InterpStack.cpp
index c7024740d322ef..b8cdaeee72166c 100644
--- a/clang/lib/AST/Interp/InterpStack.cpp
+++ b/clang/lib/AST/ByteCode/InterpStack.cpp
@@ -18,9 +18,7 @@
using namespace clang;
using namespace clang::interp;
-InterpStack::~InterpStack() {
- clear();
-}
+InterpStack::~InterpStack() { clear(); }
void InterpStack::clear() {
if (Chunk && Chunk->Next)
diff --git a/clang/lib/AST/Interp/InterpStack.h b/clang/lib/AST/ByteCode/InterpStack.h
similarity index 97%
rename from clang/lib/AST/Interp/InterpStack.h
rename to clang/lib/AST/ByteCode/InterpStack.h
index 4966e2870de6bd..153d17f0d70e1b 100644
--- a/clang/lib/AST/Interp/InterpStack.h
+++ b/clang/lib/AST/ByteCode/InterpStack.h
@@ -32,7 +32,7 @@ class InterpStack final {
~InterpStack();
/// Constructs a value in place on the top of the stack.
- template <typename T, typename... Tys> void push(Tys &&... Args) {
+ template <typename T, typename... Tys> void push(Tys &&...Args) {
new (grow(aligned_size<T>())) T(std::forward<Tys>(Args)...);
#ifndef NDEBUG
ItemTypes.push_back(toPrimType<T>());
@@ -153,8 +153,7 @@ class InterpStack final {
template <typename T> static constexpr PrimType toPrimType() {
if constexpr (std::is_same_v<T, Pointer>)
return PT_Ptr;
- else if constexpr (std::is_same_v<T, bool> ||
- std::is_same_v<T, Boolean>)
+ else if constexpr (std::is_same_v<T, bool> || std::is_same_v<T, Boolean>)
return PT_Bool;
else if constexpr (std::is_same_v<T, int8_t> ||
std::is_same_v<T, Integral<8, true>>)
diff --git a/clang/lib/AST/Interp/InterpState.cpp b/clang/lib/AST/ByteCode/InterpState.cpp
similarity index 100%
rename from clang/lib/AST/Interp/InterpState.cpp
rename to clang/lib/AST/ByteCode/InterpState.cpp
diff --git a/clang/lib/AST/Interp/InterpState.h b/clang/lib/AST/ByteCode/InterpState.h
similarity index 100%
rename from clang/lib/AST/Interp/InterpState.h
rename to clang/lib/AST/ByteCode/InterpState.h
diff --git a/clang/lib/AST/Interp/MemberPointer.cpp b/clang/lib/AST/ByteCode/MemberPointer.cpp
similarity index 100%
rename from clang/lib/AST/Interp/MemberPointer.cpp
rename to clang/lib/AST/ByteCode/MemberPointer.cpp
diff --git a/clang/lib/AST/Interp/MemberPointer.h b/clang/lib/AST/ByteCode/MemberPointer.h
similarity index 100%
rename from clang/lib/AST/Interp/MemberPointer.h
rename to clang/lib/AST/ByteCode/MemberPointer.h
diff --git a/clang/lib/AST/Interp/Opcode.h b/clang/lib/AST/ByteCode/Opcode.h
similarity index 100%
rename from clang/lib/AST/Interp/Opcode.h
rename to clang/lib/AST/ByteCode/Opcode.h
diff --git a/clang/lib/AST/Interp/Opcodes.td b/clang/lib/AST/ByteCode/Opcodes.td
similarity index 100%
rename from clang/lib/AST/Interp/Opcodes.td
rename to clang/lib/AST/ByteCode/Opcodes.td
diff --git a/clang/lib/AST/Interp/Pointer.cpp b/clang/lib/AST/ByteCode/Pointer.cpp
similarity index 100%
rename from clang/lib/AST/Interp/Pointer.cpp
rename to clang/lib/AST/ByteCode/Pointer.cpp
diff --git a/clang/lib/AST/Interp/Pointer.h b/clang/lib/AST/ByteCode/Pointer.h
similarity index 99%
rename from clang/lib/AST/Interp/Pointer.h
rename to clang/lib/AST/ByteCode/Pointer.h
index 01ccb88ec03b29..8db081c0ec82b3 100644
--- a/clang/lib/AST/Interp/Pointer.h
+++ b/clang/lib/AST/ByteCode/Pointer.h
@@ -173,7 +173,7 @@ class Pointer {
/// Subtract the given offset from the current Base and Offset
/// of the pointer.
- [[nodiscard]] Pointer atFieldSub(unsigned Off) const {
+ [[nodiscard]] Pointer atFieldSub(unsigned Off) const {
assert(Offset >= Off);
unsigned O = Offset - Off;
return Pointer(asBlockPointer().Pointee, O, O);
diff --git a/clang/lib/AST/Interp/PrimType.cpp b/clang/lib/AST/ByteCode/PrimType.cpp
similarity index 100%
rename from clang/lib/AST/Interp/PrimType.cpp
rename to clang/lib/AST/ByteCode/PrimType.cpp
diff --git a/clang/lib/AST/Interp/PrimType.h b/clang/lib/AST/ByteCode/PrimType.h
similarity index 83%
rename from clang/lib/AST/Interp/PrimType.h
rename to clang/lib/AST/ByteCode/PrimType.h
index 20fb5e81774d6f..bb2f59d86e98d7 100644
--- a/clang/lib/AST/Interp/PrimType.h
+++ b/clang/lib/AST/ByteCode/PrimType.h
@@ -73,23 +73,45 @@ constexpr bool isIntegralType(PrimType T) { return T <= PT_Bool; }
/// Mapping from primitive types to their representation.
template <PrimType T> struct PrimConv;
-template <> struct PrimConv<PT_Sint8> { using T = Integral<8, true>; };
-template <> struct PrimConv<PT_Uint8> { using T = Integral<8, false>; };
-template <> struct PrimConv<PT_Sint16> { using T = Integral<16, true>; };
-template <> struct PrimConv<PT_Uint16> { using T = Integral<16, false>; };
-template <> struct PrimConv<PT_Sint32> { using T = Integral<32, true>; };
-template <> struct PrimConv<PT_Uint32> { using T = Integral<32, false>; };
-template <> struct PrimConv<PT_Sint64> { using T = Integral<64, true>; };
-template <> struct PrimConv<PT_Uint64> { using T = Integral<64, false>; };
+template <> struct PrimConv<PT_Sint8> {
+ using T = Integral<8, true>;
+};
+template <> struct PrimConv<PT_Uint8> {
+ using T = Integral<8, false>;
+};
+template <> struct PrimConv<PT_Sint16> {
+ using T = Integral<16, true>;
+};
+template <> struct PrimConv<PT_Uint16> {
+ using T = Integral<16, false>;
+};
+template <> struct PrimConv<PT_Sint32> {
+ using T = Integral<32, true>;
+};
+template <> struct PrimConv<PT_Uint32> {
+ using T = Integral<32, false>;
+};
+template <> struct PrimConv<PT_Sint64> {
+ using T = Integral<64, true>;
+};
+template <> struct PrimConv<PT_Uint64> {
+ using T = Integral<64, false>;
+};
template <> struct PrimConv<PT_IntAP> {
using T = IntegralAP<false>;
};
template <> struct PrimConv<PT_IntAPS> {
using T = IntegralAP<true>;
};
-template <> struct PrimConv<PT_Float> { using T = Floating; };
-template <> struct PrimConv<PT_Bool> { using T = Boolean; };
-template <> struct PrimConv<PT_Ptr> { using T = Pointer; };
+template <> struct PrimConv<PT_Float> {
+ using T = Floating;
+};
+template <> struct PrimConv<PT_Bool> {
+ using T = Boolean;
+};
+template <> struct PrimConv<PT_Ptr> {
+ using T = Pointer;
+};
template <> struct PrimConv<PT_FnPtr> {
using T = FunctionPointer;
};
@@ -117,8 +139,12 @@ static inline bool aligned(const void *P) {
/// Helper macro to simplify type switches.
/// The macro implicitly exposes a type T in the scope of the inner block.
-#define TYPE_SWITCH_CASE(Name, B) \
- case Name: { using T = PrimConv<Name>::T; B; break; }
+#define TYPE_SWITCH_CASE(Name, B) \
+ case Name: { \
+ using T = PrimConv<Name>::T; \
+ B; \
+ break; \
+ }
#define TYPE_SWITCH(Expr, B) \
do { \
switch (Expr) { \
@@ -181,7 +207,10 @@ static inline bool aligned(const void *P) {
do { \
switch (Expr) { \
TYPE_SWITCH_CASE(PT_Ptr, B) \
- default: { D; break; } \
+ default: { \
+ D; \
+ break; \
+ } \
} \
} while (0)
#endif
diff --git a/clang/lib/AST/Interp/Primitives.h b/clang/lib/AST/ByteCode/Primitives.h
similarity index 100%
rename from clang/lib/AST/Interp/Primitives.h
rename to clang/lib/AST/ByteCode/Primitives.h
diff --git a/clang/lib/AST/Interp/Program.cpp b/clang/lib/AST/ByteCode/Program.cpp
similarity index 95%
rename from clang/lib/AST/Interp/Program.cpp
rename to clang/lib/AST/ByteCode/Program.cpp
index 9109956dc652cb..25b99115ddd777 100644
--- a/clang/lib/AST/Interp/Program.cpp
+++ b/clang/lib/AST/ByteCode/Program.cpp
@@ -76,26 +76,26 @@ unsigned Program::createGlobalString(const StringLiteral *S) {
Pointer Field = Ptr.atIndex(I).narrow();
const uint32_t CodePoint = I == N ? 0 : S->getCodeUnit(I);
switch (CharType) {
- case PT_Sint8: {
- using T = PrimConv<PT_Sint8>::T;
- Field.deref<T>() = T::from(CodePoint, BitWidth);
- Field.initialize();
- break;
- }
- case PT_Uint16: {
- using T = PrimConv<PT_Uint16>::T;
- Field.deref<T>() = T::from(CodePoint, BitWidth);
- Field.initialize();
- break;
- }
- case PT_Uint32: {
- using T = PrimConv<PT_Uint32>::T;
- Field.deref<T>() = T::from(CodePoint, BitWidth);
- Field.initialize();
- break;
- }
- default:
- llvm_unreachable("unsupported character type");
+ case PT_Sint8: {
+ using T = PrimConv<PT_Sint8>::T;
+ Field.deref<T>() = T::from(CodePoint, BitWidth);
+ Field.initialize();
+ break;
+ }
+ case PT_Uint16: {
+ using T = PrimConv<PT_Uint16>::T;
+ Field.deref<T>() = T::from(CodePoint, BitWidth);
+ Field.initialize();
+ break;
+ }
+ case PT_Uint32: {
+ using T = PrimConv<PT_Uint32>::T;
+ Field.deref<T>() = T::from(CodePoint, BitWidth);
+ Field.initialize();
+ break;
+ }
+ default:
+ llvm_unreachable("unsupported character type");
}
}
return I;
@@ -394,8 +394,7 @@ Descriptor *Program::createDescriptor(const DeclTy &D, const Type *Ty,
D, ElemTy.getTypePtr(), std::nullopt, IsConst, IsTemporary);
if (!ElemDesc)
return nullptr;
- unsigned ElemSize =
- ElemDesc->getAllocSize() + sizeof(InlineDescriptor);
+ unsigned ElemSize = ElemDesc->getAllocSize() + sizeof(InlineDescriptor);
if (std::numeric_limits<unsigned>::max() / ElemSize <= NumElems)
return {};
return allocateDescriptor(D, ElemDesc, MDSize, NumElems, IsConst,
diff --git a/clang/lib/AST/Interp/Program.h b/clang/lib/AST/ByteCode/Program.h
similarity index 96%
rename from clang/lib/AST/Interp/Program.h
rename to clang/lib/AST/ByteCode/Program.h
index 1cabc5212180f2..7f69d9790fc79a 100644
--- a/clang/lib/AST/Interp/Program.h
+++ b/clang/lib/AST/ByteCode/Program.h
@@ -13,8 +13,6 @@
#ifndef LLVM_CLANG_AST_INTERP_PROGRAM_H
#define LLVM_CLANG_AST_INTERP_PROGRAM_H
-#include <map>
-#include <vector>
#include "Function.h"
#include "Pointer.h"
#include "PrimType.h"
@@ -24,6 +22,8 @@
#include "llvm/ADT/PointerUnion.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/Support/Allocator.h"
+#include <map>
+#include <vector>
namespace clang {
class RecordDecl;
@@ -94,15 +94,14 @@ class Program final {
/// Creates a new function from a code range.
template <typename... Ts>
- Function *createFunction(const FunctionDecl *Def, Ts &&... Args) {
+ Function *createFunction(const FunctionDecl *Def, Ts &&...Args) {
Def = Def->getCanonicalDecl();
auto *Func = new Function(*this, Def, std::forward<Ts>(Args)...);
Funcs.insert({Def, std::unique_ptr<Function>(Func)});
return Func;
}
/// Creates an anonymous function.
- template <typename... Ts>
- Function *createFunction(Ts &&... Args) {
+ template <typename... Ts> Function *createFunction(Ts &&...Args) {
auto *Func = new Function(*this, std::forward<Ts>(Args)...);
AnonFuncs.emplace_back(Func);
return Func;
@@ -213,8 +212,7 @@ class Program final {
llvm::DenseMap<const ValueDecl *, unsigned> DummyVariables;
/// Creates a new descriptor.
- template <typename... Ts>
- Descriptor *allocateDescriptor(Ts &&... Args) {
+ template <typename... Ts> Descriptor *allocateDescriptor(Ts &&...Args) {
return new (Allocator) Descriptor(std::forward<Ts>(Args)...);
}
@@ -232,9 +230,7 @@ class Program final {
}
/// Ends a global declaration.
- void endDeclaration() {
- CurrentDeclaration = NoDeclaration;
- }
+ void endDeclaration() { CurrentDeclaration = NoDeclaration; }
public:
/// Dumps the disassembled bytecode to \c llvm::errs().
diff --git a/clang/lib/AST/Interp/Record.cpp b/clang/lib/AST/ByteCode/Record.cpp
similarity index 96%
rename from clang/lib/AST/Interp/Record.cpp
rename to clang/lib/AST/ByteCode/Record.cpp
index e7b741f2d458c8..ec1b55da347af6 100644
--- a/clang/lib/AST/Interp/Record.cpp
+++ b/clang/lib/AST/ByteCode/Record.cpp
@@ -18,7 +18,7 @@ Record::Record(const RecordDecl *Decl, BaseList &&SrcBases,
: Decl(Decl), Bases(std::move(SrcBases)), Fields(std::move(SrcFields)),
BaseSize(BaseSize), VirtualSize(VirtualSize), IsUnion(Decl->isUnion()) {
for (Base &V : SrcVirtualBases)
- VirtualBases.push_back({ V.Decl, V.Offset + BaseSize, V.Desc, V.R });
+ VirtualBases.push_back({V.Decl, V.Offset + BaseSize, V.Desc, V.R});
for (Base &B : Bases)
BaseMap[B.Decl] = &B;
diff --git a/clang/lib/AST/Interp/Record.h b/clang/lib/AST/ByteCode/Record.h
similarity index 100%
rename from clang/lib/AST/Interp/Record.h
rename to clang/lib/AST/ByteCode/Record.h
diff --git a/clang/lib/AST/Interp/Source.cpp b/clang/lib/AST/ByteCode/Source.cpp
similarity index 100%
rename from clang/lib/AST/Interp/Source.cpp
rename to clang/lib/AST/ByteCode/Source.cpp
diff --git a/clang/lib/AST/Interp/Source.h b/clang/lib/AST/ByteCode/Source.h
similarity index 100%
rename from clang/lib/AST/Interp/Source.h
rename to clang/lib/AST/ByteCode/Source.h
diff --git a/clang/lib/AST/Interp/State.cpp b/clang/lib/AST/ByteCode/State.cpp
similarity index 100%
rename from clang/lib/AST/Interp/State.cpp
rename to clang/lib/AST/ByteCode/State.cpp
diff --git a/clang/lib/AST/Interp/State.h b/clang/lib/AST/ByteCode/State.h
similarity index 100%
rename from clang/lib/AST/Interp/State.h
rename to clang/lib/AST/ByteCode/State.h
diff --git a/clang/lib/AST/CMakeLists.txt b/clang/lib/AST/CMakeLists.txt
index 70aecb781c2ff2..041252b6830e0a 100644
--- a/clang/lib/AST/CMakeLists.txt
+++ b/clang/lib/AST/CMakeLists.txt
@@ -11,7 +11,7 @@ set(LLVM_LINK_COMPONENTS
# another library which depends on clangAST.
clang_tablegen(Opcodes.inc
-gen-clang-opcodes
- SOURCE Interp/Opcodes.td
+ SOURCE ByteCode/Opcodes.td
TARGET Opcodes)
clang_tablegen(AttrDocTable.inc -gen-clang-attr-doc-table
@@ -64,31 +64,31 @@ add_clang_library(clangAST
ExternalASTSource.cpp
FormatString.cpp
InheritViz.cpp
- Interp/ByteCodeEmitter.cpp
- Interp/Compiler.cpp
- Interp/Context.cpp
- Interp/Descriptor.cpp
- Interp/Disasm.cpp
- Interp/EvalEmitter.cpp
- Interp/Frame.cpp
- Interp/Function.cpp
- Interp/InterpBuiltin.cpp
- Interp/Floating.cpp
- Interp/EvaluationResult.cpp
- Interp/DynamicAllocator.cpp
- Interp/Interp.cpp
- Interp/InterpBlock.cpp
- Interp/InterpFrame.cpp
- Interp/InterpStack.cpp
- Interp/InterpState.cpp
- Interp/Pointer.cpp
- Interp/PrimType.cpp
- Interp/Program.cpp
- Interp/Record.cpp
- Interp/Source.cpp
- Interp/State.cpp
- Interp/MemberPointer.cpp
- Interp/InterpShared.cpp
+ ByteCode/ByteCodeEmitter.cpp
+ ByteCode/Compiler.cpp
+ ByteCode/Context.cpp
+ ByteCode/Descriptor.cpp
+ ByteCode/Disasm.cpp
+ ByteCode/EvalEmitter.cpp
+ ByteCode/Frame.cpp
+ ByteCode/Function.cpp
+ ByteCode/InterpBuiltin.cpp
+ ByteCode/Floating.cpp
+ ByteCode/EvaluationResult.cpp
+ ByteCode/DynamicAllocator.cpp
+ ByteCode/Interp.cpp
+ ByteCode/InterpBlock.cpp
+ ByteCode/InterpFrame.cpp
+ ByteCode/InterpStack.cpp
+ ByteCode/InterpState.cpp
+ ByteCode/Pointer.cpp
+ ByteCode/PrimType.cpp
+ ByteCode/Program.cpp
+ ByteCode/Record.cpp
+ ByteCode/Source.cpp
+ ByteCode/State.cpp
+ ByteCode/MemberPointer.cpp
+ ByteCode/InterpShared.cpp
ItaniumCXXABI.cpp
ItaniumMangle.cpp
JSONNodeDumper.cpp
diff --git a/clang/lib/AST/ExprConstShared.h b/clang/lib/AST/ExprConstShared.h
index 2a7088e4e371a1..efe8ee986d29b3 100644
--- a/clang/lib/AST/ExprConstShared.h
+++ b/clang/lib/AST/ExprConstShared.h
@@ -7,7 +7,7 @@
//===----------------------------------------------------------------------===//
//
// Shared functionality between the new constant expression
-// interpreter (AST/Interp/) and the current one (ExprConstant.cpp).
+// interpreter (AST/ByteCode/) and the current one (ExprConstant.cpp).
//
//===----------------------------------------------------------------------===//
diff --git a/clang/lib/AST/ExprConstant.cpp b/clang/lib/AST/ExprConstant.cpp
index 09edbb6641650a..7bfc63ffd81e28 100644
--- a/clang/lib/AST/ExprConstant.cpp
+++ b/clang/lib/AST/ExprConstant.cpp
@@ -32,10 +32,10 @@
//
//===----------------------------------------------------------------------===//
+#include "ByteCode/Context.h"
+#include "ByteCode/Frame.h"
+#include "ByteCode/State.h"
#include "ExprConstShared.h"
-#include "Interp/Context.h"
-#include "Interp/Frame.h"
-#include "Interp/State.h"
#include "clang/AST/APValue.h"
#include "clang/AST/ASTContext.h"
#include "clang/AST/ASTDiagnostic.h"
diff --git a/clang/test/AST/Interp/arrays.cpp b/clang/test/AST/ByteCode/arrays.cpp
similarity index 100%
rename from clang/test/AST/Interp/arrays.cpp
rename to clang/test/AST/ByteCode/arrays.cpp
diff --git a/clang/test/AST/Interp/atomic.c b/clang/test/AST/ByteCode/atomic.c
similarity index 100%
rename from clang/test/AST/Interp/atomic.c
rename to clang/test/AST/ByteCode/atomic.c
diff --git a/clang/test/AST/Interp/atomic.cpp b/clang/test/AST/ByteCode/atomic.cpp
similarity index 100%
rename from clang/test/AST/Interp/atomic.cpp
rename to clang/test/AST/ByteCode/atomic.cpp
diff --git a/clang/test/AST/Interp/bitfields.cpp b/clang/test/AST/ByteCode/bitfields.cpp
similarity index 100%
rename from clang/test/AST/Interp/bitfields.cpp
rename to clang/test/AST/ByteCode/bitfields.cpp
diff --git a/clang/test/AST/Interp/builtin-align-cxx.cpp b/clang/test/AST/ByteCode/builtin-align-cxx.cpp
similarity index 100%
rename from clang/test/AST/Interp/builtin-align-cxx.cpp
rename to clang/test/AST/ByteCode/builtin-align-cxx.cpp
diff --git a/clang/test/AST/Interp/builtin-constant-p.cpp b/clang/test/AST/ByteCode/builtin-constant-p.cpp
similarity index 100%
rename from clang/test/AST/Interp/builtin-constant-p.cpp
rename to clang/test/AST/ByteCode/builtin-constant-p.cpp
diff --git a/clang/test/AST/Interp/builtin-functions.cpp b/clang/test/AST/ByteCode/builtin-functions.cpp
similarity index 100%
rename from clang/test/AST/Interp/builtin-functions.cpp
rename to clang/test/AST/ByteCode/builtin-functions.cpp
diff --git a/clang/test/AST/Interp/builtins.cpp b/clang/test/AST/ByteCode/builtins.cpp
similarity index 100%
rename from clang/test/AST/Interp/builtins.cpp
rename to clang/test/AST/ByteCode/builtins.cpp
diff --git a/clang/test/AST/Interp/c.c b/clang/test/AST/ByteCode/c.c
similarity index 100%
rename from clang/test/AST/Interp/c.c
rename to clang/test/AST/ByteCode/c.c
diff --git a/clang/test/AST/Interp/c23.c b/clang/test/AST/ByteCode/c23.c
similarity index 100%
rename from clang/test/AST/Interp/c23.c
rename to clang/test/AST/ByteCode/c23.c
diff --git a/clang/test/AST/Interp/codegen.cpp b/clang/test/AST/ByteCode/codegen.cpp
similarity index 100%
rename from clang/test/AST/Interp/codegen.cpp
rename to clang/test/AST/ByteCode/codegen.cpp
diff --git a/clang/test/AST/Interp/comma.cpp b/clang/test/AST/ByteCode/comma.cpp
similarity index 100%
rename from clang/test/AST/Interp/comma.cpp
rename to clang/test/AST/ByteCode/comma.cpp
diff --git a/clang/test/AST/Interp/complex.c b/clang/test/AST/ByteCode/complex.c
similarity index 100%
rename from clang/test/AST/Interp/complex.c
rename to clang/test/AST/ByteCode/complex.c
diff --git a/clang/test/AST/Interp/complex.cpp b/clang/test/AST/ByteCode/complex.cpp
similarity index 100%
rename from clang/test/AST/Interp/complex.cpp
rename to clang/test/AST/ByteCode/complex.cpp
diff --git a/clang/test/AST/Interp/cond.cpp b/clang/test/AST/ByteCode/cond.cpp
similarity index 100%
rename from clang/test/AST/Interp/cond.cpp
rename to clang/test/AST/ByteCode/cond.cpp
diff --git a/clang/test/AST/Interp/const-eval.c b/clang/test/AST/ByteCode/const-eval.c
similarity index 100%
rename from clang/test/AST/Interp/const-eval.c
rename to clang/test/AST/ByteCode/const-eval.c
diff --git a/clang/test/AST/Interp/const-fpfeatures.cpp b/clang/test/AST/ByteCode/const-fpfeatures.cpp
similarity index 100%
rename from clang/test/AST/Interp/const-fpfeatures.cpp
rename to clang/test/AST/ByteCode/const-fpfeatures.cpp
diff --git a/clang/test/AST/Interp/const-temporaries.cpp b/clang/test/AST/ByteCode/const-temporaries.cpp
similarity index 100%
rename from clang/test/AST/Interp/const-temporaries.cpp
rename to clang/test/AST/ByteCode/const-temporaries.cpp
diff --git a/clang/test/AST/Interp/constexpr-frame-describe.cpp b/clang/test/AST/ByteCode/constexpr-frame-describe.cpp
similarity index 100%
rename from clang/test/AST/Interp/constexpr-frame-describe.cpp
rename to clang/test/AST/ByteCode/constexpr-frame-describe.cpp
diff --git a/clang/test/AST/Interp/constexpr-nqueens.cpp b/clang/test/AST/ByteCode/constexpr-nqueens.cpp
similarity index 100%
rename from clang/test/AST/Interp/constexpr-nqueens.cpp
rename to clang/test/AST/ByteCode/constexpr-nqueens.cpp
diff --git a/clang/test/AST/Interp/constexpr-subobj-initialization.cpp b/clang/test/AST/ByteCode/constexpr-subobj-initialization.cpp
similarity index 100%
rename from clang/test/AST/Interp/constexpr-subobj-initialization.cpp
rename to clang/test/AST/ByteCode/constexpr-subobj-initialization.cpp
diff --git a/clang/test/AST/Interp/crash-GH49103-2.cpp b/clang/test/AST/ByteCode/crash-GH49103-2.cpp
similarity index 100%
rename from clang/test/AST/Interp/crash-GH49103-2.cpp
rename to clang/test/AST/ByteCode/crash-GH49103-2.cpp
diff --git a/clang/test/AST/Interp/cxx03.cpp b/clang/test/AST/ByteCode/cxx03.cpp
similarity index 100%
rename from clang/test/AST/Interp/cxx03.cpp
rename to clang/test/AST/ByteCode/cxx03.cpp
diff --git a/clang/test/AST/Interp/cxx11.cpp b/clang/test/AST/ByteCode/cxx11.cpp
similarity index 100%
rename from clang/test/AST/Interp/cxx11.cpp
rename to clang/test/AST/ByteCode/cxx11.cpp
diff --git a/clang/test/AST/Interp/cxx17.cpp b/clang/test/AST/ByteCode/cxx17.cpp
similarity index 100%
rename from clang/test/AST/Interp/cxx17.cpp
rename to clang/test/AST/ByteCode/cxx17.cpp
diff --git a/clang/test/AST/Interp/cxx20.cpp b/clang/test/AST/ByteCode/cxx20.cpp
similarity index 100%
rename from clang/test/AST/Interp/cxx20.cpp
rename to clang/test/AST/ByteCode/cxx20.cpp
diff --git a/clang/test/AST/Interp/cxx23.cpp b/clang/test/AST/ByteCode/cxx23.cpp
similarity index 100%
rename from clang/test/AST/Interp/cxx23.cpp
rename to clang/test/AST/ByteCode/cxx23.cpp
diff --git a/clang/test/AST/Interp/cxx26.cpp b/clang/test/AST/ByteCode/cxx26.cpp
similarity index 100%
rename from clang/test/AST/Interp/cxx26.cpp
rename to clang/test/AST/ByteCode/cxx26.cpp
diff --git a/clang/test/AST/Interp/cxx2a.cpp b/clang/test/AST/ByteCode/cxx2a.cpp
similarity index 100%
rename from clang/test/AST/Interp/cxx2a.cpp
rename to clang/test/AST/ByteCode/cxx2a.cpp
diff --git a/clang/test/AST/Interp/cxx98.cpp b/clang/test/AST/ByteCode/cxx98.cpp
similarity index 100%
rename from clang/test/AST/Interp/cxx98.cpp
rename to clang/test/AST/ByteCode/cxx98.cpp
diff --git a/clang/test/AST/Interp/depth-limit.cpp b/clang/test/AST/ByteCode/depth-limit.cpp
similarity index 100%
rename from clang/test/AST/Interp/depth-limit.cpp
rename to clang/test/AST/ByteCode/depth-limit.cpp
diff --git a/clang/test/AST/Interp/depth-limit2.cpp b/clang/test/AST/ByteCode/depth-limit2.cpp
similarity index 100%
rename from clang/test/AST/Interp/depth-limit2.cpp
rename to clang/test/AST/ByteCode/depth-limit2.cpp
diff --git a/clang/test/AST/Interp/enums-targets.cpp b/clang/test/AST/ByteCode/enums-targets.cpp
similarity index 100%
rename from clang/test/AST/Interp/enums-targets.cpp
rename to clang/test/AST/ByteCode/enums-targets.cpp
diff --git a/clang/test/AST/Interp/enums.cpp b/clang/test/AST/ByteCode/enums.cpp
similarity index 100%
rename from clang/test/AST/Interp/enums.cpp
rename to clang/test/AST/ByteCode/enums.cpp
diff --git a/clang/test/AST/Interp/eval-order.cpp b/clang/test/AST/ByteCode/eval-order.cpp
similarity index 100%
rename from clang/test/AST/Interp/eval-order.cpp
rename to clang/test/AST/ByteCode/eval-order.cpp
diff --git a/clang/test/AST/Interp/floats.cpp b/clang/test/AST/ByteCode/floats.cpp
similarity index 100%
rename from clang/test/AST/Interp/floats.cpp
rename to clang/test/AST/ByteCode/floats.cpp
diff --git a/clang/test/AST/Interp/functions.cpp b/clang/test/AST/ByteCode/functions.cpp
similarity index 100%
rename from clang/test/AST/Interp/functions.cpp
rename to clang/test/AST/ByteCode/functions.cpp
diff --git a/clang/test/AST/Interp/hlsl.hlsl b/clang/test/AST/ByteCode/hlsl.hlsl
similarity index 100%
rename from clang/test/AST/Interp/hlsl.hlsl
rename to clang/test/AST/ByteCode/hlsl.hlsl
diff --git a/clang/test/AST/Interp/if.cpp b/clang/test/AST/ByteCode/if.cpp
similarity index 100%
rename from clang/test/AST/Interp/if.cpp
rename to clang/test/AST/ByteCode/if.cpp
diff --git a/clang/test/AST/Interp/intap.cpp b/clang/test/AST/ByteCode/intap.cpp
similarity index 100%
rename from clang/test/AST/Interp/intap.cpp
rename to clang/test/AST/ByteCode/intap.cpp
diff --git a/clang/test/AST/Interp/invalid.cpp b/clang/test/AST/ByteCode/invalid.cpp
similarity index 100%
rename from clang/test/AST/Interp/invalid.cpp
rename to clang/test/AST/ByteCode/invalid.cpp
diff --git a/clang/test/AST/Interp/lambda.cpp b/clang/test/AST/ByteCode/lambda.cpp
similarity index 100%
rename from clang/test/AST/Interp/lambda.cpp
rename to clang/test/AST/ByteCode/lambda.cpp
diff --git a/clang/test/AST/Interp/lifetimes.cpp b/clang/test/AST/ByteCode/lifetimes.cpp
similarity index 100%
rename from clang/test/AST/Interp/lifetimes.cpp
rename to clang/test/AST/ByteCode/lifetimes.cpp
diff --git a/clang/test/AST/Interp/literals.cpp b/clang/test/AST/ByteCode/literals.cpp
similarity index 100%
rename from clang/test/AST/Interp/literals.cpp
rename to clang/test/AST/ByteCode/literals.cpp
diff --git a/clang/test/AST/Interp/loops.cpp b/clang/test/AST/ByteCode/loops.cpp
similarity index 100%
rename from clang/test/AST/Interp/loops.cpp
rename to clang/test/AST/ByteCode/loops.cpp
diff --git a/clang/test/AST/Interp/memberpointers.cpp b/clang/test/AST/ByteCode/memberpointers.cpp
similarity index 100%
rename from clang/test/AST/Interp/memberpointers.cpp
rename to clang/test/AST/ByteCode/memberpointers.cpp
diff --git a/clang/test/AST/Interp/ms.cpp b/clang/test/AST/ByteCode/ms.cpp
similarity index 100%
rename from clang/test/AST/Interp/ms.cpp
rename to clang/test/AST/ByteCode/ms.cpp
diff --git a/clang/test/AST/Interp/mutable.cpp b/clang/test/AST/ByteCode/mutable.cpp
similarity index 100%
rename from clang/test/AST/Interp/mutable.cpp
rename to clang/test/AST/ByteCode/mutable.cpp
diff --git a/clang/test/AST/Interp/new-delete.cpp b/clang/test/AST/ByteCode/new-delete.cpp
similarity index 100%
rename from clang/test/AST/Interp/new-delete.cpp
rename to clang/test/AST/ByteCode/new-delete.cpp
diff --git a/clang/test/AST/Interp/nullable.cpp b/clang/test/AST/ByteCode/nullable.cpp
similarity index 100%
rename from clang/test/AST/Interp/nullable.cpp
rename to clang/test/AST/ByteCode/nullable.cpp
diff --git a/clang/test/AST/Interp/objc.mm b/clang/test/AST/ByteCode/objc.mm
similarity index 100%
rename from clang/test/AST/Interp/objc.mm
rename to clang/test/AST/ByteCode/objc.mm
diff --git a/clang/test/AST/Interp/opencl.cl b/clang/test/AST/ByteCode/opencl.cl
similarity index 100%
rename from clang/test/AST/Interp/opencl.cl
rename to clang/test/AST/ByteCode/opencl.cl
diff --git a/clang/test/AST/Interp/pointer-addition.c b/clang/test/AST/ByteCode/pointer-addition.c
similarity index 100%
rename from clang/test/AST/Interp/pointer-addition.c
rename to clang/test/AST/ByteCode/pointer-addition.c
diff --git a/clang/test/AST/Interp/records.cpp b/clang/test/AST/ByteCode/records.cpp
similarity index 100%
rename from clang/test/AST/Interp/records.cpp
rename to clang/test/AST/ByteCode/records.cpp
diff --git a/clang/test/AST/Interp/references.cpp b/clang/test/AST/ByteCode/references.cpp
similarity index 100%
rename from clang/test/AST/Interp/references.cpp
rename to clang/test/AST/ByteCode/references.cpp
diff --git a/clang/test/AST/Interp/shifts.cpp b/clang/test/AST/ByteCode/shifts.cpp
similarity index 100%
rename from clang/test/AST/Interp/shifts.cpp
rename to clang/test/AST/ByteCode/shifts.cpp
diff --git a/clang/test/AST/Interp/spaceship.cpp b/clang/test/AST/ByteCode/spaceship.cpp
similarity index 100%
rename from clang/test/AST/Interp/spaceship.cpp
rename to clang/test/AST/ByteCode/spaceship.cpp
diff --git a/clang/test/AST/Interp/switch.cpp b/clang/test/AST/ByteCode/switch.cpp
similarity index 100%
rename from clang/test/AST/Interp/switch.cpp
rename to clang/test/AST/ByteCode/switch.cpp
diff --git a/clang/test/AST/Interp/sycl.cpp b/clang/test/AST/ByteCode/sycl.cpp
similarity index 100%
rename from clang/test/AST/Interp/sycl.cpp
rename to clang/test/AST/ByteCode/sycl.cpp
diff --git a/clang/test/AST/Interp/unions.cpp b/clang/test/AST/ByteCode/unions.cpp
similarity index 100%
rename from clang/test/AST/Interp/unions.cpp
rename to clang/test/AST/ByteCode/unions.cpp
diff --git a/clang/test/AST/Interp/vectors.cpp b/clang/test/AST/ByteCode/vectors.cpp
similarity index 100%
rename from clang/test/AST/Interp/vectors.cpp
rename to clang/test/AST/ByteCode/vectors.cpp
diff --git a/clang/test/AST/Interp/weak.cpp b/clang/test/AST/ByteCode/weak.cpp
similarity index 100%
rename from clang/test/AST/Interp/weak.cpp
rename to clang/test/AST/ByteCode/weak.cpp
diff --git a/clang/unittests/AST/Interp/CMakeLists.txt b/clang/unittests/AST/ByteCode/CMakeLists.txt
similarity index 100%
rename from clang/unittests/AST/Interp/CMakeLists.txt
rename to clang/unittests/AST/ByteCode/CMakeLists.txt
diff --git a/clang/unittests/AST/Interp/Descriptor.cpp b/clang/unittests/AST/ByteCode/Descriptor.cpp
similarity index 95%
rename from clang/unittests/AST/Interp/Descriptor.cpp
rename to clang/unittests/AST/ByteCode/Descriptor.cpp
index abcf1bb0714cc8..9e09c7f15ac9a2 100644
--- a/clang/unittests/AST/Interp/Descriptor.cpp
+++ b/clang/unittests/AST/ByteCode/Descriptor.cpp
@@ -1,6 +1,6 @@
-#include "../../../lib/AST/Interp/Descriptor.h"
-#include "../../../lib/AST/Interp/Context.h"
-#include "../../../lib/AST/Interp/Program.h"
+#include "../../../lib/AST/ByteCode/Descriptor.h"
+#include "../../../lib/AST/ByteCode/Context.h"
+#include "../../../lib/AST/ByteCode/Program.h"
#include "clang/AST/ASTContext.h"
#include "clang/AST/Decl.h"
#include "clang/ASTMatchers/ASTMatchFinder.h"
@@ -15,17 +15,17 @@ using namespace clang::ast_matchers;
/// Inspect generated Descriptors as well as the pointers we create.
///
TEST(Descriptor, Primitives) {
- constexpr char Code[] =
- "struct A { bool a; bool b; };\n"
- "struct S {\n"
- " float f;\n"
- " char s[4];\n"
- " A a[3];\n"
- " short l[3][3];\n"
- " int EmptyA[0];\n"
- "};\n"
- "constexpr S d = {0.0, \"foo\", {{true, false}, {false, true}, {false, false}},\n"
- " {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}, {}};\n";
+ constexpr char Code[] = "struct A { bool a; bool b; };\n"
+ "struct S {\n"
+ " float f;\n"
+ " char s[4];\n"
+ " A a[3];\n"
+ " short l[3][3];\n"
+ " int EmptyA[0];\n"
+ "};\n"
+ "constexpr S d = {0.0, \"foo\", {{true, false}, "
+ "{false, true}, {false, false}},\n"
+ " {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}, {}};\n";
auto AST = tooling::buildASTFromCodeWithArgs(
Code, {"-fexperimental-new-constant-interpreter"});
diff --git a/clang/unittests/AST/Interp/toAPValue.cpp b/clang/unittests/AST/ByteCode/toAPValue.cpp
similarity index 98%
rename from clang/unittests/AST/Interp/toAPValue.cpp
rename to clang/unittests/AST/ByteCode/toAPValue.cpp
index 5ec607a8243492..3f141878fb9594 100644
--- a/clang/unittests/AST/Interp/toAPValue.cpp
+++ b/clang/unittests/AST/ByteCode/toAPValue.cpp
@@ -1,6 +1,6 @@
-#include "../../../lib/AST/Interp/Context.h"
-#include "../../../lib/AST/Interp/Descriptor.h"
-#include "../../../lib/AST/Interp/Program.h"
+#include "../../../lib/AST/ByteCode/Context.h"
+#include "../../../lib/AST/ByteCode/Descriptor.h"
+#include "../../../lib/AST/ByteCode/Program.h"
#include "clang/AST/ASTContext.h"
#include "clang/AST/Decl.h"
#include "clang/ASTMatchers/ASTMatchFinder.h"
diff --git a/clang/unittests/AST/CMakeLists.txt b/clang/unittests/AST/CMakeLists.txt
index 51245599736cfb..40d2e1ff77a601 100644
--- a/clang/unittests/AST/CMakeLists.txt
+++ b/clang/unittests/AST/CMakeLists.txt
@@ -5,7 +5,7 @@ set(LLVM_LINK_COMPONENTS
)
-add_subdirectory(Interp)
+add_subdirectory(ByteCode)
add_clang_unittest(ASTTests
ASTContextParentMapTest.cpp
More information about the cfe-commits
mailing list