Roll clang to 49f39b349db181ca516eb0253462105ff0e2c634.

TEST=ci
Change-Id: I38e9ad7b16ffb0a9d380c3ed23b17854dca5a32f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/447440
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Alexander Aprelev <aam@google.com>
This commit is contained in:
Ryan Macnak
2025-09-15 10:00:29 -07:00
committed by Commit Queue
parent afb6af2be9
commit 496a2bdc9b
12 changed files with 53 additions and 49 deletions
+1 -1
View File
@@ -75,7 +75,7 @@ vars = {
"jsc_tag": "version:299913",
# https://chrome-infra-packages.appspot.com/p/fuchsia/third_party/clang
"clang_version": "git_revision:8c7a2ce01a77c96028fe2c8566f65c45ad9408d3",
"clang_version": "git_revision:49f39b349db181ca516eb0253462105ff0e2c634",
# https://chrome-infra-packages.appspot.com/p/gn/gn
"gn_version": "git_revision:5d0a4153b0bcc86c5a23310d5b648a587be3c56d",
+1 -1
View File
@@ -145,7 +145,7 @@ config("compiler") {
if (is_mac && (is_asan || is_lsan || is_tsan || is_ubsan)) {
ldflags += [
"-rpath",
"buildtools/mac-$host_cpu/clang/lib/clang/21/lib/darwin",
"buildtools/mac-$host_cpu/clang/lib/clang/22/lib/darwin",
]
}
+18 -5
View File
@@ -84,7 +84,10 @@ static void MatchCallPattern(uword* pc) {
static void MatchDataLoadFromPool(uword* pc, intptr_t* data_index) {
// movq RBX, [PP + offset]
static int16_t load_data_disp8[] = {
0x49, 0x8b, 0x5f, -1, //
0x49,
0x8b,
0x5f,
-1, //
};
static int16_t load_data_disp32[] = {
0x49, 0x8b, 0x9f, -1, -1, -1, -1,
@@ -334,7 +337,10 @@ class SwitchableCall : public SwitchableCallBase {
// movq CODE_REG, [PP + offset]
static int16_t load_code_disp8[] = {
0x4d, 0x8b, 0x67, -1, //
0x4d,
0x8b,
0x67,
-1, //
};
static int16_t load_code_disp32[] = {
0x4d, 0x8b, 0xa7, -1, -1, -1, -1,
@@ -374,7 +380,8 @@ class BareSwitchableCall : public SwitchableCallBase {
// callq RCX
static int16_t call_pattern[] = {
0xff, 0xd1, //
0xff,
0xd1, //
};
if (MatchesPattern(pc, call_pattern, ARRAY_SIZE(call_pattern))) {
pc -= ARRAY_SIZE(call_pattern);
@@ -384,7 +391,10 @@ class BareSwitchableCall : public SwitchableCallBase {
// movq RBX, [PP + offset]
static int16_t load_data_disp8[] = {
0x49, 0x8b, 0x5f, -1, //
0x49,
0x8b,
0x5f,
-1, //
};
static int16_t load_data_disp32[] = {
0x49, 0x8b, 0x9f, -1, -1, -1, -1,
@@ -403,7 +413,10 @@ class BareSwitchableCall : public SwitchableCallBase {
// movq RCX, [PP + offset]
static int16_t load_code_disp8[] = {
0x49, 0x8b, 0x4f, -1, //
0x49,
0x8b,
0x4f,
-1, //
};
static int16_t load_code_disp32[] = {
0x49, 0x8b, 0x8f, -1, -1, -1, -1,
+12 -4
View File
@@ -199,11 +199,17 @@ class IlTestPrinter : public AllStatic {
#undef DECLARE_VISIT_INSTRUCTION
private:
void WriteAttribute(const char* value) { writer_->PrintValue(value); }
void WriteAttribute(const char* value) {
writer_->PrintValue(value);
}
void WriteAttribute(intptr_t value) { writer_->PrintValue(value); }
void WriteAttribute(intptr_t value) {
writer_->PrintValue(value);
}
void WriteAttribute(bool value) { writer_->PrintValueBool(value); }
void WriteAttribute(bool value) {
writer_->PrintValueBool(value);
}
void WriteAttribute(Token::Kind kind) {
writer_->PrintValue(Token::Str(kind));
@@ -245,7 +251,9 @@ class IlTestPrinter : public AllStatic {
writer_->PrintValue(LocationKindAsString(loc));
}
void WriteAttribute(const Slot* slot) { writer_->PrintValue(slot->Name()); }
void WriteAttribute(const Slot* slot) {
writer_->PrintValue(slot->Name());
}
void WriteAttribute(const Function* function) {
writer_->PrintValue(function->QualifiedUserVisibleNameCString());
@@ -90,9 +90,7 @@ class MockInstruction : public ZoneAllocated {
public: \
LocationSummary* MakeLocationSummary(Zone* zone, bool opt) const; \
void EmitNativeCode(FlowGraphCompiler* compiler); \
virtual intptr_t InputCount() const { \
return Arity; \
} \
virtual intptr_t InputCount() const { return Arity; } \
}; \
TEST_CASE(LocationsHelpers_##Name) { \
const Location expected_out = ExpectedOut; \
+1 -3
View File
@@ -30,9 +30,7 @@
public: \
CompilerPass_##Name() : CompilerPass(k##Name, #Name) {} \
\
static bool Register() { \
return true; \
} \
static bool Register() { return true; } \
\
protected: \
virtual bool DoBody(CompilerPassState* state) const { \
+3 -9
View File
@@ -1692,9 +1692,7 @@ class CInstr {
class name { \
public: \
constexpr explicit name(storage_t encoding) : encoding_(encoding) {} \
constexpr storage_t encoding() const { \
return encoding_; \
} \
constexpr storage_t encoding() const { return encoding_; } \
constexpr bool operator==(const name& other) const { \
return encoding_ == other.encoding_; \
} \
@@ -1715,18 +1713,14 @@ class CInstr {
constexpr /* implicit */ name##Set(name element) \
: encoding_(1u << element.encoding()) {} \
constexpr explicit name##Set(storage_t encoding) : encoding_(encoding) {} \
constexpr static name##Set Empty() { \
return name##Set(0); \
} \
constexpr static name##Set Empty() { return name##Set(0); } \
constexpr bool Includes(const name r) const { \
return (encoding_ & (1 << r.encoding())) != 0; \
} \
constexpr bool IncludesAll(const name##Set other) const { \
return (encoding_ & other.encoding_) == other.encoding_; \
} \
constexpr bool IsEmpty() const { \
return encoding_ == 0; \
} \
constexpr bool IsEmpty() const { return encoding_ == 0; } \
constexpr bool operator==(const name##Set& other) const { \
return encoding_ == other.encoding_; \
} \
+7 -2
View File
@@ -73,13 +73,18 @@ bool DecodeLoadObjectFromPoolOrThread(uword pc, const Code& code, Object* obj) {
intptr_t TypeTestingStubCallPattern::GetSubtypeTestCachePoolIndex() {
static int16_t indirect_call_pattern[] = {
0xff, -1 /* 0x53 or 0x56 */, 0x07, // callq [RBX/RSI + 0x7]
0xff,
-1 /* 0x53 or 0x56 */,
0x07, // callq [RBX/RSI + 0x7]
};
static int16_t direct_call_pattern[] = {
0xe8, -1, -1, -1, -1, // callq [PC + <offset>]
};
static int16_t pattern_disp8[] = {
0x4d, 0x8b, 0x4f, -1, // movq R9, [PP + offset]
0x4d,
0x8b,
0x4f,
-1, // movq R9, [PP + offset]
};
static int16_t pattern_disp32[] = {
0x4d, 0x8b, 0x8f, -1, -1, -1, -1, // movq R9, [PP + offset]
+1 -3
View File
@@ -59,9 +59,7 @@ namespace dart {
public: \
explicit Reusable##name##HandleScope(Thread* thread = Thread::Current()) \
: handle_(thread->name##_handle_) {} \
~Reusable##name##HandleScope() { \
handle_->ptr_ = name::null(); \
} \
~Reusable##name##HandleScope() { handle_->ptr_ = name::null(); } \
name& Handle() const { \
ASSERT(handle_ != nullptr); \
return *handle_; \
+5 -15
View File
@@ -313,12 +313,8 @@ struct base_ptr_type<
#define DEFINE_COMPRESSED_POINTER(klass, base) \
class Compressed##klass##Ptr : public Compressed##base##Ptr { \
public: \
Compressed##klass##Ptr* operator->() { \
return this; \
} \
const Compressed##klass##Ptr* operator->() const { \
return this; \
} \
Compressed##klass##Ptr* operator->() { return this; } \
const Compressed##klass##Ptr* operator->() const { return this; } \
explicit Compressed##klass##Ptr(klass##Ptr uncompressed) \
: Compressed##base##Ptr(uncompressed) {} \
const klass##Ptr& operator=(const klass##Ptr& other) { \
@@ -335,12 +331,8 @@ struct base_ptr_type<
class Untagged##klass; \
class klass##Ptr : public base##Ptr { \
public: \
klass##Ptr* operator->() { \
return this; \
} \
const klass##Ptr* operator->() const { \
return this; \
} \
klass##Ptr* operator->() { return this; } \
const klass##Ptr* operator->() const { return this; } \
Untagged##klass* untag() { \
return reinterpret_cast<Untagged##klass*>(untagged_pointer()); \
} \
@@ -358,9 +350,7 @@ struct base_ptr_type<
constexpr klass##Ptr(std::nullptr_t) : base##Ptr(nullptr) {} /* NOLINT */ \
explicit klass##Ptr(const UntaggedObject* untagged) \
: base##Ptr(reinterpret_cast<uword>(untagged) + kHeapObjectTag) {} \
klass##Ptr Decompress(uword heap_base) const { \
return *this; \
} \
klass##Ptr Decompress(uword heap_base) const { return *this; } \
}; \
DEFINE_COMPRESSED_POINTER(klass, base)
+2 -2
View File
@@ -136,9 +136,9 @@
"buildtools/linux-arm64/clang/bin/",
"buildtools/linux-x64/clang/bin/",
"buildtools/mac-arm64/clang/bin/",
"buildtools/mac-arm64/clang/lib/clang/21/lib/darwin/",
"buildtools/mac-arm64/clang/lib/clang/22/lib/darwin/",
"buildtools/mac-x64/clang/bin/",
"buildtools/mac-x64/clang/lib/clang/21/lib/darwin/",
"buildtools/mac-x64/clang/lib/clang/22/lib/darwin/",
"buildtools/win-x64/clang/bin/clang.exe",
"buildtools/win-x64/clang/bin/lld-link.exe",
"buildtools/win-x64/clang/bin/llvm-strip.exe",
+1 -1
View File
@@ -44,7 +44,7 @@ def BuildOptions():
other_group.add_argument("-j",
type=int,
help='Ninja -j option for RBE builds.',
default=200 if sys.platform == 'win32' else 500)
default=200 if sys.platform == 'win32' else 400)
other_group.add_argument("-l",
type=int,
help='Ninja -l option for RBE builds.',