| Index: src/x64/lithium-codegen-x64.cc
|
| diff --git a/src/x64/lithium-codegen-x64.cc b/src/x64/lithium-codegen-x64.cc
|
| index 629e11fd70f279b6e6160c29fb5ace2912b68ac0..c9f440877511b00d045c32dddcf76f6c89150ca1 100644
|
| --- a/src/x64/lithium-codegen-x64.cc
|
| +++ b/src/x64/lithium-codegen-x64.cc
|
| @@ -232,7 +232,30 @@ bool LCodeGen::GenerateBody() {
|
| }
|
|
|
| if (emit_instructions) {
|
| - Comment(";;; @%d: %s.", current_instruction_, instr->Mnemonic());
|
| + if (FLAG_code_comments) {
|
| + HValue* hydrogen = instr->hydrogen_value();
|
| + if (hydrogen != NULL) {
|
| + if (hydrogen->IsChange()) {
|
| + HValue* changed_value = HChange::cast(hydrogen)->value();
|
| + int use_id = 0;
|
| + const char* use_mnemo = "dead";
|
| + if (hydrogen->UseCount() >= 1) {
|
| + HValue* use_value = hydrogen->uses().value();
|
| + use_id = use_value->id();
|
| + use_mnemo = use_value->Mnemonic();
|
| + }
|
| + Comment(";;; @%d: %s. <of #%d %s for #%d %s>",
|
| + current_instruction_, instr->Mnemonic(),
|
| + changed_value->id(), changed_value->Mnemonic(),
|
| + use_id, use_mnemo);
|
| + } else {
|
| + Comment(";;; @%d: %s. <#%d>", current_instruction_,
|
| + instr->Mnemonic(), hydrogen->id());
|
| + }
|
| + } else {
|
| + Comment(";;; @%d: %s.", current_instruction_, instr->Mnemonic());
|
| + }
|
| + }
|
| instr->CompileToNative(this);
|
| }
|
| }
|
|
|