< prev index next >
src/share/vm/adlc/dfa.cpp
Print this page
rev 11179 : 8140594: Various minor code improvements (compiler)
Reviewed-by: thartmann
@@ -714,44 +714,39 @@
const char *Expr::compute_external(const Expr *c1, const Expr *c2) {
const char * result = NULL;
// Preserve use of external name which has a zero value
- if( c1->_external_name != NULL ) {
- sprintf( string_buffer, "%s", c1->as_string());
- if( !c2->is_zero() ) {
- strcat( string_buffer, "+");
- strcat( string_buffer, c2->as_string());
+ if (c1->_external_name != NULL) {
+ if (c2->is_zero()) {
+ snprintf(string_buffer, STRING_BUFFER_LENGTH, "%s", c1->as_string());
+ } else {
+ snprintf(string_buffer, STRING_BUFFER_LENGTH, "%s + %s", c1->as_string(), c2->as_string());
}
result = strdup(string_buffer);
- }
- else if( c2->_external_name != NULL ) {
- if( !c1->is_zero() ) {
- sprintf( string_buffer, "%s", c1->as_string());
- strcat( string_buffer, " + ");
+ } else if (c2->_external_name != NULL) {
+ if (!c1->is_zero()) {
+ snprintf(string_buffer, STRING_BUFFER_LENGTH, "%s + %s", c1->as_string(), c2->_external_name);
} else {
- string_buffer[0] = '\0';
+ snprintf(string_buffer, STRING_BUFFER_LENGTH, "%s", c2->_external_name);
}
- strcat( string_buffer, c2->_external_name );
result = strdup(string_buffer);
}
return result;
}
const char *Expr::compute_expr(const Expr *c1, const Expr *c2) {
- if( !c1->is_zero() ) {
- sprintf( string_buffer, "%s", c1->_expr);
- if( !c2->is_zero() ) {
- strcat( string_buffer, "+");
- strcat( string_buffer, c2->_expr);
- }
- }
- else if( !c2->is_zero() ) {
- sprintf( string_buffer, "%s", c2->_expr);
+ if (!c1->is_zero()) {
+ if (c2->is_zero()) {
+ snprintf(string_buffer, STRING_BUFFER_LENGTH, "%s", c1->_expr);
+ } else {
+ snprintf(string_buffer, STRING_BUFFER_LENGTH, "%s + %s", c1->_expr, c2->_expr);
}
- else {
- sprintf( string_buffer, "0");
+ } else if (!c2->is_zero()) {
+ sprintf(string_buffer, "%s", c2->_expr);
+ } else {
+ sprintf(string_buffer, "0");
}
char *cost = strdup(string_buffer);
return cost;
}
< prev index next >