Peter Zhu
98fb0ab60e
Enable Variable Width Allocation by default
2022-01-12 12:00:55 -05:00
Peter Zhu
33cc8816be
Revert "Enable Variable Width Allocation by default"
...
This reverts commit c365c5921e
.
2022-01-08 15:07:57 -05:00
Peter Zhu
c365c5921e
Enable Variable Width Allocation by default
2022-01-07 13:27:13 -05:00
Peter Zhu
aeb344e65c
Revert "Enable Variable Width Allocation by default"
...
This reverts commit d4a95428bb
.
2022-01-06 16:47:49 -05:00
Peter Zhu
d4a95428bb
Enable Variable Width Allocation by default
2022-01-06 14:33:35 -05:00
Peter Zhu
a5b6598192
[Feature #18239 ] Implement VWA for strings
...
This commit adds support for embedded strings with variable capacity and
uses Variable Width Allocation to allocate strings.
2021-10-25 13:26:23 -04:00
卜部昌平
924d78f87d
include/ruby/internal/config.h: skip doxygen
...
It is definitely desirable to document them, but we need more human
resources. Tentatively disable documenting them. [ci skip]
2021-09-10 20:00:06 +09:00
卜部昌平
94e5953b48
sed -i 's/. They/. They/'
...
Truly editorial fix for comments. This works better with Emacs'
set-justification-full function. [ci skip]
2021-09-10 20:00:06 +09:00
Nobuyoshi Nakada
605421f4eb
gcc 10.3.0 says "__VA_OPT__ is not available until C++2a"
2021-08-01 09:54:36 +09:00
Nobuyoshi Nakada
21c5726418
Omit checks for C89 standard or later
...
Now we require C99, these features available of course.
* prototypes
* stdarg prototypes
* token pasting
* stringization
* string literal concatenation
2020-12-12 17:02:42 +09:00
Kazuhiro NISHIYAMA
c2011d1a51
Fix a typo [ci skip]
2020-08-29 12:31:05 +09:00
卜部昌平
8b022da518
HAVE_STMT_AND_DECL_IN_EXPR: not for Sun C++
...
Because we check HAVE_STMT_AND_DECL_IN_EXPR in configure, it is peoven
to work in C. But C++ situation can be different. Oracle Developer
Studio is another example of such things.
2020-08-21 11:04:54 +09:00
AGSaidi
511b55bcef
Enable arm64 optimizations that exist for power/x86 ( #3393 )
...
* Enable unaligned accesses on arm64
64-bit Arm platforms support unaligned accesses.
Running the string benchmarks this change improves performance
by an average of 1.04x, min .96x, max 1.21x, median 1.01x
* arm64 enable gc optimizations
Similar to x86 and powerpc optimizations.
| |compare-ruby|built-ruby|
|:------|-----------:|---------:|
|hash1 | 0.225| 0.237|
| | -| 1.05x|
|hash2 | 0.110| 0.110|
| | 1.00x| -|
* vm_exec.c: improve performance for arm64
| |compare-ruby|built-ruby|
|:------------------------------|-----------:|---------:|
|vm_array | 26.501M| 27.959M|
| | -| 1.06x|
|vm_attr_ivar | 21.606M| 31.429M|
| | -| 1.45x|
|vm_attr_ivar_set | 21.178M| 26.113M|
| | -| 1.23x|
|vm_backtrace | 6.621| 6.668|
| | -| 1.01x|
|vm_bigarray | 26.205M| 29.958M|
| | -| 1.14x|
|vm_bighash | 504.155k| 479.306k|
| | 1.05x| -|
|vm_block | 16.692M| 21.315M|
| | -| 1.28x|
|block_handler_type_iseq | 5.083| 7.004|
| | -| 1.38x|
2020-08-14 02:15:54 +09:00
卜部昌平
9e41a75255
sed -i 's|ruby/impl|ruby/internal|'
...
To fix build failures.
2020-05-11 09:24:08 +09:00
卜部昌平
b85fd1d690
mv include/ruby/{impl,internal}
...
Devs do not love "impl".
2020-05-11 09:24:08 +09:00