chakra-core / ChakraCore

ChakraCore is an open source Javascript engine with a C API.
MIT License
9.1k stars 1.19k forks source link

Ubsan errors #6250

Open SuhwanSong opened 5 years ago

SuhwanSong commented 5 years ago

Following code triggers many ubsan errors.

v3[3] = new Error(v3.constructor, v3[28605.91087]);
delete v3[undefined];
var v1 = ";e" ? v3 : v1({ v2:undefined, v1:false });
v1[0] = new Date(true);
delete v3[true];
this.v1(v3.replace);
function v3(v1, ...v0) {
for (v2 = v1 + v1; v3.search ? "N=sR" : {  }; { v2:v2 } ? v2 : v2) {
this.v3([ v2 ], ...v0);
}
v3.push(v1.prototype, v3[17064]);
var v0 = function (v1) {
}
};

Compile option: --static --sanitize=undefined --test-build OS: Ubuntu 18.04.1 LTS Arch: x86_64

ASAN report.

ChakraCore/lib/Common/Codex/Utf8Codex.h:156:5: runtime error: load of value 4294967294, which is not a valid value for type 'utf8::DecodeOptions'
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Common/Codex/Utf8Codex.h:156:5 in 
ChakraCore/pal/src/cruntime/wchar.cpp:1264:58: runtime error: load of misaligned address 0x6210000060a2 for type 'const size_t' (aka 'const unsigned long'), which requires 8 byte alignment
0x6210000060a2: note: pointer points here
 ff ff  00 00 73 00 65 00 61 00  72 00 63 00 68 00 00 00  be be be be be be be be  76 00 33 00 2e 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/pal/src/cruntime/wchar.cpp:1264:58 in 
ChakraCore/lib/Runtime/ByteCode/ByteCodeWriter.cpp:1093:96: runtime error: reference binding to misaligned address 0x7fffffffab23 for type 'Js::InlineCacheIndex' (aka 'unsigned int'), which requires 4 byte alignment
0x7fffffffab23: note: pointer points here
 00  03 ff 0b 00 00 00 00 00  00 80 fa f1 ff 7f 00 00  2d 00 00 00 00 00 00 00  69 2d 38 eb 08 ea df
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/ByteCode/ByteCodeWriter.cpp:1093:96 in 
ChakraCore/lib/Runtime/ByteCode/ByteCodeWriter.cpp:1748:88: runtime error: reference binding to misaligned address 0x7fffffffb6c1 for type 'typename LayoutSizePolicy<SmallLayout>::PropertyIdIndexType' (aka 'unsigned short'), which requires 2 byte alignment
0x7fffffffb6c1: note: pointer points here
 6a 87 be  01 6b c7 73 55 55 00 00  69 2d 38 eb 08 ea df 9d  10 b7 ff ff ff 7f 00 00  b9 83 98 64 55
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/ByteCode/ByteCodeWriter.cpp:1748:88 in 
ChakraCore/lib/Backend/InterpreterThunkEmitter.h:114:9: runtime error: store to misaligned address 0x7ffff1f6003d for type 'unsigned long', which requires 8 byte alignment
0x7ffff1f6003d: note: pointer points here
 24 10 48 b8 00 00 00  00 00 00 00 00 ff e2 cc  cc cc cc cc cc cc cc cc  cc cc cc cc cc cc cc cc  cc
             ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Backend/InterpreterThunkEmitter.h:114:9 in 
ChakraCore/lib/Backend/InterpreterThunkEmitter.h:114:9: runtime error: store to misaligned address 0x7ffff1f60027 for type 'unsigned int', which requires 4 byte alignment
0x7ffff1f60027: note: pointer points here
 c1 48 81 f9 00  00 00 00 76 09 48 c7 c1  00 00 00 00 cd 29 48 8d  7c 24 10 48 b8 c0 c5 20  65 55 55
             ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Backend/InterpreterThunkEmitter.h:114:9 in 
