Closed Bug 1743975 Opened 2 years ago Closed 2 years ago

TransitiveCompileOptions.{borrowBuffer,usePinnedBytecode} aren't copied by copyPODTransitiveOptions

Categories

(Core :: JavaScript Engine, defect, P1)

defect

Tracking

()

RESOLVED FIXED
96 Branch
Tracking Status
firefox96 --- fixed

People

(Reporter: arai, Assigned: arai)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

POD fields must be explicitly copied in TransitiveCompileOptions::copyPODTransitiveOptions, but TransitiveCompileOptions.{borrowBuffer,usePinnedBytecode} aren't handled here.

https://searchfox.org/mozilla-central/rev/3d03a3ca09f03f06ef46a511446537563f62a0c6/js/src/jsapi.cpp#2284-2308

void JS::TransitiveCompileOptions::copyPODTransitiveOptions(
    const TransitiveCompileOptions& rhs) {
  mutedErrors_ = rhs.mutedErrors_;
  forceFullParse_ = rhs.forceFullParse_;
  forceStrictMode_ = rhs.forceStrictMode_;
  skipFilenameValidation_ = rhs.skipFilenameValidation_;
  sourcePragmas_ = rhs.sourcePragmas_;
  selfHostingMode = rhs.selfHostingMode;
  asmJSOption = rhs.asmJSOption;
  throwOnAsmJSValidationFailureOption = rhs.throwOnAsmJSValidationFailureOption;
  forceAsync = rhs.forceAsync;
  discardSource = rhs.discardSource;
  sourceIsLazy = rhs.sourceIsLazy;
  introductionType = rhs.introductionType;
  introductionLineno = rhs.introductionLineno;
  introductionOffset = rhs.introductionOffset;
  hasIntroductionInfo = rhs.hasIntroductionInfo;
  hideScriptFromDebugger_ = rhs.hideScriptFromDebugger_;
  deferDebugMetadata_ = rhs.deferDebugMetadata_;
  nonSyntacticScope = rhs.nonSyntacticScope;
  privateClassFields = rhs.privateClassFields;
  privateClassMethods = rhs.privateClassMethods;
  classStaticBlocks = rhs.classStaticBlocks;
  useFdlibmForSinCosTan = rhs.useFdlibmForSinCosTan;
};

it results in those fields aren't reflected to off-thread task, and we're not using pinned-bytecode for them.

Pushed by arai_a@mac.com:
https://hg.mozilla.org/integration/autoland/rev/a52ea6cdb79a
Copy all POD fields in TransitiveCompileOptions::copyPODTransitiveOptions. r=tcampbell
Status: ASSIGNED → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → 96 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: