@@ -57,6 +57,7 @@ StringRef Triple::getArchTypeName(ArchType Kind) {
57
57
case nvptx64: return " nvptx64" ;
58
58
case le32: return " le32" ;
59
59
case le64: return " le64" ;
60
+ case asmjs: return " asmjs" ; // @LOCALMOD Emscripten
60
61
case amdil: return " amdil" ;
61
62
case amdil64: return " amdil64" ;
62
63
case hsail: return " hsail" ;
@@ -127,6 +128,8 @@ StringRef Triple::getArchTypePrefix(ArchType Kind) {
127
128
case le32: return " le32" ;
128
129
case le64: return " le64" ;
129
130
131
+ case asmjs: return " asmjs" ; // @LOCALMOD Emscripten
132
+
130
133
case amdil:
131
134
case amdil64: return " amdil" ;
132
135
@@ -192,6 +195,7 @@ StringRef Triple::getOSTypeName(OSType Kind) {
192
195
case Haiku: return " haiku" ;
193
196
case Minix: return " minix" ;
194
197
case RTEMS: return " rtems" ;
198
+ case Emscripten: return " emscripten" ; // @LOCALMOD Emscripten
195
199
case NaCl: return " nacl" ;
196
200
case CNK: return " cnk" ;
197
201
case Bitrig: return " bitrig" ;
@@ -291,6 +295,7 @@ Triple::ArchType Triple::getArchTypeForLLVMName(StringRef Name) {
291
295
.Case (" nvptx64" , nvptx64)
292
296
.Case (" le32" , le32)
293
297
.Case (" le64" , le64)
298
+ .Case (" asmjs" , asmjs) // @LOCALMOD Emscripten
294
299
.Case (" amdil" , amdil)
295
300
.Case (" amdil64" , amdil64)
296
301
.Case (" hsail" , hsail)
@@ -406,6 +411,7 @@ static Triple::ArchType parseArch(StringRef ArchName) {
406
411
.Case (" nvptx64" , Triple::nvptx64)
407
412
.Case (" le32" , Triple::le32)
408
413
.Case (" le64" , Triple::le64)
414
+ .Case (" asmjs" , Triple::asmjs) // @LOCALMOD Emscripten
409
415
.Case (" amdil" , Triple::amdil)
410
416
.Case (" amdil64" , Triple::amdil64)
411
417
.Case (" hsail" , Triple::hsail)
@@ -475,6 +481,7 @@ static Triple::OSType parseOS(StringRef OSName) {
475
481
.StartsWith (" haiku" , Triple::Haiku)
476
482
.StartsWith (" minix" , Triple::Minix)
477
483
.StartsWith (" rtems" , Triple::RTEMS)
484
+ .StartsWith (" emscripten" , Triple::Emscripten) // @LOCALMOD Emscripten
478
485
.StartsWith (" nacl" , Triple::NaCl)
479
486
.StartsWith (" cnk" , Triple::CNK)
480
487
.StartsWith (" bitrig" , Triple::Bitrig)
@@ -617,6 +624,7 @@ static Triple::ObjectFormatType getDefaultFormat(const Triple &T) {
617
624
case Triple::amdil:
618
625
case Triple::amdil64:
619
626
case Triple::armeb:
627
+ case Triple::asmjs: // @LOCALMOD Emscripten
620
628
case Triple::avr:
621
629
case Triple::bpfeb:
622
630
case Triple::bpfel:
@@ -1170,6 +1178,7 @@ static unsigned getArchPointerBitWidth(llvm::Triple::ArchType Arch) {
1170
1178
case llvm::Triple::armeb:
1171
1179
case llvm::Triple::hexagon:
1172
1180
case llvm::Triple::le32:
1181
+ case llvm::Triple::asmjs: // @LOCALMOD Emscripten
1173
1182
case llvm::Triple::mips:
1174
1183
case llvm::Triple::mipsel:
1175
1184
case llvm::Triple::nios2:
@@ -1254,6 +1263,7 @@ Triple Triple::get32BitArchVariant() const {
1254
1263
case Triple::hexagon:
1255
1264
case Triple::kalimba:
1256
1265
case Triple::le32:
1266
+ case Triple::asmjs: // @LOCALMOD Emscripten
1257
1267
case Triple::mips:
1258
1268
case Triple::mipsel:
1259
1269
case Triple::nios2:
@@ -1309,6 +1319,7 @@ Triple Triple::get64BitArchVariant() const {
1309
1319
case Triple::tce:
1310
1320
case Triple::tcele:
1311
1321
case Triple::xcore:
1322
+ case Triple::asmjs: // @LOCALMOD Emscripten
1312
1323
case Triple::sparcel:
1313
1324
case Triple::shave:
1314
1325
T.setArch (UnknownArch);
@@ -1368,6 +1379,7 @@ Triple Triple::getBigEndianArchVariant() const {
1368
1379
case Triple::amdgcn:
1369
1380
case Triple::amdil64:
1370
1381
case Triple::amdil:
1382
+ case Triple::asmjs:
1371
1383
case Triple::avr:
1372
1384
case Triple::hexagon:
1373
1385
case Triple::hsail64:
@@ -1452,6 +1464,7 @@ bool Triple::isLittleEndian() const {
1452
1464
case Triple::amdil64:
1453
1465
case Triple::amdil:
1454
1466
case Triple::arm:
1467
+ case Triple::asmjs:
1455
1468
case Triple::avr:
1456
1469
case Triple::bpfel:
1457
1470
case Triple::hexagon:
0 commit comments