ChakraCore/lib/Backend/InterpreterThunkEmitter.h:114:9: runtime error: store to misaligned address 0x7ffff1f6004b for type 'int', which requires 4 byte alignment
0x7ffff1f6004b: note: pointer points here
 cc  ff d0 e9 00 00 00 00 cc  cc cc cc cc cc cc cc cc  cc cc cc cc cc cc cc cc  cc cc cc cc cc cc cc
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Backend/InterpreterThunkEmitter.h:114:9 in 
ChakraCore/lib/Runtime/Library/JavascriptString.cpp:373:13: runtime error: store to misaligned address 0x7ffff21ad3de for type 'uint32' (aka 'unsigned int'), which requires 4 byte alignment
0x7ffff21ad3de: note: pointer points here
 00 00 00 00 00 00  00 00 28 00 29 00 20 00  7b 00 20 00 5b 00 6e 00  61 00 74 00 69 00 76 00  65 00
             ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Library/JavascriptString.cpp:373:13 in 
ChakraCore/lib/Runtime/Library/JavascriptString.cpp:377:13: runtime error: store to misaligned address 0x7ffff21ad3da for type 'uint32' (aka 'unsigned int'), which requires 4 byte alignment
0x7ffff21ad3da: note: pointer points here
 00 00  00 00 00 00 00 00 6f 00  6e 00 28 00 29 00 20 00  7b 00 20 00 5b 00 6e 00  61 00 74 00 69 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Library/JavascriptString.cpp:377:13 in 
ChakraCore/lib/Runtime/Library/JavascriptString.cpp:381:13: runtime error: store to misaligned address 0x7ffff21ad3d6 for type 'uint32' (aka 'unsigned int'), which requires 4 byte alignment
0x7ffff21ad3d6: note: pointer points here
 00 00 00 00 00 00  00 00 74 00 69 00 6f 00  6e 00 28 00 29 00 20 00  7b 00 20 00 5b 00 6e 00  61 00
             ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Library/JavascriptString.cpp:381:13 in 
ChakraCore/lib/Runtime/Library/JavascriptString.cpp:385:13: runtime error: store to misaligned address 0x7ffff21ad3d2 for type 'uint32' (aka 'unsigned int'), which requires 4 byte alignment
0x7ffff21ad3d2: note: pointer points here
 00 00  00 00 00 00 00 00 6e 00  63 00 74 00 69 00 6f 00  6e 00 28 00 29 00 20 00  7b 00 20 00 5b 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Library/JavascriptString.cpp:385:13 in 
ChakraCore/lib/Runtime/Library/JavascriptError.cpp:531:27: runtime error: nan is outside the range of representable values of type 'int'
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Library/JavascriptError.cpp:531:27 in 
ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:147:30: runtime error: member call on misaligned address 0x7ffff1f89202 for type 'BVFixed', which requires 8 byte alignment
0x7ffff1f89202: note: pointer points here
 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:147:30 in 
ChakraCore/lib/Common/DataStructures/FixedBitVector.cpp:35:10: runtime error: member call on misaligned address 0x7ffff1f89202 for type 'BVFixed *', which requires 8 byte alignment
0x7ffff1f89202: note: pointer points here
 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Common/DataStructures/FixedBitVector.cpp:35:10 in 
ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:151:34: runtime error: member call on misaligned address 0x7ffff1f89202 for type 'BVFixed', which requires 8 byte alignment
0x7ffff1f89202: note: pointer points here
 00 00  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:151:34 in 
ChakraCore/lib/Common/DataStructures/FixedBitVector.h:234:15: runtime error: member call on misaligned address 0x7ffff1f89202 for type 'BVFixed *', which requires 8 byte alignment
0x7ffff1f89202: note: pointer points here
 00 00  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Common/DataStructures/FixedBitVector.h:234:15 in 
ChakraCore/lib/Common/DataStructures/FixedBitVector.cpp:122:10: runtime error: member call on misaligned address 0x7ffff1f89202 for type 'const BVFixed *', which requires 8 byte alignment
0x7ffff1f89202: note: pointer points here
 00 00  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Common/DataStructures/FixedBitVector.cpp:122:10 in 
ChakraCore/lib/Common/DataStructures/FixedBitVector.h:279:9: runtime error: member call on misaligned address 0x7ffff1f8920a for type 'BVUnitT<unsigned long>', which requires 8 byte alignment
0x7ffff1f8920a: note: pointer points here
 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Common/DataStructures/FixedBitVector.h:279:9 in 
