Closed Bug 685372 Opened 10 years ago Closed 10 years ago

type inference changes GC edge names; findReferences tests need to be updated

Categories

(Core :: JavaScript Engine, defect)

x86_64
Linux
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla9

People

(Reporter: jimb, Unassigned)

Details

Attachments

(1 file)

Some tests have been failing since TI landed:

    js1_8_5/extensions/findReferences-01.js
    js1_8_5/extensions/findReferences-02.js

These are tests based on the new 'findReferences' function I added to the shell, which tests can use to directly check whether a given GC edge from one object to another is present in the heap. The edges' names reveal implementation details; I don't know how to avoid this without forcing tests to engage in even more implementation-sensitive behavior like counting the number of live heap objects, or hoping weak references turn null at a given point.

This means that the findReferences tests will tend to fail as the internal structure of the heap graph changes --- as with TI's prototype -> type change. The tests print messages like this when they fail:

  referent is not referenced via: "edge: type_proto"
  but it is referenced via:       ["edge: type; type_proto"]

to make updating the tests easier.
Attachment #559004 - Flags: review?(cdleary)
Attachment #559004 - Flags: review?(cdleary) → review+
... I could have sworn I'd landed this. Thanks!
(In reply to Jason Orendorff [:jorendorff] from comment #1)
> http://hg.mozilla.org/integration/mozilla-inbound/rev/70dc8862965e

and now on m-c
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Whiteboard: [inbound]
Target Milestone: --- → mozilla9
You need to log in before you can comment on or make changes to this bug.