TypeOfIRGenerator doesn't participate in CacheIR logs

RESOLVED FIXED in Firefox 66



Last year
7 months ago


(Reporter: mgaudet, Assigned: shivambalikondwar, Mentored)




Firefox Tracking Flags

(firefox-esr60 unaffected, firefox62 wontfix, firefox64 wontfix, firefox65 wontfix, firefox66 fixed)


(Whiteboard: [lang=c++])


(1 attachment, 2 obsolete attachments)

Unlike most of the IR Generators in js/src/jit/CacheIR.cpp, TypeOfIRGenerator appears not to participate in the logging provided by running with a debug build and CACHEIR_LOGS=1 


* Add a trackAttached method to TypeOfIRGenerator that reports its const char* argument to the cacheIR spewer, along with the value of val_, which is what the IR generator is using to make its attachment decisions. This can be modeled on other CacheIR trackAttached methods. 
* Add calls to the newly added trackAttached to name the caches that successfully attach. 
* Verify that the logging works by doing a debug build of spidermonkey, and running a test case with the environment variable CACHEIR_LOGS=1, and checking /tmp/cacheir_logs.* for output from TypeOfIRGenerator.
Whiteboard: [lang=c++]
I'm very new to this.
Would anyone help me in picking up the bug
Hi Gowry; first step would be to make sure you can build Spidermonkey [1], then you can follow the tasks above. 

One very useful tool to find code is https://searchfox.org

[1]: https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey/Build_Documentation
i have the changes ready but i want to test it, can you specify how to do it 
i have a build of mozilla-central ready
thanks :)
also who all are the reviewers i will add them in phabricator
Hey, you can add me as a reviewer. 

As far as testing, I usually find a test case by putting MOS_CRASH(“hit”) just before the code I changed, building, and running the JIT tests (at my phone right now so can’t give exact invocation. Set the needinfo flag to me if you need more help. 

After you find a test case, run with the environment variable CACHEIR_LOGS=$PWD/logs. This will produce a log file in the current directory where you can look for your Newley added output.
what is the irc for cpp developers/contributors ?
i want to discuss on the bug
You can find the people you'd need for this bug on #jsapi (on irc.mozilla.org); for more general questions about Mozilla C++ development, try #developers (or potentially #introduction).
you just went i can't find the jsapi irc on mibbit 
is it suspended ?
It is not, however, it is (gently) hidden due to IRC spam problems. You'll need to register your IRC nickname in order to join #jsapi: https://developer.mozilla.org/en-US/docs/Mozilla/QA/Getting_Started_with_IRC (see the section on NickServ).
Posted file Bug 1468749 - cacheir isn't builded (obsolete) —
Attachment #9028059 - Attachment is obsolete: true
Attachment #9025003 - Attachment is obsolete: true
I added the trackAttached method in the
  CacheIr.cpp file
  Please review that it logs correctly
Attachment #9029727 - Attachment description: Bug 1468749 trackAtteched method added for TypeOfIrGenerator in CacheIR.cpp → Bug 1468749 trackAttached method added for TypeOfIrGenerator in CacheIR.cpp
Pushed by tcampbell@mozilla.com:
trackAttached method added for TypeOfIrGenerator in CacheIR.cpp r=tcampbell
Assignee: nobody → shivambalikondwar
Closed: 7 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla66
You need to log in before you can comment on or make changes to this bug.