llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT--> @llvm/pr-subscribers-clang Author: Timm Baeder (tbaederr) <details> <summary>Changes</summary> Otherwise we get the char representation in our disassembly output, which we don't want. --- Full diff: https://github.com/llvm/llvm-project/pull/156858.diff 1 Files Affected: - (modified) clang/lib/AST/ByteCode/Disasm.cpp (+14-1) ``````````diff diff --git a/clang/lib/AST/ByteCode/Disasm.cpp b/clang/lib/AST/ByteCode/Disasm.cpp index ac904d359d8cc..ab3b9f7c3b1d7 100644 --- a/clang/lib/AST/ByteCode/Disasm.cpp +++ b/clang/lib/AST/ByteCode/Disasm.cpp @@ -44,7 +44,20 @@ inline static std::string printArg(Program &P, CodePtr &OpPC) { std::string Result; llvm::raw_string_ostream SS(Result); auto Arg = OpPC.read<T>(); - SS << Arg; + // Make sure we print the integral value of chars. + if constexpr (std::is_integral_v<T>) { + if constexpr (sizeof(T) == 1) { + if constexpr (std::is_signed_v<T>) + SS << static_cast<int32_t>(Arg); + else + SS << static_cast<uint32_t>(Arg); + } else { + SS << Arg; + } + } else { + SS << Arg; + } + return Result; } } `````````` </details> https://github.com/llvm/llvm-project/pull/156858 _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
