Closed Bug 1375504 Opened 7 years ago Closed 6 years ago

Add some asserts to CacheIR code

Categories

(Core :: JavaScript Engine: JIT, enhancement, P3)

enhancement

Tracking

()

RESOLVED FIXED
mozilla62
Tracking Status
firefox62 --- fixed

People

(Reporter: jandem, Assigned: jandem)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

There are some invariants we could easily assert.
Flags: needinfo?(jdemooij)
Priority: -- → P3
Attached patch PatchSplinter Review
Just to get this (finally) out of my needinfo queue, here's a patch that asserts: * Instructions don't allocate registers after we call addFailurePath. * Instructions don't call addFailurePath more than once. * Different operands never have aliasing registers or stack slots.
Assignee: nobody → jdemooij
Status: NEW → ASSIGNED
Flags: needinfo?(jdemooij)
Attachment #8975409 - Flags: review?(tcampbell)
Comment on attachment 8975409 [details] [diff] [review] Patch Review of attachment 8975409 [details] [diff] [review]: ----------------------------------------------------------------- Thanks. ::: js/src/jit/CacheIRCompiler.h @@ +305,5 @@ > // The number of bytes pushed on the native stack. > uint32_t stackPushed_; > > +#ifdef DEBUG > + // Flag used to assert instructions don't allocate registers after calling > .. assert individual CacheIR instructions .. I was initially unclear on the scope of this check.
Attachment #8975409 - Flags: review?(tcampbell) → review+
Pushed by jandemooij@gmail.com: https://hg.mozilla.org/integration/mozilla-inbound/rev/b8a9fd5984cc Add some asserts to the CacheIR code. r=tcampbell
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla62
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: