Closed Bug 1468749 Opened 2 years ago Closed 2 years ago

TypeOfIRGenerator doesn't participate in CacheIR logs


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




Tracking Status
firefox-esr60 --- unaffected
firefox62 --- wontfix
firefox64 --- wontfix
firefox65 --- wontfix
firefox66 --- fixed


(Reporter: mgaudet, Assigned: shivambalikondwar, Mentored)


(Keywords: good-first-bug, Whiteboard: [lang=c++])


(1 file, 2 obsolete files)

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

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; 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: (see the section on NickServ).
Attached 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
trackAttached method added for TypeOfIrGenerator in CacheIR.cpp r=tcampbell
Assignee: nobody → shivambalikondwar
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla66
You need to log in before you can comment on or make changes to this bug.