Anand Goyal e245029151 [CVE-2020-1065] A previous MSRC fix removes the body scope of an enclosing function when a nested function is declared in the param scope of that enclosing function. This an result in us calculating incorrect envIndex for any symbols captured from enclosing scopes if this skipped body scope appears in the frameDisplay being passed to the nested function. This fix addresses the issue by marking the parameter scope also as mustInstantiate = true so we end up computing the correct envIndex. This problem and the fix only triggers when the enclosing function's param and body scopes are merged so the param and body scopes will never appear together in the scope stack and as such will not mess up the envIndex. 5 lat temu
..
AsmJsByteCodeDumper.cpp e2a13ce01a Implement jit for atomic load/store 8 lat temu
AsmJsByteCodeDumper.h 25d29a0511 int64x2 infra 8 lat temu
AsmJsByteCodeWriter.cpp 4a7149b032 refactor & cleanup for bitselect & shuffle 8 lat temu
AsmJsByteCodeWriter.h eebff837b0 Merge branch 'master' into wasm.simd 8 lat temu
AuxArray.h f085b410c3 add oopjit PIC support; bug fixes 9 lat temu
BackendOpCodeAttr.cpp 3d944dbf77 Remove redundent flags for jsbuiltin. 8 lat temu
BackendOpCodeAttr.h 3d944dbf77 Remove redundent flags for jsbuiltin. 8 lat temu
ByteBlock.cpp 6d36a6f737 swb: write barrier annotations 2 9 lat temu
ByteBlock.h eca08f1ab9 A pass over initialization of Arena-allocated classes 8 lat temu
ByteCodeApi.h 2f37655c3f Parser refactor: Even more use stronger type instead of casting from ParseNode 8 lat temu
ByteCodeCacheReleaseFileVersion.h 7fd1128682 Remove unneeded InitConst op from byte code 6 lat temu
ByteCodeDumper.cpp 9c8394ff89 Moving HomeObj field out of ScriptFunction 7 lat temu
ByteCodeDumper.h 17b3bec856 Added new Int64 layouts (implemented for frontend only) 9 lat temu
ByteCodeEmitter.cpp cd58e8e679 [CVE-2020-0969] 6 lat temu
ByteCodeGenerator.cpp a9aee51164 [CVE-2020-0711] 6 lat temu
ByteCodeGenerator.h d969210010 [CVE-2020-0848] 6 lat temu
ByteCodeReader.cpp 0e036aa586 Do not pass info through WorkItem. Instead embed the necessary info on the loopstart bytecode layout. 8 lat temu
ByteCodeReader.h 1c7dc3a7c2 some write barrier fixes 9 lat temu
ByteCodeSerializeFlags.h a5fd26ce4a Indicate how bytecode serializer allocates return buffer 7 lat temu
ByteCodeSerializer.cpp 9195b94de5 OS#17530048 - AssertMsg(i < this->Length(), "index out of bound") -- Chakra!BVFixed::AssertRange 7 lat temu
ByteCodeSerializer.h 0c7acf80ac OS#17588837 - Fast memory growth when serializing many ScopeInfo objects 7 lat temu
ByteCodeWriter.cpp 9c8394ff89 Moving HomeObj field out of ScriptFunction 7 lat temu
ByteCodeWriter.h 9c8394ff89 Moving HomeObj field out of ScriptFunction 7 lat temu
CMakeLists.txt f059afd923 Add new files to CMakeLists.txt 9 lat temu
Chakra.Runtime.ByteCode.vcxproj c0723f4985 Moving RS4 changes to master 7 lat temu
Chakra.Runtime.ByteCode.vcxproj.filters 578f777127 Make the byte code writer for webassembly use an interface so we can swap between writers as needed 9 lat temu
ExtendedOpCodeList.h 3d944dbf77 Remove redundent flags for jsbuiltin. 8 lat temu
ExtendedOpCodeListAsmJs.h 47eab483b9 change top-level dir Lib back to lib 10 lat temu
FuncInfo.cpp 2e33d8247f [CVE-2020-0712] An uninitialized memory usage error in the latest Microsoft Edge 44.18362.387.0 may be exploited to execute arbitrary code. - Individual 6 lat temu
FuncInfo.h 2f00cac3eb Allow redeferral of functions that were fully compiled on original parse. Let the parser track heuristic and functional reasons for non-deferral separately by splitting one existing fscr bit into two. Functions that cannot be deferred for functional will not be redeferral candidates, but functions that were initially not deferred for heuristic reasons, e.g. small scripts, will become candidates for redeferral. Also fix an issue exposed by this change where FunctionInfo attribute bits set during byte code generation could be cleared in FuncInfo finalization. 7 lat temu
IWasmByteCodeWriter.h eebff837b0 Merge branch 'master' into wasm.simd 8 lat temu
LayoutTypes.h 9c8394ff89 Moving HomeObj field out of ScriptFunction 7 lat temu
LayoutTypesAsmJs.h eebff837b0 Merge branch 'master' into wasm.simd 8 lat temu
OpCodeList.h 3d944dbf77 Remove redundent flags for jsbuiltin. 8 lat temu
OpCodeListAsmJs.h 47eab483b9 change top-level dir Lib back to lib 10 lat temu
OpCodeUtil.cpp 6e39312394 Initialize locals 8 lat temu
OpCodeUtil.h 4688f2037a Encode extended opcode with 2 bytes 9 lat temu
OpCodeUtilAsmJs.cpp 1a24313bba add inlining support for asm.js/wasm 8 lat temu
OpCodeUtilAsmJs.h 1a24313bba add inlining support for asm.js/wasm 8 lat temu
OpCodes.cpp 8aaa20219f nit fixes 8 lat temu
OpCodes.h 7fd1128682 Remove unneeded InitConst op from byte code 6 lat temu
OpCodesAsmJs.h 2f4fcc8879 Rename more CurrentMemory to MemorySize and fix unittest 7 lat temu
OpCodesSimd.h e12dac38de truncation & conversion ops for 64x2 types 8 lat temu
OpLayouts.h 9c8394ff89 Moving HomeObj field out of ScriptFunction 7 lat temu
OpLayoutsAsmJs.h eebff837b0 Merge branch 'master' into wasm.simd 8 lat temu
OpLayoutsCommon.h 4688f2037a Encode extended opcode with 2 bytes 9 lat temu
PropertyIdArray.h d7f2c06a62 swb: write barrier annotations 3 9 lat temu
RuntimeByteCodePch.cpp 47eab483b9 change top-level dir Lib back to lib 10 lat temu
RuntimeByteCodePch.h 1f4e125564 OS8050875:Direct super calls in a base class constructor 9 lat temu
Scope.cpp 5f6dea1642 [CVE-2019-0644] Chakra - AV due to type confusion - Individual - Given a split scope (a function has both a param and body scope), then it is required that the body and param scope are marked as both requiring either a scope object or a scope slot. This was not being enforced in Scope::SetIsObject(). This led to an AV in the interpreter when accessing a property because StLocalSlot was used instead of StLocalObjSlot. 7 lat temu
Scope.h a9aee51164 [CVE-2020-0711] 6 lat temu
ScopeInfo.cpp e245029151 [CVE-2020-1065] A previous MSRC fix removes the body scope of an enclosing function when a nested function is declared in the param scope of that enclosing function. This an result in us calculating incorrect envIndex for any symbols captured from enclosing scopes if this skipped body scope appears in the frameDisplay being passed to the nested function. This fix addresses the issue by marking the parameter scope also as mustInstantiate = true so we end up computing the correct envIndex. This problem and the fix only triggers when the enclosing function's param and body scopes are merged so the param and body scopes will never appear together in the scope stack and as such will not mess up the envIndex. 5 lat temu
ScopeInfo.h 129b588fcd Add ScopeInfo to serialized bytecode for deferred functions 7 lat temu
StatementReader.cpp 20e2e00bee initial oop jit debugger implementation 9 lat temu
StatementReader.h 71822e65a2 Fix usage of Statement Reader in IRBuilderAsmJs to make sure we don't use uninitialized values. 8 lat temu
Symbol.cpp 26371402f1 [CVE-2018-0979] Incorrect byte code can cause dereference of uninitialized stack location - Internal 8 lat temu
Symbol.h b323504aaf [1.9>master] [1.8>1.9] [MERGE #4963 @rajatd] ChakraCore 2018-04 security updates 8 lat temu
VarArrayVarCount.h 47eab483b9 change top-level dir Lib back to lib 10 lat temu
WasmByteCodeWriter.cpp 0e036aa586 Do not pass info through WorkItem. Instead embed the necessary info on the loopstart bytecode layout. 8 lat temu
WasmByteCodeWriter.h 578f777127 Make the byte code writer for webassembly use an interface so we can swap between writers as needed 9 lat temu