summaryrefslogtreecommitdiff
path: root/insns.def
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2016-04-05 08:15:22 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2016-04-05 08:15:22 +0000
commita491508753ce9d5a47ea6738f49b028270010e08 (patch)
tree08d7d188ff00998a8fb3a0854792d28f9b3efeda /insns.def
parenteee2769c0d99cc08928813786d46365b013916fd (diff)
string.c: rb_str_concat_literals
* string.c (rb_str_concat_literals): concatenate literal string fragments. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54490 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'insns.def')
-rw-r--r--insns.def8
1 files changed, 1 insertions, 7 deletions
diff --git a/insns.def b/insns.def
index 53f9bc0c16..65410e1451 100644
--- a/insns.def
+++ b/insns.def
@@ -365,13 +365,7 @@ concatstrings
(...)
(VALUE val) // inc += 1 - num;
{
- rb_num_t i = num - 1;
-
- val = rb_str_resurrect(TOPN(i));
- while (i-- > 0) {
- const VALUE v = TOPN(i);
- rb_str_append_literal(val, v);
- }
+ val = rb_str_concat_literals(num, &TOPN(num-1));
POPN(num);
}