Skip to content

Commit 00fc551

Browse files
Remove Simd.js code from ChakraCore - Part 1 (ifdef out)
1 parent 2b923b6 commit 00fc551

File tree

92 files changed

+484
-138
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

92 files changed

+484
-138
lines changed

lib/Backend/BackwardPass.cpp

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1778,6 +1778,7 @@ BackwardPass::ProcessBailOutCopyProps(BailOutInfo * bailOutInfo, BVSparse<JitAre
17781778
float64StackSym = stackSym->GetFloat64EquivSym(nullptr);
17791779
Assert(float64StackSym);
17801780
}
1781+
#ifdef ENABLE_SIMDJS
17811782
// SIMD_JS
17821783
else if (bailOutInfo->liveSimd128F4Syms->Test(symId))
17831784
{
@@ -1787,6 +1788,7 @@ BackwardPass::ProcessBailOutCopyProps(BailOutInfo * bailOutInfo, BVSparse<JitAre
17871788
{
17881789
simd128StackSym = stackSym->GetSimd128I4EquivSym(nullptr);
17891790
}
1791+
#endif
17901792
else
17911793
{
17921794
Assert(bailOutInfo->liveVarSyms->Test(symId));
@@ -2345,17 +2347,21 @@ BackwardPass::ProcessBailOutInfo(IR::Instr * instr, BailOutInfo * bailOutInfo)
23452347
// ToVars that can more easily be eliminated due to being dead stores.
23462348

23472349
#if DBG
2350+
#ifdef ENABLE_SIMDJS
23482351
// SIMD_JS
23492352
// Simd128 syms should be live in at most one form
23502353
tempBv->And(bailOutInfo->liveSimd128F4Syms, bailOutInfo->liveSimd128I4Syms);
2354+
#endif
23512355
Assert(tempBv->IsEmpty());
23522356

23532357
// Verify that all syms to restore are live in some fashion
23542358
tempBv->Minus(byteCodeUpwardExposedUsed, bailOutInfo->liveVarSyms);
23552359
tempBv->Minus(bailOutInfo->liveLosslessInt32Syms);
23562360
tempBv->Minus(bailOutInfo->liveFloat64Syms);
2361+
#ifdef ENABLE_SIMDJS
23572362
tempBv->Minus(bailOutInfo->liveSimd128F4Syms);
23582363
tempBv->Minus(bailOutInfo->liveSimd128I4Syms);
2364+
#endif
23592365
Assert(tempBv->IsEmpty());
23602366
#endif
23612367

@@ -2426,6 +2432,7 @@ BackwardPass::ProcessBailOutInfo(IR::Instr * instr, BailOutInfo * bailOutInfo)
24262432
}
24272433
NEXT_BITSET_IN_SPARSEBV;
24282434

2435+
#ifdef ENABLE_SIMDJS
24292436
// SIMD_JS
24302437
tempBv->Or(bailOutInfo->liveSimd128F4Syms, bailOutInfo->liveSimd128I4Syms);
24312438
tempBv->And(byteCodeUpwardExposedUsed);
@@ -2447,6 +2454,7 @@ BackwardPass::ProcessBailOutInfo(IR::Instr * instr, BailOutInfo * bailOutInfo)
24472454
byteCodeUpwardExposedUsed->Set(simd128Sym->m_id);
24482455
}
24492456
NEXT_BITSET_IN_SPARSEBV;
2457+
#endif
24502458
}
24512459
// Var
24522460
// Any remaining syms to restore will be restored from their var versions

lib/Backend/BailOut.cpp

