@@ -53,6 +53,7 @@ const char *Triple::getArchTypeName(ArchType Kind) {
53
53
case nvptx64: return " nvptx64" ;
54
54
case le32: return " le32" ;
55
55
case le64: return " le64" ;
56
+ case asmjs: return " asmjs" ; // @LOCALMOD Emscripten
56
57
case amdil: return " amdil" ;
57
58
case amdil64: return " amdil64" ;
58
59
case hsail: return " hsail" ;
@@ -121,6 +122,8 @@ const char *Triple::getArchTypePrefix(ArchType Kind) {
121
122
case le32: return " le32" ;
122
123
case le64: return " le64" ;
123
124
125
+ case asmjs: return " asmjs" ; // @LOCALMOD Emscripten
126
+
124
127
case amdil:
125
128
case amdil64: return " amdil" ;
126
129
@@ -180,6 +183,7 @@ const char *Triple::getOSTypeName(OSType Kind) {
180
183
case Haiku: return " haiku" ;
181
184
case Minix: return " minix" ;
182
185
case RTEMS: return " rtems" ;
186
+ case Emscripten: return " emscripten" ; // @LOCALMOD Emscripten
183
187
case NaCl: return " nacl" ;
184
188
case CNK: return " cnk" ;
185
189
case Bitrig: return " bitrig" ;
@@ -273,6 +277,7 @@ Triple::ArchType Triple::getArchTypeForLLVMName(StringRef Name) {
273
277
.Case (" nvptx64" , nvptx64)
274
278
.Case (" le32" , le32)
275
279
.Case (" le64" , le64)
280
+ .Case (" asmjs" , asmjs) // @LOCALMOD Emscripten
276
281
.Case (" amdil" , amdil)
277
282
.Case (" amdil64" , amdil64)
278
283
.Case (" hsail" , hsail)
@@ -384,6 +389,7 @@ static Triple::ArchType parseArch(StringRef ArchName) {
384
389
.Case (" nvptx64" , Triple::nvptx64)
385
390
.Case (" le32" , Triple::le32)
386
391
.Case (" le64" , Triple::le64)
392
+ .Case (" asmjs" , Triple::asmjs) // @LOCALMOD Emscripten
387
393
.Case (" amdil" , Triple::amdil)
388
394
.Case (" amdil64" , Triple::amdil64)
389
395
.Case (" hsail" , Triple::hsail)
@@ -450,6 +456,7 @@ static Triple::OSType parseOS(StringRef OSName) {
450
456
.StartsWith (" haiku" , Triple::Haiku)
451
457
.StartsWith (" minix" , Triple::Minix)
452
458
.StartsWith (" rtems" , Triple::RTEMS)
459
+ .StartsWith (" emscripten" , Triple::Emscripten) // @LOCALMOD Emscripten
453
460
.StartsWith (" nacl" , Triple::NaCl)
454
461
.StartsWith (" cnk" , Triple::CNK)
455
462
.StartsWith (" bitrig" , Triple::Bitrig)
@@ -584,6 +591,7 @@ static Triple::ObjectFormatType getDefaultFormat(const Triple &T) {
584
591
case Triple::amdil:
585
592
case Triple::amdil64:
586
593
case Triple::armeb:
594
+ case Triple::asmjs: // @LOCALMOD Emscripten
587
595
case Triple::avr:
588
596
case Triple::bpfeb:
589
597
case Triple::bpfel:
@@ -1127,6 +1135,7 @@ static unsigned getArchPointerBitWidth(llvm::Triple::ArchType Arch) {
1127
1135
case llvm::Triple::armeb:
1128
1136
case llvm::Triple::hexagon:
1129
1137
case llvm::Triple::le32:
1138
+ case llvm::Triple::asmjs: // @LOCALMOD Emscripten
1130
1139
case llvm::Triple::mips:
1131
1140
case llvm::Triple::mipsel:
1132
1141
case llvm::Triple::nvptx:
@@ -1207,6 +1216,7 @@ Triple Triple::get32BitArchVariant() const {
1207
1216
case Triple::hexagon:
1208
1217
case Triple::kalimba:
1209
1218
case Triple::le32:
1219
+ case Triple::asmjs: // @LOCALMOD Emscripten
1210
1220
case Triple::mips:
1211
1221
case Triple::mipsel:
1212
1222
case Triple::nvptx:
@@ -1256,6 +1266,7 @@ Triple Triple::get64BitArchVariant() const {
1256
1266
case Triple::r600:
1257
1267
case Triple::tce:
1258
1268
case Triple::xcore:
1269
+ case Triple::asmjs: // @LOCALMOD Emscripten
1259
1270
case Triple::sparcel:
1260
1271
case Triple::shave:
1261
1272
T.setArch (UnknownArch);
@@ -1313,6 +1324,7 @@ Triple Triple::getBigEndianArchVariant() const {
1313
1324
case Triple::amdgcn:
1314
1325
case Triple::amdil64:
1315
1326
case Triple::amdil:
1327
+ case Triple::asmjs:
1316
1328
case Triple::avr:
1317
1329
case Triple::hexagon:
1318
1330
case Triple::hsail64:
@@ -1393,6 +1405,7 @@ bool Triple::isLittleEndian() const {
1393
1405
case Triple::amdil64:
1394
1406
case Triple::amdil:
1395
1407
case Triple::arm:
1408
+ case Triple::asmjs:
1396
1409
case Triple::avr:
1397
1410
case Triple::bpfel:
1398
1411
case Triple::hexagon:
0 commit comments