File tree Expand file tree Collapse file tree 3 files changed +20
-1
lines changed
include/llvm/TargetParser Expand file tree Collapse file tree 3 files changed +20
-1
lines changed Original file line number Diff line number Diff line change @@ -221,7 +221,8 @@ class Triple {
221221 Emscripten,
222222 ShaderModel, // DirectX ShaderModel
223223 LiteOS,
224- LastOSType = LiteOS
224+ Serenity,
225+ LastOSType = Serenity
225226 };
226227 enum EnvironmentType {
227228 UnknownEnvironment,
@@ -668,6 +669,10 @@ class Triple {
668669 return getOS () == Triple::AIX;
669670 }
670671
672+ bool isOSSerenity () const {
673+ return getOS () == Triple::Serenity;
674+ }
675+
671676 // / Tests whether the OS uses the ELF binary format.
672677 bool isOSBinFormatELF () const {
673678 return getObjectFormat () == Triple::ELF;
Original file line number Diff line number Diff line change @@ -264,6 +264,7 @@ StringRef Triple::getOSTypeName(OSType Kind) {
264264 case PS5: return " ps5" ;
265265 case RTEMS: return " rtems" ;
266266 case Solaris: return " solaris" ;
267+ case Serenity: return " serenity" ;
267268 case TvOS: return " tvos" ;
268269 case UEFI: return " uefi" ;
269270 case WASI: return " wasi" ;
@@ -641,6 +642,7 @@ static Triple::OSType parseOS(StringRef OSName) {
641642 .StartsWith (" emscripten" , Triple::Emscripten)
642643 .StartsWith (" shadermodel" , Triple::ShaderModel)
643644 .StartsWith (" liteos" , Triple::LiteOS)
645+ .StartsWith (" serenity" , Triple::Serenity)
644646 .Default (Triple::UnknownOS);
645647}
646648
Original file line number Diff line number Diff line change @@ -1003,6 +1003,18 @@ TEST(TripleTest, ParsedIDs) {
10031003 EXPECT_EQ (Triple::LiteOS, T.getOS ());
10041004 EXPECT_EQ (Triple::UnknownEnvironment, T.getEnvironment ());
10051005
1006+ T = Triple (" x86_64-pc-serenity" );
1007+ EXPECT_EQ (Triple::x86_64, T.getArch ());
1008+ EXPECT_EQ (Triple::PC, T.getVendor ());
1009+ EXPECT_EQ (Triple::Serenity, T.getOS ());
1010+ EXPECT_EQ (Triple::UnknownEnvironment, T.getEnvironment ());
1011+
1012+ T = Triple (" aarch64-pc-serenity" );
1013+ EXPECT_EQ (Triple::aarch64, T.getArch ());
1014+ EXPECT_EQ (Triple::PC, T.getVendor ());
1015+ EXPECT_EQ (Triple::Serenity, T.getOS ());
1016+ EXPECT_EQ (Triple::UnknownEnvironment, T.getEnvironment ());
1017+
10061018 T = Triple (" huh" );
10071019 EXPECT_EQ (Triple::UnknownArch, T.getArch ());
10081020}
You can’t perform that action at this time.
0 commit comments