Lines changed: 41 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -393,6 +393,7 @@ void BailOutRecord::DumpArgOffsets(uint count, int* offsets, int argOutSlotStart
393393
bool isFloat64 = this->argOutOffsetInfo->argOutFloat64Syms->Test(argOutSlotStart + i) != 0;
394394
bool isInt32 = this->argOutOffsetInfo->argOutLosslessInt32Syms->Test(argOutSlotStart + i) != 0;
395395

396+
#ifdef ENABLE_SIMDJS
396397
// SIMD_JS
397398
// Simd128 reside in Float64 regs
398399
isFloat64 |= this->argOutOffsetInfo->argOutSimd128F4Syms->Test(argOutSlotStart + i) != 0;
@@ -405,7 +406,7 @@ void BailOutRecord::DumpArgOffsets(uint count, int* offsets, int argOutSlotStart
405406
isFloat64 |= this->argOutOffsetInfo->argOutSimd128B4Syms->Test(argOutSlotStart + i) != 0;
406407
isFloat64 |= this->argOutOffsetInfo->argOutSimd128B8Syms->Test(argOutSlotStart + i) != 0;
407408
isFloat64 |= this->argOutOffsetInfo->argOutSimd128B16Syms->Test(argOutSlotStart + i) != 0;
408-
409+
#endif
409410
Assert(!isFloat64 || !isInt32);
410411

411412
Output::Print(_u("%s #%3d: "), name, i + regSlotOffset);
@@ -424,6 +425,7 @@ void BailOutRecord::DumpLocalOffsets(uint count, int argOutSlotStart)
424425
bool isFloat64 = row->isFloat;
425426
bool isInt32 = row->isInt;
426427

428+
#ifdef ENABLE_SIMDJS
427429
// SIMD_JS
428430
// Simd values are in float64 regs
429431
isFloat64 = isFloat64 || row->isSimd128F4;
@@ -436,6 +438,7 @@ void BailOutRecord::DumpLocalOffsets(uint count, int argOutSlotStart)
436438
isFloat64 = isFloat64 || row->isSimd128B4;
437439
isFloat64 = isFloat64 || row->isSimd128B8;
438440
isFloat64 = isFloat64 || row->isSimd128B16;
441+
#endif
439442

440443
Assert(!isFloat64 || !isInt32);
441444

@@ -726,6 +729,7 @@ BailOutRecord::IsOffsetNativeIntOrFloat(uint offsetIndex, int argOutSlotStart, b
726729
{
727730
bool isFloat64 = this->argOutOffsetInfo->argOutFloat64Syms->Test(argOutSlotStart + offsetIndex) != 0;
728731
bool isInt32 = this->argOutOffsetInfo->argOutLosslessInt32Syms->Test(argOutSlotStart + offsetIndex) != 0;
732+
#ifdef ENABLE_SIMDJS
729733
// SIMD_JS
730734
bool isSimd128F4 = this->argOutOffsetInfo->argOutSimd128F4Syms->Test(argOutSlotStart + offsetIndex) != 0;
731735
bool isSimd128I4 = this->argOutOffsetInfo->argOutSimd128I4Syms->Test(argOutSlotStart + offsetIndex) != 0;
@@ -737,13 +741,19 @@ BailOutRecord::IsOffsetNativeIntOrFloat(uint offsetIndex, int argOutSlotStart, b
737741
bool isSimd128B4 = this->argOutOffsetInfo->argOutSimd128B4Syms->Test(argOutSlotStart + offsetIndex) != 0;
738742
bool isSimd128B8 = this->argOutOffsetInfo->argOutSimd128B8Syms->Test(argOutSlotStart + offsetIndex) != 0;
739743
bool isSimd128B16 = this->argOutOffsetInfo->argOutSimd128B16Syms->Test(argOutSlotStart + offsetIndex) != 0;
744+
#endif
740745

746+
#ifdef ENABLE_SIMDJS
741747
Assert(!isFloat64 || !isInt32 ||
742748
!isSimd128F4 || !isSimd128I4 || !isSimd128I8 || !isSimd128I16 || !
743749
!isSimd128U4 || !isSimd128U8 || !isSimd128U16);
750+
#else
751+
Assert(!isFloat64 || !isInt32);
752+
#endif
744753

745754
*pIsFloat64 = isFloat64;
746755
*pIsInt32 = isInt32;
756+
#ifdef ENABLE_SIMDJS
747757
*pIsSimd128F4 = isSimd128F4;
748758
*pIsSimd128I4 = isSimd128I4;
749759
*pIsSimd128I8 = isSimd128I8;
@@ -754,6 +764,19 @@ BailOutRecord::IsOffsetNativeIntOrFloat(uint offsetIndex, int argOutSlotStart, b
754764
*pIsSimd128B4 = isSimd128B4;
755765
*pIsSimd128B8 = isSimd128B8;
756766
*pIsSimd128B16 = isSimd128B16;
767+
#else
768+
*pIsSimd128F4 = false;
769+
*pIsSimd128I4 = false;
770+
*pIsSimd128I8 = false;
771+
*pIsSimd128I16 = false;
772+
*pIsSimd128U4 = false;
773+
*pIsSimd128U8 = false;
774+
*pIsSimd128U16 = false;
775+
*pIsSimd128B4 = false;
776+
*pIsSimd128B8 = false;
777+
*pIsSimd128B16 = false;
778+
#endif
779+
757780
}
758781

759782
void
@@ -924,6 +947,7 @@ BailOutRecord::RestoreValue(IR::BailOutKind bailOutKind, Js::JavascriptCallStack
924947
value = Js::JavascriptNumber::ToVar(int32Value, scriptContext);
925948
BAILOUT_VERBOSE_TRACE(newInstance->function->GetFunctionBody(), bailOutKind, _u(", value: %10d (ToVar: 0x%p)"), int32Value, value);
926949
}
950+
#ifdef ENABLE_SIMDJS
927951
// SIMD_JS
928952
else if (isSimd128F4)
929953
{
@@ -975,6 +999,7 @@ BailOutRecord::RestoreValue(IR::BailOutKind bailOutKind, Js::JavascriptCallStack
975999
Assert(!value);
9761000
value = Js::JavascriptSIMDBool8x16::New(&simdValue, scriptContext);
9771001
}
1002+
#endif // #ifdef ENABLE_SIMDJS
9781003
else
9791004
{
9801005
BAILOUT_VERBOSE_TRACE(newInstance->function->GetFunctionBody(), bailOutKind, _u(", value: 0x%p"), value);
@@ -1005,10 +1030,19 @@ BailOutRecord::RestoreValues(IR::BailOutKind bailOutKind, Js::JavascriptCallStac
10051030
{
10061031
globalBailOutRecordTable->IterateGlobalBailOutRecordTableRows(m_bailOutRecordId, [=](GlobalBailOutRecordDataRow *row) {
10071032
Assert(row->offset != 0);
1033+
#ifdef ENABLE_SIMDJS
10081034
RestoreValue(bailOutKind, layout, values, scriptContext, fromLoopBody, registerSaves, newInstance, pArgumentsObject,
10091035
argoutRestoreAddress, row->regSlot, row->offset, true, row->isFloat, row->isInt, row->isSimd128F4,
10101036
row->isSimd128I4, row->isSimd128I8, row->isSimd128I16, row->isSimd128U4, row->isSimd128U8, row->isSimd128U16,
10111037
row->isSimd128B4, row->isSimd128B8, row->isSimd128B16);
1038+
#else
1039+
// https://github.com/Microsoft/ChakraCore/issues/3274
1040+
// Change signature of RestoreValue if WASM simd doesn't use this
1041+
RestoreValue(bailOutKind, layout, values, scriptContext, fromLoopBody, registerSaves, newInstance, pArgumentsObject,
1042+
argoutRestoreAddress, row->regSlot, row->offset, true, row->isFloat, row->isInt, false,
1043+
false, false, false, false, false, false,
1044+
false, false, false);
1045+
#endif
10121046
});
10131047
}
10141048
else
@@ -2899,6 +2933,8 @@ void GlobalBailOutRecordDataTable::AddOrUpdateRow(JitArenaAllocator *allocator,
28992933
if(rowToUpdate->offset == offset &&
29002934
rowToUpdate->isInt == (unsigned)isInt &&
29012935
rowToUpdate->isFloat == (unsigned)isFloat &&
2936+
2937+
#ifdef ENABLE_SIMDJS
29022938
// SIMD_JS
29032939
rowToUpdate->isSimd128F4 == (unsigned) isSimd128F4 &&
29042940
rowToUpdate->isSimd128I4 == (unsigned) isSimd128I4 &&
@@ -2910,6 +2946,7 @@ void GlobalBailOutRecordDataTable::AddOrUpdateRow(JitArenaAllocator *allocator,
29102946
rowToUpdate->isSimd128B4 == (unsigned) isSimd128B4 &&
29112947
rowToUpdate->isSimd128B8 == (unsigned) isSimd128B8 &&
29122948
rowToUpdate->isSimd128B16 == (unsigned) isSimd128B16 &&
2949+
#endif
29132950

29142951
rowToUpdate->end + 1 == bailOutRecordId)
29152952
{
@@ -2930,6 +2967,8 @@ void GlobalBailOutRecordDataTable::AddOrUpdateRow(JitArenaAllocator *allocator,
29302967
rowToInsert->offset = offset;
29312968
rowToInsert->isFloat = isFloat;
29322969
rowToInsert->isInt = isInt;
2970+
2971+
#ifdef ENABLE_SIMDJS
29332972
// SIMD_JS
29342973
rowToInsert->isSimd128F4 = isSimd128F4;
29352974
rowToInsert->isSimd128I4 = isSimd128I4;
@@ -2941,6 +2980,7 @@ void GlobalBailOutRecordDataTable::AddOrUpdateRow(JitArenaAllocator *allocator,
29412980
rowToInsert->isSimd128B4 = isSimd128B4 ;
29422981
rowToInsert->isSimd128B8 = isSimd128B8 ;
29432982
rowToInsert->isSimd128B16 = isSimd128B16;
2983+
#endif
29442984
rowToInsert->regSlot = regSlot;
29452985
*lastUpdatedRowIndex = length++;
29462986
}

lib/Backend/BailOut.h

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,15 @@ class BailOutInfo
2727
bailOutOffset(bailOutOffset), bailOutFunc(bailOutFunc),
2828
byteCodeUpwardExposedUsed(nullptr), polymorphicCacheIndex((uint)-1), startCallCount(0), startCallInfo(nullptr), bailOutInstr(nullptr),
2929
totalOutParamCount(0), argOutSyms(nullptr), bailOutRecord(nullptr), wasCloned(false), isInvertedBranch(false), sharedBailOutKind(true), outParamInlinedArgSlot(nullptr),
30-
liveVarSyms(nullptr), liveLosslessInt32Syms(nullptr),
31-
liveFloat64Syms(nullptr), liveSimd128F4Syms(nullptr),
30+
liveVarSyms(nullptr), liveLosslessInt32Syms(nullptr), liveFloat64Syms(nullptr),
31+
#ifdef ENABLE_SIMDJS
32+
liveSimd128F4Syms(nullptr),
3233
liveSimd128I4Syms(nullptr), liveSimd128I8Syms(nullptr), liveSimd128I16Syms(nullptr),
3334
liveSimd128U4Syms(nullptr), liveSimd128U8Syms(nullptr), liveSimd128U16Syms(nullptr),
3435
liveSimd128B4Syms(nullptr), liveSimd128B8Syms(nullptr), liveSimd128B16Syms(nullptr),
35-
liveSimd128D2Syms(nullptr), branchConditionOpnd(nullptr),
36+
liveSimd128D2Syms(nullptr),
37+
#endif
38+
branchConditionOpnd(nullptr),
3639
stackLiteralBailOutInfoCount(0), stackLiteralBailOutInfo(nullptr)
3740
{
3841
Assert(bailOutOffset != Js::Constants::NoByteCodeOffset);
@@ -101,6 +104,7 @@ class BailOutInfo
101104
BVSparse<JitArenaAllocator> * liveLosslessInt32Syms; // These are only the live int32 syms that fully represent the var-equivalent sym's value (see GlobOpt::FillBailOutInfo)
102105
BVSparse<JitArenaAllocator> * liveFloat64Syms;
103106

107+
#ifdef ENABLE_SIMDJS
104108
// SIMD_JS
105109
BVSparse<JitArenaAllocator> * liveSimd128F4Syms;
106110
BVSparse<JitArenaAllocator> * liveSimd128I4Syms;
@@ -113,6 +117,7 @@ class BailOutInfo
113117
BVSparse<JitArenaAllocator> * liveSimd128B8Syms;
114118
BVSparse<JitArenaAllocator> * liveSimd128B16Syms;
115119
BVSparse<JitArenaAllocator> * liveSimd128D2Syms;
120+
#endif
116121

117122
int * outParamOffsets;
118123

@@ -283,6 +288,7 @@ class BailOutRecord
283288
{
284289
BVFixed * argOutFloat64Syms; // Used for float-type-specialized ArgOut symbols. Index = [0 .. BailOutInfo::totalOutParamCount].
285290
BVFixed * argOutLosslessInt32Syms; // Used for int-type-specialized ArgOut symbols (which are native int and for bailout we need tagged ints).
291+
#ifdef ENABLE_SIMDJS
286292
// SIMD_JS
287293
BVFixed * argOutSimd128F4Syms;
288294
BVFixed * argOutSimd128I4Syms;
@@ -294,6 +300,7 @@ class BailOutRecord
294300
BVFixed * argOutSimd128B4Syms;
295301
BVFixed * argOutSimd128B8Syms;
296302
BVFixed * argOutSimd128B16Syms;
303+
#endif
297304
uint * startCallOutParamCounts;
298305
int * outParamOffsets;
299306
uint startCallCount;
@@ -303,6 +310,7 @@ class BailOutRecord
303310
{
304311
FixupNativeDataPointer(argOutFloat64Syms, chunkList);
305312
FixupNativeDataPointer(argOutLosslessInt32Syms, chunkList);
313+
#ifdef ENABLE_SIMDJS
306314
FixupNativeDataPointer(argOutSimd128F4Syms, chunkList);
307315
FixupNativeDataPointer(argOutSimd128I4Syms, chunkList);
308316
FixupNativeDataPointer(argOutSimd128I8Syms, chunkList);
@@ -313,6 +321,7 @@ class BailOutRecord
313321
FixupNativeDataPointer(argOutSimd128B4Syms, chunkList);
314322
FixupNativeDataPointer(argOutSimd128B8Syms, chunkList);
315323
FixupNativeDataPointer(argOutSimd128B16Syms, chunkList);
324+
#endif
316325

317326
// special handling for startCallOutParamCounts and outParamOffsets, becuase it points to middle of the allocation
318327
uint* startCallOutParamCountsStart = startCallOutParamCounts - startCallIndex;
@@ -440,6 +449,7 @@ struct GlobalBailOutRecordDataRow
440449
unsigned regSlot : 30;
441450
unsigned isFloat : 1;
442451
unsigned isInt : 1;
452+
#ifdef ENABLE_SIMDJS
443453
// SIMD_JS
444454
unsigned isSimd128F4 : 1;
445455
unsigned isSimd128I4 : 1;
@@ -451,6 +461,7 @@ struct GlobalBailOutRecordDataRow
451461
unsigned isSimd128U4 : 1;
452462
unsigned isSimd128U8 : 1;
453463
unsigned isSimd128U16 : 1;
464+
#endif
454465
};
455466

456467
struct GlobalBailOutRecordDataTable

lib/Backend/BailOutKind.h

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,11 +48,12 @@ BAIL_OUT_KIND(BailOutForGeneratorYield, 0)
4848
BAIL_OUT_KIND(BailOutOnException, 0)
4949
BAIL_OUT_KIND(BailOutOnEarlyExit, 0)
5050

51+
#ifdef ENABLE_SIMDJS
5152
// SIMD_JS
5253
BAIL_OUT_KIND(BailOutSimd128F4Only, 0)
5354
BAIL_OUT_KIND(BailOutSimd128I4Only, 0)
5455
BAIL_OUT_KIND(BailOutSimd128I8Only, 0)
55-
BAIL_OUT_KIND(BailOutSimd128I16Only, 0)
56+
BAIL_OUT_KIND(BailOutSimd128I16Only, 0)
5657
BAIL_OUT_KIND(BailOutSimd128U4Only, 0)
5758
BAIL_OUT_KIND(BailOutSimd128U8Only, 0)
5859
BAIL_OUT_KIND(BailOutSimd128U16Only, 0)
@@ -61,6 +62,7 @@ BAIL_OUT_KIND(BailOutSimd128B8Only, 0)
6162
BAIL_OUT_KIND(BailOutSimd128B16Only, 0)
6263
BAIL_OUT_KIND(BailOutSimd128D2Only, 0)
6364
BAIL_OUT_KIND(BailOutNoSimdTypeSpec, 0)
65+
#endif
6466

6567
BAIL_OUT_KIND(BailOutKindEnd, 0)
6668

lib/Backend/FlowGraph.cpp

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4575,6 +4575,7 @@ BasicBlock::MergePredBlocksValueMaps(GlobOpt* globOpt)
45754575
}
45764576
} NEXT_BITSET_IN_SPARSEBV;
45774577

4578+
#ifdef ENABLE_SIMDJS
45784579
// SIMD_JS
45794580
// Simd128 type-spec syms
45804581
BVSparse<JitArenaAllocator> tempBv2(globOpt->tempAlloc);
@@ -4642,6 +4643,8 @@ BasicBlock::MergePredBlocksValueMaps(GlobOpt* globOpt)
46424643
Assert(UNREACHED);
46434644
}
46444645
} NEXT_BITSET_IN_SPARSEBV;
4646+
#endif
4647+
46454648
tempBv->ClearAll();
46464649
}
46474650

@@ -4658,9 +4661,11 @@ BasicBlock::MergePredBlocksValueMaps(GlobOpt* globOpt)
46584661
BVSparse<JitArenaAllocator> tempBv3(globOpt->tempAlloc);
46594662
BVSparse<JitArenaAllocator> tempBv4(globOpt->tempAlloc);
46604663

4664+
#ifdef ENABLE_SIMDJS
46614665
// SIMD_JS
46624666
BVSparse<JitArenaAllocator> simd128F4SymsToUnbox(globOpt->tempAlloc);
46634667
BVSparse<JitArenaAllocator> simd128I4SymsToUnbox(globOpt->tempAlloc);
4668+
#endif
46644669

46654670
FOREACH_PREDECESSOR_EDGE_EDITING(edge, this, iter)
46664671
{
@@ -4694,17 +4699,20 @@ BasicBlock::MergePredBlocksValueMaps(GlobOpt* globOpt)
46944699

46954700
bool symIVNeedsSpecializing = (symIV && !pred->globOptData.liveInt32Syms->Test(symIV->m_id) && !tempBv3.Test(symIV->m_id));
46964701

4702+
#ifdef ENABLE_SIMDJS
46974703
// SIMD_JS
46984704
simd128F4SymsToUnbox.Minus(blockData.liveSimd128F4Syms, pred->globOptData.liveSimd128F4Syms);
46994705
simd128I4SymsToUnbox.Minus(blockData.liveSimd128I4Syms, pred->globOptData.liveSimd128I4Syms);
4700-
4706+
#endif
47014707

47024708
if (!globOpt->tempBv->IsEmpty() ||
47034709
!tempBv2.IsEmpty() ||
47044710
!tempBv3.IsEmpty() ||
47054711
!tempBv4.IsEmpty() ||
4712+
#ifdef ENABLE_SIMDJS
47064713
!simd128F4SymsToUnbox.IsEmpty() ||
47074714
!simd128I4SymsToUnbox.IsEmpty() ||
4715+
#endif
47084716
symIVNeedsSpecializing ||
47094717
symsRequiringCompensationToMergedValueInfoMap.Count() != 0)
47104718
{
@@ -4770,6 +4778,7 @@ BasicBlock::MergePredBlocksValueMaps(GlobOpt* globOpt)
47704778
globOpt->InsertValueCompensation(pred, symsRequiringCompensationToMergedValueInfoMap);
47714779
}
47724780

4781+
#ifdef ENABLE_SIMDJS
47734782
// SIMD_JS
47744783
if (!simd128F4SymsToUnbox.IsEmpty())
47754784
{
@@ -4780,6 +4789,7 @@ BasicBlock::MergePredBlocksValueMaps(GlobOpt* globOpt)
47804789
{
47814790
globOpt->ToTypeSpec(&simd128I4SymsToUnbox, pred, TySimd128I4, IR::BailOutSimd128I4Only);
47824791
}
4792+
#endif
47834793
}
47844794
} NEXT_PREDECESSOR_EDGE_EDITING;
47854795

@@ -4834,13 +4844,14 @@ BasicBlock::MergePredBlocksValueMaps(GlobOpt* globOpt)
48344844
loop->float64SymsOnEntry = JitAnew(globOpt->alloc, BVSparse<JitArenaAllocator>, globOpt->alloc);
48354845
loop->float64SymsOnEntry->Copy(this->globOptData.liveFloat64Syms);
48364846

4847+
#ifdef ENABLE_SIMDJS
48374848
// SIMD_JS
48384849
loop->simd128F4SymsOnEntry = JitAnew(globOpt->alloc, BVSparse<JitArenaAllocator>, globOpt->alloc);
48394850
loop->simd128F4SymsOnEntry->Copy(this->globOptData.liveSimd128F4Syms);
48404851

48414852
loop->simd128I4SymsOnEntry = JitAnew(globOpt->alloc, BVSparse<JitArenaAllocator>, globOpt->alloc);
48424853
loop->simd128I4SymsOnEntry->Copy(this->globOptData.liveSimd128I4Syms);
4843-
4854+
#endif
48444855

48454856
loop->liveFieldsOnEntry = JitAnew(globOpt->alloc, BVSparse<JitArenaAllocator>, globOpt->alloc);
48464857
loop->liveFieldsOnEntry->Copy(this->globOptData.liveFields);

0 commit comments

Comments
 (0)