ChakraCore/lib/Common/DataStructures/UnitBitVector.h:431:10: runtime error: member call on misaligned address 0x7ffff1f8920a for type 'BVUnitT<unsigned long> *', which requires 8 byte alignment
0x7ffff1f8920a: note: pointer points here
 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Common/DataStructures/UnitBitVector.h:431:10 in 
ChakraCore/lib/Common/DataStructures/FixedBitVector.h:279:9: runtime error: member call on misaligned address 0x7ffff1f8920a for type 'BVUnitT<unsigned long>', which requires 8 byte alignment
0x7ffff1f8920a: note: pointer points here
 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Common/DataStructures/FixedBitVector.h:279:9 in 
ChakraCore/lib/Common/DataStructures/UnitBitVector.h:441:10: runtime error: member call on misaligned address 0x7ffff1f8920a for type 'BVUnitT<unsigned long> *', which requires 8 byte alignment
0x7ffff1f8920a: note: pointer points here
 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Common/DataStructures/UnitBitVector.h:441:10 in 
ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:181:13: runtime error: member access within misaligned address 0x7ffff1f891df for type 'Js::FldInfo', which requires 2 byte alignment
0x7ffff1f891df: note: pointer points here
 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00
             ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:181:13 in 
ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:181:24: runtime error: store to misaligned address 0x7ffff1f891e1 for type 'Js::FldInfoFlags', which requires 2 byte alignment
0x7ffff1f891e1: note: pointer points here
 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:181:24 in 
ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:182:13: runtime error: member access within misaligned address 0x7ffff1f891df for type 'Js::FldInfo', which requires 2 byte alignment
0x7ffff1f891df: note: pointer points here
 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00
             ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:182:13 in 
ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:183:13: runtime error: member access within misaligned address 0x7ffff1f891df for type 'Js::FldInfo', which requires 2 byte alignment
0x7ffff1f891df: note: pointer points here
 00 00 00 00 09  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00
             ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:183:13 in 
ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:1384:53: runtime error: member call on misaligned address 0x7ffff1f891ff for type 'ValueType', which requires 2 byte alignment
0x7ffff1f891ff: note: pointer points here
 09 00 00 80 09  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00
             ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:1384:53 in 
ChakraCore/lib/Runtime/Language/ValueType.cpp:1098:22: runtime error: member call on misaligned address 0x7ffff1f891ff for type 'const ValueType *', which requires 2 byte alignment
0x7ffff1f891ff: note: pointer points here
 09 00 00 80 09  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00
             ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/ValueType.cpp:1098:22 in 
ChakraCore/lib/Runtime/./Language/ValueType.h:352:36: runtime error: member call on misaligned address 0x7ffff1f891ff for type 'const ValueType *', which requires 2 byte alignment
0x7ffff1f891ff: note: pointer points here
 09 00 00 80 09  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00
             ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/./Language/ValueType.h:352:36 in 
ChakraCore/lib/Runtime/./Language/ValueType.h:357:15: runtime error: member call on misaligned address 0x7ffff1f891ff for type 'ValueType', which requires 2 byte alignment
0x7ffff1f891ff: note: pointer points here
 09 00 00 80 09  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00
             ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/./Language/ValueType.h:357:15 in 
ChakraCore/lib/Runtime/Language/ValueType.cpp:1416:17: runtime error: member call on misaligned address 0x7ffff1f891ff for type 'const ValueType *', which requires 2 byte alignment
0x7ffff1f891ff: note: pointer points here
 09 00 00 80 09  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00
             ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/ValueType.cpp:1416:17 in 
ChakraCore/lib/Runtime/Language/ValueType.cpp:1418:12: runtime error: load of misaligned address 0x7ffff1f891ff for type 'const typename WriteBarrierFieldTypeTraits<Bits>::Type' (aka 'const ValueType::Bits'), which requires 2 byte alignment
0x7ffff1f891ff: note: pointer points here
 09 00 00 80 09  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00
             ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/ValueType.cpp:1418:12 in 
