[PATCH] D88779: [VE] Support register and frame-index pair correctly
Simon Moll via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Oct 5 00:17:39 PDT 2020
simoll added a comment.
LGTM apart from the slightly convoluted test case.
================
Comment at: llvm/test/CodeGen/VE/loadrri.ll:55-61
+%"class.std::__1::basic_string" = type { %"class.std::__1::__compressed_pair.1" }
+%"class.std::__1::__compressed_pair.1" = type { %"struct.std::__1::__compressed_pair_elem.2" }
+%"struct.std::__1::__compressed_pair_elem.2" = type { %"struct.std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>::__rep" }
+%"struct.std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>::__rep" = type { %union.anon }
+%union.anon = type { %"struct.std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>::__long" }
+%"struct.std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>::__long" = type { i64, i64, i8* }
+
----------------
These types are only used to allocate a pointer (test `func_rf`) that is then immediately bitcast to the type below.
Couldn't we just allocate the type below directly? We could then remove the types, the bitcast and also simplify the name to something like `basic_char_string`.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D88779/new/
https://reviews.llvm.org/D88779
More information about the llvm-commits
mailing list