@@ -53,6 +53,7 @@ const char *Triple::getArchTypeName(ArchType Kind) {
5353 case nvptx64: return " nvptx64" ;
5454 case le32: return " le32" ;
5555 case le64: return " le64" ;
56+ case asmjs: return " asmjs" ; // @LOCALMOD Emscripten
5657 case amdil: return " amdil" ;
5758 case amdil64: return " amdil64" ;
5859 case hsail: return " hsail" ;
@@ -121,6 +122,8 @@ const char *Triple::getArchTypePrefix(ArchType Kind) {
121122 case le32: return " le32" ;
122123 case le64: return " le64" ;
123124
125+ case asmjs: return " asmjs" ; // @LOCALMOD Emscripten
126+
124127 case amdil:
125128 case amdil64: return " amdil" ;
126129
@@ -180,6 +183,7 @@ const char *Triple::getOSTypeName(OSType Kind) {
180183 case Haiku: return " haiku" ;
181184 case Minix: return " minix" ;
182185 case RTEMS: return " rtems" ;
186+ case Emscripten: return " emscripten" ; // @LOCALMOD Emscripten
183187 case NaCl: return " nacl" ;
184188 case CNK: return " cnk" ;
185189 case Bitrig: return " bitrig" ;
@@ -273,6 +277,7 @@ Triple::ArchType Triple::getArchTypeForLLVMName(StringRef Name) {
273277 .Case (" nvptx64" , nvptx64)
274278 .Case (" le32" , le32)
275279 .Case (" le64" , le64)
280+ .Case (" asmjs" , asmjs) // @LOCALMOD Emscripten
276281 .Case (" amdil" , amdil)
277282 .Case (" amdil64" , amdil64)
278283 .Case (" hsail" , hsail)
@@ -384,6 +389,7 @@ static Triple::ArchType parseArch(StringRef ArchName) {
384389 .Case (" nvptx64" , Triple::nvptx64)
385390 .Case (" le32" , Triple::le32)
386391 .Case (" le64" , Triple::le64)
392+ .Case (" asmjs" , Triple::asmjs) // @LOCALMOD Emscripten
387393 .Case (" amdil" , Triple::amdil)
388394 .Case (" amdil64" , Triple::amdil64)
389395 .Case (" hsail" , Triple::hsail)
@@ -450,6 +456,7 @@ static Triple::OSType parseOS(StringRef OSName) {
450456 .StartsWith (" haiku" , Triple::Haiku)
451457 .StartsWith (" minix" , Triple::Minix)
452458 .StartsWith (" rtems" , Triple::RTEMS)
459+ .StartsWith (" emscripten" , Triple::Emscripten) // @LOCALMOD Emscripten
453460 .StartsWith (" nacl" , Triple::NaCl)
454461 .StartsWith (" cnk" , Triple::CNK)
455462 .StartsWith (" bitrig" , Triple::Bitrig)
@@ -584,6 +591,7 @@ static Triple::ObjectFormatType getDefaultFormat(const Triple &T) {
584591 case Triple::amdil:
585592 case Triple::amdil64:
586593 case Triple::armeb:
594+ case Triple::asmjs: // @LOCALMOD Emscripten
587595 case Triple::avr:
588596 case Triple::bpfeb:
589597 case Triple::bpfel:
@@ -1127,6 +1135,7 @@ static unsigned getArchPointerBitWidth(llvm::Triple::ArchType Arch) {
11271135 case llvm::Triple::armeb:
11281136 case llvm::Triple::hexagon:
11291137 case llvm::Triple::le32:
1138+ case llvm::Triple::asmjs: // @LOCALMOD Emscripten
11301139 case llvm::Triple::mips:
11311140 case llvm::Triple::mipsel:
11321141 case llvm::Triple::nvptx:
@@ -1207,6 +1216,7 @@ Triple Triple::get32BitArchVariant() const {
12071216 case Triple::hexagon:
12081217 case Triple::kalimba:
12091218 case Triple::le32:
1219+ case Triple::asmjs: // @LOCALMOD Emscripten
12101220 case Triple::mips:
12111221 case Triple::mipsel:
12121222 case Triple::nvptx:
@@ -1256,6 +1266,7 @@ Triple Triple::get64BitArchVariant() const {
12561266 case Triple::r600:
12571267 case Triple::tce:
12581268 case Triple::xcore:
1269+ case Triple::asmjs: // @LOCALMOD Emscripten
12591270 case Triple::sparcel:
12601271 case Triple::shave:
12611272 T.setArch (UnknownArch);
@@ -1313,6 +1324,7 @@ Triple Triple::getBigEndianArchVariant() const {
13131324 case Triple::amdgcn:
13141325 case Triple::amdil64:
13151326 case Triple::amdil:
1327+ case Triple::asmjs:
13161328 case Triple::avr:
13171329 case Triple::hexagon:
13181330 case Triple::hsail64:
@@ -1393,6 +1405,7 @@ bool Triple::isLittleEndian() const {
13931405 case Triple::amdil64:
13941406 case Triple::amdil:
13951407 case Triple::arm:
1408+ case Triple::asmjs:
13961409 case Triple::avr:
13971410 case Triple::bpfel:
13981411 case Triple::hexagon:
0 commit comments