ChakraCore/lib/Runtime/./Language/ValueType.h:360:28: runtime error: load of misaligned address 0x7ffff1f891ff for type 'const typename WriteBarrierFieldTypeTraits<Bits>::Type' (aka 'const ValueType::Bits'), which requires 2 byte alignment
0x7ffff1f891ff: note: pointer points here
 09 00 00 80 09  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00
             ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/./Language/ValueType.h:360:28 in 
ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:1262:33: runtime error: member access within misaligned address 0x7ffff1f891fb for type 'Js::FldInfo', which requires 2 byte alignment
0x7ffff1f891fb: note: pointer points here
 09  00 00 80 09 00 00 80 0b  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:1262:33 in 
ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:1262:56: runtime error: load of misaligned address 0x7ffff1f891fd for type 'Js::FldInfoFlags', which requires 2 byte alignment
0x7ffff1f891fd: note: pointer points here
 00 80 09 00 00 80 0b  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00
             ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:1262:56 in 
ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:1268:9: runtime error: member access within misaligned address 0x7ffff1f891fb for type 'Js::FldInfo', which requires 2 byte alignment
0x7ffff1f891fb: note: pointer points here
 09  00 00 80 09 00 00 80 0b  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:1268:9 in 
ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:1268:32: runtime error: store to misaligned address 0x7ffff1f891fd for type 'Js::FldInfoFlags', which requires 2 byte alignment
0x7ffff1f891fd: note: pointer points here
 00 80 09 00 00 80 0b  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00
             ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:1268:32 in 
ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:1286:13: runtime error: member access within misaligned address 0x7ffff1f891fb for type 'Js::FldInfo', which requires 2 byte alignment
0x7ffff1f891fb: note: pointer points here
 09  00 00 80 09 00 41 80 0b  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:1286:13 in 
ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:1288:17: runtime error: member access within misaligned address 0x7ffff1f891fb for type 'Js::FldInfo', which requires 2 byte alignment
0x7ffff1f891fb: note: pointer points here
 09  00 00 80 09 00 41 80 0b  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:1288:17 in 
ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:1290:17: runtime error: member access within misaligned address 0x7ffff1f891fb for type 'Js::FldInfo', which requires 2 byte alignment
0x7ffff1f891fb: note: pointer points here
 09  00 00 80 09 00 41 80 0b  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:1290:17 in 
ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:1265:48: runtime error: member access within misaligned address 0x7ffff1f891f3 for type 'Js::FldInfo', which requires 2 byte alignment
0x7ffff1f891f3: note: pointer points here
 09  00 00 80 09 00 00 80 09  00 00 80 09 00 41 7f 0b  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:1265:48 in 
ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:1265:81: runtime error: member call on misaligned address 0x7ffff1f891f3 for type 'ValueType', which requires 2 byte alignment
0x7ffff1f891f3: note: pointer points here
 09  00 00 80 09 00 00 80 09  00 00 80 09 00 41 7f 0b  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:1265:81 in 
ChakraCore/lib/Runtime/Language/ValueType.cpp:1044:22: runtime error: member call on misaligned address 0x7ffff1f891f3 for type 'const ValueType *', which requires 2 byte alignment
0x7ffff1f891f3: note: pointer points here
 09  00 00 80 09 00 00 80 09  00 00 80 09 00 41 7f 0b  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/ValueType.cpp:1044:22 in 
ChakraCore/lib/Runtime/Language/ValueType.cpp:1046:22: runtime error: load of misaligned address 0x7ffff1f891f3 for type 'const typename WriteBarrierFieldTypeTraits<Bits>::Type' (aka 'const ValueType::Bits'), which requires 2 byte alignment
0x7ffff1f891f3: note: pointer points here
 09  00 00 80 09 00 00 80 09  00 00 80 09 00 41 7f 0b  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/ValueType.cpp:1046:22 in 
ChakraCore/lib/Runtime/Language/ValueType.cpp:1049:18: runtime error: load of misaligned address 0x7ffff1f891f3 for type 'const typename WriteBarrierFieldTypeTraits<Bits>::Type' (aka 'const ValueType::Bits'), which requires 2 byte alignment
0x7ffff1f891f3: note: pointer points here
 09  00 00 80 09 00 00 80 09  00 00 80 09 00 41 7f 0b  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/ValueType.cpp:1049:18 in 
