Mercurial > hg > graal-jvmci-8
comparison src/share/vm/adlc/output_c.cpp @ 3853:11211f7cb5a0
7079317: Incorrect branch's destination block in PrintoOptoAssembly output
Summary: save/restore label and block in scratch_emit_size()
Reviewed-by: never
author | kvn |
---|---|
date | Tue, 16 Aug 2011 11:53:57 -0700 |
parents | 3d42f82cd811 |
children | 6729bbc1fcd6 |
comparison
equal
deleted
inserted
replaced
3852:fdb992d83a87 | 3853:11211f7cb5a0 |
---|---|
3092 fprintf(fp," labelOper* oper = (labelOper*)(opnd_array(%d));\n", | 3092 fprintf(fp," labelOper* oper = (labelOper*)(opnd_array(%d));\n", |
3093 label_position ); | 3093 label_position ); |
3094 fprintf(fp," oper->_label = label;\n"); | 3094 fprintf(fp," oper->_label = label;\n"); |
3095 fprintf(fp," oper->_block_num = block_num;\n"); | 3095 fprintf(fp," oper->_block_num = block_num;\n"); |
3096 fprintf(fp,"}\n"); | 3096 fprintf(fp,"}\n"); |
3097 // Save the label | |
3098 fprintf(fp,"void %sNode::save_label( Label** label, uint* block_num ) {\n", instr->_ident); | |
3099 fprintf(fp," labelOper* oper = (labelOper*)(opnd_array(%d));\n", | |
3100 label_position ); | |
3101 fprintf(fp," *label = oper->_label;\n"); | |
3102 fprintf(fp," *block_num = oper->_block_num;\n"); | |
3103 fprintf(fp,"}\n"); | |
3097 } | 3104 } |
3098 } | 3105 } |
3099 | 3106 |
3100 // Output the definitions for methods | 3107 // Output the definitions for methods |
3101 _instructions.reset(); | 3108 _instructions.reset(); |