ChakraCore/lib/Runtime/Language/ValueType.cpp:118:17: runtime error: member call on misaligned address 0x7ffff1f891f3 for type 'const ValueType *', which requires 2 byte alignment
0x7ffff1f891f3: note: pointer points here
 09  00 00 80 09 00 00 80 09  00 00 80 09 00 41 7f 0b  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/ValueType.cpp:118:17 in 
ChakraCore/lib/Runtime/Language/ValueType.cpp:123:17: runtime error: member call on misaligned address 0x7ffff1f891f3 for type 'const ValueType *', which requires 2 byte alignment
0x7ffff1f891f3: note: pointer points here
 09  00 00 80 09 00 00 80 09  00 00 80 09 00 41 7f 0b  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/ValueType.cpp:123:17 in 
ChakraCore/lib/Runtime/Language/ValueType.cpp:126:15: runtime error: load of misaligned address 0x7ffff1f891f3 for type 'const typename WriteBarrierFieldTypeTraits<Bits>::Type' (aka 'const ValueType::Bits'), which requires 2 byte alignment
0x7ffff1f891f3: note: pointer points here
 09  00 00 80 09 00 00 80 09  00 00 80 09 00 41 7f 0b  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/ValueType.cpp:126:15 in 
ChakraCore/lib/Runtime/Language/ValueType.cpp:535:17: runtime error: member call on misaligned address 0x7ffff1f891f3 for type 'const ValueType *', which requires 2 byte alignment
0x7ffff1f891f3: note: pointer points here
 09  00 00 80 09 00 00 80 09  00 00 80 09 00 41 7f 0b  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/ValueType.cpp:535:17 in 
ChakraCore/lib/Runtime/Language/ValueType.cpp:190:17: runtime error: member call on misaligned address 0x7ffff1f891f3 for type 'const ValueType *', which requires 2 byte alignment
0x7ffff1f891f3: note: pointer points here
 09  00 00 80 09 00 00 80 09  00 00 80 09 00 41 7f 0b  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/ValueType.cpp:190:17 in 
ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:1265:13: runtime error: member access within misaligned address 0x7ffff1f891f3 for type 'Js::FldInfo', which requires 2 byte alignment
0x7ffff1f891f3: note: pointer points here
 09  00 00 80 09 00 00 80 09  00 00 80 09 00 41 7f 0b  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/DynamicProfileInfo.cpp:1265:13 in 
ChakraCore/lib/Runtime/Language/ValueType.cpp:196:17: runtime error: member call on misaligned address 0x7ffff1f891f7 for type 'const ValueType *', which requires 2 byte alignment
0x7ffff1f891f7: note: pointer points here
 19 01 41 7f 09  00 00 80 09 00 41 7f 0b  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00
             ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/ValueType.cpp:196:17 in 
ChakraCore/lib/Runtime/Language/ValueType.cpp:181:17: runtime error: member call on misaligned address 0x7ffff1f891f7 for type 'const ValueType *', which requires 2 byte alignment
0x7ffff1f891f7: note: pointer points here
 19 01 41 7f 09  00 00 80 09 00 41 7f 0b  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00
             ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/ValueType.cpp:181:17 in 
ChakraCore/lib/Runtime/Language/ValueType.cpp:129:17: runtime error: member call on misaligned address 0x7ffff1f891f7 for type 'const ValueType *', which requires 2 byte alignment
0x7ffff1f891f7: note: pointer points here
 19 01 41 7f 09  00 00 80 09 00 41 7f 0b  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00
             ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/ValueType.cpp:129:17 in 
ChakraCore/lib/Runtime/Language/ValueType.cpp:132:13: runtime error: load of misaligned address 0x7ffff1f891f7 for type 'const typename WriteBarrierFieldTypeTraits<Bits>::Type' (aka 'const ValueType::Bits'), which requires 2 byte alignment
0x7ffff1f891f7: note: pointer points here
 19 01 41 7f 09  00 00 80 09 00 41 7f 0b  00 00 02 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00
             ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/ValueType.cpp:132:13 in 
ChakraCore/lib/Runtime/./Library/JavascriptNumber.h:69:48: runtime error: nan is outside the range of representable values of type 'int'
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/./Library/JavascriptNumber.h:69:48 in 
ChakraCore/lib/Runtime/Library/JavascriptNumber.cpp:122:46: runtime error: nan is outside the range of representable values of type 'unsigned int'
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Library/JavascriptNumber.cpp:122:46 in 
ChakraCore/lib/Runtime/ByteCode/ByteCodeSerializer.cpp:2779:18: runtime error: load of misaligned address 0x55556835eda9 for type 'int', which requires 4 byte alignment
0x55556835eda9: note: pointer points here
 4b 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 40 00 fe 12 03 00 fe  b1 8b fe b1 8b
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/ByteCode/ByteCodeSerializer.cpp:2779:18 in 
ChakraCore/lib/Runtime/ByteCode/ByteCodeSerializer.cpp:332:9: runtime error: store to misaligned address 0x7ffff1fa9752 for type 'int', which requires 4 byte alignment
0x7ffff1fa9752: note: pointer points here
 01 00  02 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 01 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/ByteCode/ByteCodeSerializer.cpp:332:9 in 
ChakraCore/lib/Runtime/ByteCode/ByteCodeSerializer.cpp:4621:86: runtime error: load of misaligned address 0x555568360a52 for type 'int', which requires 4 byte alignment
0x555568360a52: note: pointer points here
 00 00  00 00 91 01 00 00 90 01  00 00 8e 01 00 00 8f 01  00 00 30 00 00 00 03 04  00 00 00 00 00 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/ByteCode/ByteCodeSerializer.cpp:4621:86 in 
ChakraCore/lib/Runtime/ByteCode/ByteCodeReader.cpp:159:24: runtime error: load of misaligned address 0x555568360445 for type 'uint16' (aka 'unsigned short'), which requires 2 byte alignment
0x555568360445: note: pointer points here
 22 21 08 01 51 01 21  61 22 1a 09 76 22 21 0a  01 51 01 21 61 22 1a 0b  76 22 21 0c 01 51 01 21  61
             ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/ByteCode/ByteCodeReader.cpp:159:24 in 
ChakraCore/lib/Runtime/Library/JavascriptNumber.cpp:102:33: runtime error: 9.0072e+15 is outside the range of representable values of type 'int'
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Library/JavascriptNumber.cpp:102:33 in 
ChakraCore/lib/Runtime/ByteCode/ByteCodeSerializer.cpp:2843:18: runtime error: load of misaligned address 0x555568361f3a for type 'double', which requires 8 byte alignment
0x555568361f3a: note: pointer points here
 01 01  00 04 ff ff ff ff ff ff  3f 43 05 fe 3c 03 01 01  fe 90 01 4f 0c 4f 0d 4f  0e 4f 0f 4f 10 47
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/ByteCode/ByteCodeSerializer.cpp:2843:18 in 
ChakraCore/lib/Runtime/./Library/JavascriptNumber.h:69:48: runtime error: nan is outside the range of representable values of type 'int'
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/./Library/JavascriptNumber.h:69:48 in 
ChakraCore/lib/Runtime/Language/ValueType.cpp:746:23: runtime error: member call on misaligned address 0x7ffff1f891f3 for type 'const ValueType *', which requires 2 byte alignment
0x7ffff1f891f3: note: pointer points here
 09  00 00 80 19 01 41 7f 09  01 41 7f 09 00 41 7e 7b  04 00 02 00 00 00 00 00  00 00 00 00 00 00 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/ValueType.cpp:746:23 in 
ChakraCore/lib/Runtime/Language/ValueType.cpp:749:12: runtime error: member access within misaligned address 0x7ffff1f891f3 for type 'const ValueType::(anonymous struct at ChakraCore/lib/Runtime/./Language/ValueType.h:79:9)', which requires 2 byte alignment
0x7ffff1f891f3: note: pointer points here
 09  00 00 80 19 01 41 7f 09  01 41 7f 09 00 41 7e 7b  04 00 02 00 00 00 00 00  00 00 00 00 00 00 00
              ^ 
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ChakraCore/lib/Runtime/Language/ValueType.cpp:749:12
Implementist commented 4 years ago

I tryed to simplify the test case and get:

var v1 = ";e" ? v3 : v1({
    v2: undefined,
    v1: false
});

print(v1 == v3);

v1();

function v3() {
    v3();
};

Just a recursive call of empty function v3, the same as #6248