datadog-ruby_core_source 3.3.6 → 3.3.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (374) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.datadog.md +7 -1
  3. data/datadog-ruby_core_source.gemspec +6 -1
  4. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/id.h +7 -0
  5. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/array.h +1 -0
  6. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/basic_operators.h +2 -0
  7. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/bits.h +82 -0
  8. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/class.h +1 -1
  9. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/encoding.h +2 -0
  10. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/error.h +2 -0
  11. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/fixnum.h +1 -0
  12. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/gc.h +23 -28
  13. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/hash.h +1 -0
  14. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/imemo.h +7 -1
  15. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/io.h +4 -1
  16. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/parse.h +14 -2
  17. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/ractor.h +4 -0
  18. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/sanitizers.h +36 -3
  19. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/string.h +34 -18
  20. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/thread.h +29 -0
  21. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/vm.h +3 -3
  22. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/method.h +1 -0
  23. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/ast.h +2146 -453
  24. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/defines.h +44 -7
  25. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/diagnostic.h +24 -6
  26. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/extension.h +2 -2
  27. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/node.h +0 -21
  28. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/options.h +94 -3
  29. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/parser.h +82 -40
  30. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/prism.h +47 -11
  31. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/prism/regexp.h +43 -0
  32. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/static_literals.h +3 -2
  33. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/util/pm_char.h +1 -2
  34. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/util/pm_constant_pool.h +0 -8
  35. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/util/pm_integer.h +22 -15
  36. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/util/pm_newline_list.h +11 -0
  37. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/util/pm_string.h +28 -12
  38. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/version.h +3 -3
  39. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism_compile.h +23 -12
  40. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/ractor_core.h +8 -20
  41. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/rubyparser.h +168 -249
  42. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/shape.h +2 -1
  43. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/thread_pthread.h +26 -25
  44. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/vm_core.h +62 -48
  45. data/lib/datadog/ruby_core_source/version.rb +1 -1
  46. data/lib/datadog/ruby_core_source.rb +14 -1
  47. metadata +109 -372
  48. data/.github/workflows/publish.yml +0 -18
  49. data/.gitignore +0 -7
  50. data/.idea/vcs.xml +0 -28
  51. data/CHANGELOG.md +0 -284
  52. data/CONTRIBUTING.md +0 -2
  53. data/Gemfile +0 -4
  54. data/Rakefile +0 -73
  55. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/addr2line.h +0 -21
  56. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/constant.h +0 -50
  57. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/debug_counter.h +0 -109
  58. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/dln.h +0 -51
  59. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/encindex.h +0 -69
  60. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/eval_intern.h +0 -334
  61. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/gc.h +0 -116
  62. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/id_table.h +0 -31
  63. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/insns.inc +0 -217
  64. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/insns_info.inc +0 -1570
  65. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/known_errors.inc +0 -746
  66. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/node_name.inc +0 -198
  67. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/opt_sc.inc +0 -1601
  68. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/optinsn.inc +0 -103
  69. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/optunifs.inc +0 -61
  70. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/parse.h +0 -206
  71. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/probes_helper.h +0 -43
  72. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/regenc.h +0 -254
  73. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/regint.h +0 -938
  74. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/regparse.h +0 -370
  75. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/revision.h +0 -1
  76. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/siphash.h +0 -48
  77. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/symbol.h +0 -108
  78. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/thread_win32.h +0 -36
  79. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/timev.h +0 -42
  80. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/transcode_data.h +0 -139
  81. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/version.h +0 -73
  82. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/vm.inc +0 -3667
  83. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/vm_call_iseq_optimized.inc +0 -213
  84. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/vm_exec.h +0 -192
  85. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/vm_insnhelper.h +0 -255
  86. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/vmtc.inc +0 -214
  87. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/addr2line.h +0 -21
  88. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/constant.h +0 -51
  89. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/debug_counter.h +0 -109
  90. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/dln.h +0 -51
  91. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/encindex.h +0 -69
  92. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/eval_intern.h +0 -334
  93. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/gc.h +0 -116
  94. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/id_table.h +0 -31
  95. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/insns.inc +0 -217
  96. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/insns_info.inc +0 -1570
  97. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/known_errors.inc +0 -746
  98. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/node_name.inc +0 -198
  99. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/opt_sc.inc +0 -1601
  100. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/optinsn.inc +0 -103
  101. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/optunifs.inc +0 -61
  102. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/parse.h +0 -206
  103. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/probes_helper.h +0 -43
  104. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/regenc.h +0 -254
  105. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/regint.h +0 -938
  106. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/regparse.h +0 -370
  107. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/revision.h +0 -1
  108. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/siphash.h +0 -48
  109. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/symbol.h +0 -108
  110. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/thread_win32.h +0 -36
  111. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/timev.h +0 -42
  112. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/transcode_data.h +0 -139
  113. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/version.h +0 -73
  114. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/vm.inc +0 -3667
  115. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/vm_call_iseq_optimized.inc +0 -213
  116. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/vm_exec.h +0 -192
  117. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/vm_insnhelper.h +0 -255
  118. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/vmtc.inc +0 -214
  119. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/addr2line.h +0 -21
  120. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/constant.h +0 -51
  121. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/debug_counter.h +0 -109
  122. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/dln.h +0 -51
  123. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/encindex.h +0 -69
  124. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/eval_intern.h +0 -334
  125. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/gc.h +0 -116
  126. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/id_table.h +0 -31
  127. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/insns.inc +0 -217
  128. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/insns_info.inc +0 -1570
  129. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/known_errors.inc +0 -746
  130. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/node_name.inc +0 -198
  131. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/opt_sc.inc +0 -1601
  132. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/optinsn.inc +0 -103
  133. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/optunifs.inc +0 -61
  134. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/parse.h +0 -200
  135. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/probes_helper.h +0 -43
  136. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/regenc.h +0 -254
  137. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/regint.h +0 -938
  138. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/regparse.h +0 -370
  139. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/revision.h +0 -1
  140. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/siphash.h +0 -48
  141. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/symbol.h +0 -108
  142. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/thread_win32.h +0 -36
  143. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/timev.h +0 -42
  144. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/transcode_data.h +0 -139
  145. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/version.h +0 -73
  146. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/vm.inc +0 -3667
  147. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/vm_call_iseq_optimized.inc +0 -213
  148. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/vm_exec.h +0 -192
  149. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/vm_insnhelper.h +0 -255
  150. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/vmtc.inc +0 -214
  151. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/addr2line.h +0 -22
  152. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/builtin.h +0 -117
  153. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/constant.h +0 -53
  154. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/darray.h +0 -246
  155. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/debug_counter.h +0 -423
  156. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/dln.h +0 -32
  157. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/encindex.h +0 -70
  158. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/eval_intern.h +0 -343
  159. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/hrtime.h +0 -227
  160. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/insns.inc +0 -251
  161. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/insns_info.inc +0 -9215
  162. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/known_errors.inc +0 -791
  163. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/node_name.inc +0 -212
  164. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/optinsn.inc +0 -128
  165. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/optunifs.inc +0 -43
  166. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/parse.h +0 -243
  167. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/parser_bits.h +0 -564
  168. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/parser_node.h +0 -32
  169. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/probes_helper.h +0 -42
  170. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/regenc.h +0 -254
  171. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/regint.h +0 -1004
  172. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/regparse.h +0 -371
  173. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/revision.h +0 -5
  174. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/rjit.h +0 -101
  175. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/rjit_c.h +0 -164
  176. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/siphash.h +0 -48
  177. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/symbol.h +0 -118
  178. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/thread_win32.h +0 -58
  179. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/timev.h +0 -58
  180. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/transcode_data.h +0 -138
  181. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/variable.h +0 -39
  182. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/version.h +0 -69
  183. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm.inc +0 -5436
  184. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_call_iseq_optimized.inc +0 -244
  185. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_callinfo.h +0 -619
  186. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_exec.h +0 -199
  187. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_insnhelper.h +0 -261
  188. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_sync.h +0 -137
  189. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vmtc.inc +0 -245
  190. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/yjit.h +0 -72
  191. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/addr2line.h +0 -22
  192. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/builtin.h +0 -117
  193. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/constant.h +0 -53
  194. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/darray.h +0 -246
  195. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/debug_counter.h +0 -423
  196. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/dln.h +0 -32
  197. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/encindex.h +0 -70
  198. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/eval_intern.h +0 -343
  199. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/hrtime.h +0 -227
  200. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/insns.inc +0 -251
  201. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/insns_info.inc +0 -9215
  202. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/known_errors.inc +0 -791
  203. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/node_name.inc +0 -212
  204. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/optinsn.inc +0 -128
  205. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/optunifs.inc +0 -43
  206. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/parse.h +0 -243
  207. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/parser_bits.h +0 -564
  208. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/parser_node.h +0 -32
  209. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/probes_helper.h +0 -42
  210. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/regenc.h +0 -254
  211. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/regint.h +0 -1006
  212. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/regparse.h +0 -371
  213. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/revision.h +0 -5
  214. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/rjit.h +0 -101
  215. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/rjit_c.h +0 -164
  216. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/siphash.h +0 -48
  217. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/symbol.h +0 -118
  218. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/thread_win32.h +0 -58
  219. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/timev.h +0 -58
  220. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/transcode_data.h +0 -138
  221. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/variable.h +0 -39
  222. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/version.h +0 -69
  223. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm.inc +0 -5436
  224. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_call_iseq_optimized.inc +0 -244
  225. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_callinfo.h +0 -614
  226. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_exec.h +0 -199
  227. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_insnhelper.h +0 -261
  228. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_sync.h +0 -137
  229. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vmtc.inc +0 -245
  230. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/yjit.h +0 -72
  231. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/addr2line.h +0 -22
  232. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/builtin.h +0 -119
  233. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/constant.h +0 -53
  234. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/darray.h +0 -191
  235. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/debug_counter.h +0 -423
  236. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/dln.h +0 -34
  237. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/encindex.h +0 -70
  238. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/eval_intern.h +0 -324
  239. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/hrtime.h +0 -237
  240. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/insns.inc +0 -259
  241. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/insns_info.inc +0 -9530
  242. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/known_errors.inc +0 -1419
  243. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/node_name.inc +0 -224
  244. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/optinsn.inc +0 -128
  245. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/optunifs.inc +0 -43
  246. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/parse.h +0 -243
  247. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/parser_bits.h +0 -564
  248. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/parser_node.h +0 -32
  249. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/regexp.h +0 -33
  250. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_string_list.h +0 -44
  251. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/probes_helper.h +0 -42
  252. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/regenc.h +0 -254
  253. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/regint.h +0 -1010
  254. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/regparse.h +0 -371
  255. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/revision.h +0 -5
  256. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/rjit.h +0 -101
  257. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/rjit_c.h +0 -165
  258. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/siphash.h +0 -48
  259. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/symbol.h +0 -118
  260. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/thread_win32.h +0 -58
  261. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/timev.h +0 -58
  262. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/transcode_data.h +0 -138
  263. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/variable.h +0 -39
  264. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/version.h +0 -69
  265. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm.inc +0 -5643
  266. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_call_iseq_optimized.inc +0 -244
  267. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_callinfo.h +0 -605
  268. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_exec.h +0 -199
  269. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_insnhelper.h +0 -272
  270. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_sync.h +0 -137
  271. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vmtc.inc +0 -253
  272. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/yjit.h +0 -79
  273. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/addr2line.h +0 -22
  274. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/builtin.h +0 -119
  275. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/constant.h +0 -53
  276. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/darray.h +0 -209
  277. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/debug_counter.h +0 -423
  278. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/dln.h +0 -32
  279. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/encindex.h +0 -70
  280. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/eval_intern.h +0 -324
  281. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/hrtime.h +0 -237
  282. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/insns.inc +0 -265
  283. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/insns_info.inc +0 -9902
  284. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/known_errors.inc +0 -1419
  285. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/node_name.inc +0 -224
  286. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/optinsn.inc +0 -128
  287. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/optunifs.inc +0 -43
  288. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/parse.h +0 -244
  289. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/parser_bits.h +0 -564
  290. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/parser_node.h +0 -32
  291. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/probes_helper.h +0 -42
  292. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/regenc.h +0 -254
  293. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/regint.h +0 -1006
  294. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/regparse.h +0 -371
  295. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/revision.h +0 -5
  296. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/rjit.h +0 -101
  297. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/rjit_c.h +0 -165
  298. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/siphash.h +0 -48
  299. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/symbol.h +0 -123
  300. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/thread_win32.h +0 -58
  301. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/timev.h +0 -58
  302. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/transcode_data.h +0 -138
  303. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/variable.h +0 -39
  304. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/version.h +0 -69
  305. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm.inc +0 -5840
  306. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_call_iseq_optimized.inc +0 -244
  307. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_callinfo.h +0 -627
  308. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_exec.h +0 -199
  309. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_insnhelper.h +0 -277
  310. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_sync.h +0 -137
  311. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vmtc.inc +0 -259
  312. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/yjit.h +0 -79
  313. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/ccan/build_assert/build_assert.h +0 -0
  314. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/ccan/check_type/check_type.h +0 -0
  315. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/ccan/container_of/container_of.h +0 -0
  316. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/ccan/list/list.h +0 -0
  317. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/ccan/str/str.h +0 -0
  318. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/id_table.h +0 -0
  319. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/bignum.h +0 -0
  320. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/cmdlineopt.h +0 -0
  321. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/compar.h +0 -0
  322. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/compile.h +0 -0
  323. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/compilers.h +0 -0
  324. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/complex.h +0 -0
  325. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/cont.h +0 -0
  326. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/dir.h +0 -0
  327. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/enc.h +0 -0
  328. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/enum.h +0 -0
  329. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/enumerator.h +0 -0
  330. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/eval.h +0 -0
  331. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/file.h +0 -0
  332. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/inits.h +0 -0
  333. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/load.h +0 -0
  334. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/loadpath.h +0 -0
  335. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/math.h +0 -0
  336. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/missing.h +0 -0
  337. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/numeric.h +0 -0
  338. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/object.h +0 -0
  339. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/proc.h +0 -0
  340. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/process.h +0 -0
  341. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/random.h +0 -0
  342. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/range.h +0 -0
  343. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/rational.h +0 -0
  344. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/re.h +0 -0
  345. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/ruby_parser.h +0 -0
  346. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/serial.h +0 -0
  347. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/signal.h +0 -0
  348. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/st.h +0 -0
  349. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/static_assert.h +0 -0
  350. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/struct.h +0 -0
  351. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/symbol.h +0 -0
  352. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/time.h +0 -0
  353. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/transcode.h +0 -0
  354. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/util.h +0 -0
  355. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/variable.h +0 -0
  356. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/warnings.h +0 -0
  357. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal.h +0 -0
  358. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/iseq.h +0 -0
  359. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/node.h +0 -0
  360. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/parser_st.h +0 -0
  361. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/parser_value.h +0 -0
  362. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/encoding.h +0 -0
  363. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/pack.h +0 -0
  364. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/prettyprint.h +0 -0
  365. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/util/pm_buffer.h +0 -0
  366. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/util/pm_list.h +0 -0
  367. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/util/pm_memchr.h +0 -0
  368. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/util/pm_strncasecmp.h +0 -0
  369. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/util/pm_strpbrk.h +0 -0
  370. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/ruby_assert.h +0 -0
  371. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/ruby_atomic.h +0 -0
  372. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/thread_none.h +0 -0
  373. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/vm_debug.h +0 -0
  374. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/vm_opts.h +0 -0
@@ -1,343 +0,0 @@
1
- #ifndef RUBY_EVAL_INTERN_H
2
- #define RUBY_EVAL_INTERN_H
3
-
4
- #include "ruby/ruby.h"
5
- #include "vm_core.h"
6
-
7
- static inline void
8
- vm_passed_block_handler_set(rb_execution_context_t *ec, VALUE block_handler)
9
- {
10
- vm_block_handler_verify(block_handler);
11
- ec->passed_block_handler = block_handler;
12
- }
13
-
14
- static inline void
15
- pass_passed_block_handler(rb_execution_context_t *ec)
16
- {
17
- VALUE block_handler = rb_vm_frame_block_handler(ec->cfp);
18
- vm_passed_block_handler_set(ec, block_handler);
19
- VM_ENV_FLAGS_SET(ec->cfp->ep, VM_FRAME_FLAG_PASSED);
20
- }
21
-
22
- #define PASS_PASSED_BLOCK_HANDLER_EC(ec) pass_passed_block_handler(ec)
23
- #define PASS_PASSED_BLOCK_HANDLER() pass_passed_block_handler(GET_EC())
24
-
25
- #ifdef HAVE_STDLIB_H
26
- #include <stdlib.h>
27
- #endif
28
- #ifndef EXIT_SUCCESS
29
- #define EXIT_SUCCESS 0
30
- #endif
31
- #ifndef EXIT_FAILURE
32
- #define EXIT_FAILURE 1
33
- #endif
34
-
35
- #include <stdio.h>
36
- #if defined(__wasm__) && !defined(__EMSCRIPTEN__)
37
- # include "wasm/setjmp.h"
38
- #else
39
- # include <setjmp.h>
40
- #endif
41
-
42
- #ifdef __APPLE__
43
- # ifdef HAVE_CRT_EXTERNS_H
44
- # include <crt_externs.h>
45
- # else
46
- # include "missing/crt_externs.h"
47
- # endif
48
- #endif
49
-
50
- #ifndef HAVE_STRING_H
51
- char *strrchr(const char *, const char);
52
- #endif
53
-
54
- #ifdef HAVE_UNISTD_H
55
- #include <unistd.h>
56
- #endif
57
-
58
- #ifdef HAVE_NET_SOCKET_H
59
- #include <net/socket.h>
60
- #endif
61
-
62
- #define ruby_setjmp(env) RUBY_SETJMP(env)
63
- #define ruby_longjmp(env,val) RUBY_LONGJMP((env),(val))
64
- #ifdef __CYGWIN__
65
- # ifndef _setjmp
66
- int _setjmp(jmp_buf);
67
- # endif
68
- # ifndef _longjmp
69
- NORETURN(void _longjmp(jmp_buf, int));
70
- # endif
71
- #endif
72
-
73
- #include <sys/types.h>
74
- #include <signal.h>
75
- #include <errno.h>
76
-
77
- #ifdef HAVE_SYS_SELECT_H
78
- #include <sys/select.h>
79
- #endif
80
-
81
- /*
82
- Solaris sys/select.h switches select to select_large_fdset to support larger
83
- file descriptors if FD_SETSIZE is larger than 1024 on 32bit environment.
84
- But Ruby doesn't change FD_SETSIZE because fd_set is allocated dynamically.
85
- So following definition is required to use select_large_fdset.
86
- */
87
- #ifdef HAVE_SELECT_LARGE_FDSET
88
- #define select(n, r, w, e, t) select_large_fdset((n), (r), (w), (e), (t))
89
- extern int select_large_fdset(int, fd_set *, fd_set *, fd_set *, struct timeval *);
90
- #endif
91
-
92
- #ifdef HAVE_SYS_PARAM_H
93
- #include <sys/param.h>
94
- #endif
95
-
96
- #include <sys/stat.h>
97
-
98
-
99
- #define SAVE_ROOT_JMPBUF(th, stmt) do \
100
- if (true) { \
101
- stmt; \
102
- } \
103
- else if (th) { /* suppress unused-variable warning */ \
104
- } while (0)
105
-
106
- #define EC_PUSH_TAG(ec) do { \
107
- rb_execution_context_t * const _ec = (ec); \
108
- struct rb_vm_tag _tag; \
109
- _tag.state = TAG_NONE; \
110
- _tag.tag = Qundef; \
111
- _tag.prev = _ec->tag; \
112
- _tag.lock_rec = rb_ec_vm_lock_rec(_ec); \
113
- rb_vm_tag_jmpbuf_init(&_tag.buf); \
114
-
115
- #define EC_POP_TAG() \
116
- _ec->tag = _tag.prev; \
117
- rb_vm_tag_jmpbuf_deinit(&_tag.buf); \
118
- } while (0)
119
-
120
- #define EC_TMPPOP_TAG() \
121
- _ec->tag = _tag.prev
122
-
123
- #define EC_REPUSH_TAG() (void)(_ec->tag = &_tag)
124
-
125
- #if defined __GNUC__ && __GNUC__ == 4 && (__GNUC_MINOR__ >= 6 && __GNUC_MINOR__ <= 8) || defined __clang__
126
- /* This macro prevents GCC 4.6--4.8 from emitting maybe-uninitialized warnings.
127
- * This macro also prevents Clang from dumping core in EC_EXEC_TAG().
128
- * (I confirmed Clang 4.0.1 and 5.0.0.)
129
- */
130
- # define VAR_FROM_MEMORY(var) __extension__(*(__typeof__(var) volatile *)&(var))
131
- # define VAR_INITIALIZED(var) ((var) = VAR_FROM_MEMORY(var))
132
- # define VAR_NOCLOBBERED(var) volatile var
133
- #else
134
- # define VAR_FROM_MEMORY(var) (var)
135
- # define VAR_INITIALIZED(var) ((void)&(var))
136
- # define VAR_NOCLOBBERED(var) var
137
- #endif
138
-
139
- static inline void
140
- rb_ec_vm_lock_rec_check(const rb_execution_context_t *ec, unsigned int recorded_lock_rec)
141
- {
142
- unsigned int current_lock_rec = rb_ec_vm_lock_rec(ec);
143
- if (current_lock_rec != recorded_lock_rec) {
144
- rb_ec_vm_lock_rec_release(ec, recorded_lock_rec, current_lock_rec);
145
- }
146
- }
147
-
148
- /* clear ec->tag->state, and return the value */
149
- static inline int
150
- rb_ec_tag_state(const rb_execution_context_t *ec)
151
- {
152
- struct rb_vm_tag *tag = ec->tag;
153
- enum ruby_tag_type state = tag->state;
154
- tag->state = TAG_NONE;
155
- rb_ec_vm_lock_rec_check(ec, tag->lock_rec);
156
- RBIMPL_ASSUME(state != TAG_NONE);
157
- return state;
158
- }
159
-
160
- NORETURN(static inline void rb_ec_tag_jump(const rb_execution_context_t *ec, enum ruby_tag_type st));
161
- static inline void
162
- rb_ec_tag_jump(const rb_execution_context_t *ec, enum ruby_tag_type st)
163
- {
164
- RUBY_ASSERT(st != TAG_NONE);
165
- ec->tag->state = st;
166
- ruby_longjmp(RB_VM_TAG_JMPBUF_GET(ec->tag->buf), 1);
167
- }
168
-
169
- /*
170
- setjmp() in assignment expression rhs is undefined behavior
171
- [ISO/IEC 9899:1999] 7.13.1.1
172
- */
173
- #define EC_EXEC_TAG() \
174
- (UNLIKELY(ruby_setjmp(RB_VM_TAG_JMPBUF_GET(_tag.buf))) ? rb_ec_tag_state(VAR_FROM_MEMORY(_ec)) : (EC_REPUSH_TAG(), 0))
175
-
176
- #define EC_JUMP_TAG(ec, st) rb_ec_tag_jump(ec, st)
177
-
178
- #define INTERNAL_EXCEPTION_P(exc) FIXNUM_P(exc)
179
-
180
- /* CREF operators */
181
-
182
- #define CREF_FL_PUSHED_BY_EVAL IMEMO_FL_USER1
183
- #define CREF_FL_OMOD_SHARED IMEMO_FL_USER2
184
- #define CREF_FL_SINGLETON IMEMO_FL_USER3
185
-
186
- static inline int CREF_SINGLETON(const rb_cref_t *cref);
187
-
188
- static inline VALUE
189
- CREF_CLASS(const rb_cref_t *cref)
190
- {
191
- if (CREF_SINGLETON(cref)) {
192
- return CLASS_OF(cref->klass_or_self);
193
- }
194
- else {
195
- return cref->klass_or_self;
196
- }
197
- }
198
-
199
- static inline VALUE
200
- CREF_CLASS_FOR_DEFINITION(const rb_cref_t *cref)
201
- {
202
- if (CREF_SINGLETON(cref)) {
203
- return rb_singleton_class(cref->klass_or_self);
204
- }
205
- else {
206
- return cref->klass_or_self;
207
- }
208
- }
209
-
210
- static inline rb_cref_t *
211
- CREF_NEXT(const rb_cref_t *cref)
212
- {
213
- return cref->next;
214
- }
215
-
216
- static inline const rb_scope_visibility_t *
217
- CREF_SCOPE_VISI(const rb_cref_t *cref)
218
- {
219
- return &cref->scope_visi;
220
- }
221
-
222
- static inline VALUE
223
- CREF_REFINEMENTS(const rb_cref_t *cref)
224
- {
225
- return cref->refinements;
226
- }
227
-
228
- static inline void
229
- CREF_REFINEMENTS_SET(rb_cref_t *cref, VALUE refs)
230
- {
231
- RB_OBJ_WRITE(cref, &cref->refinements, refs);
232
- }
233
-
234
- static inline int
235
- CREF_PUSHED_BY_EVAL(const rb_cref_t *cref)
236
- {
237
- return cref->flags & CREF_FL_PUSHED_BY_EVAL;
238
- }
239
-
240
- static inline void
241
- CREF_PUSHED_BY_EVAL_SET(rb_cref_t *cref)
242
- {
243
- cref->flags |= CREF_FL_PUSHED_BY_EVAL;
244
- }
245
-
246
- static inline int
247
- CREF_SINGLETON(const rb_cref_t *cref)
248
- {
249
- return cref->flags & CREF_FL_SINGLETON;
250
- }
251
-
252
- static inline void
253
- CREF_SINGLETON_SET(rb_cref_t *cref)
254
- {
255
- cref->flags |= CREF_FL_SINGLETON;
256
- }
257
-
258
- static inline int
259
- CREF_OMOD_SHARED(const rb_cref_t *cref)
260
- {
261
- return cref->flags & CREF_FL_OMOD_SHARED;
262
- }
263
-
264
- static inline void
265
- CREF_OMOD_SHARED_SET(rb_cref_t *cref)
266
- {
267
- cref->flags |= CREF_FL_OMOD_SHARED;
268
- }
269
-
270
- static inline void
271
- CREF_OMOD_SHARED_UNSET(rb_cref_t *cref)
272
- {
273
- cref->flags &= ~CREF_FL_OMOD_SHARED;
274
- }
275
-
276
- enum {
277
- RAISED_EXCEPTION = 1,
278
- RAISED_STACKOVERFLOW = 2,
279
- RAISED_NOMEMORY = 4
280
- };
281
- #define rb_ec_raised_set(ec, f) ((ec)->raised_flag |= (f))
282
- #define rb_ec_raised_reset(ec, f) ((ec)->raised_flag &= ~(f))
283
- #define rb_ec_raised_p(ec, f) (((ec)->raised_flag & (f)) != 0)
284
- #define rb_ec_raised_clear(ec) ((ec)->raised_flag = 0)
285
- int rb_ec_set_raised(rb_execution_context_t *ec);
286
- int rb_ec_reset_raised(rb_execution_context_t *ec);
287
- int rb_ec_stack_check(rb_execution_context_t *ec);
288
-
289
- VALUE rb_f_eval(int argc, const VALUE *argv, VALUE self);
290
- VALUE rb_make_exception(int argc, const VALUE *argv);
291
-
292
- NORETURN(void rb_method_name_error(VALUE, VALUE));
293
-
294
- NORETURN(void rb_fiber_start(rb_fiber_t*));
295
-
296
- NORETURN(void rb_print_undef(VALUE, ID, rb_method_visibility_t));
297
- NORETURN(void rb_print_undef_str(VALUE, VALUE));
298
- NORETURN(void rb_print_inaccessible(VALUE, ID, rb_method_visibility_t));
299
- NORETURN(void rb_vm_localjump_error(const char *,VALUE, int));
300
- NORETURN(void rb_vm_jump_tag_but_local_jump(int));
301
-
302
- VALUE rb_vm_make_jump_tag_but_local_jump(int state, VALUE val);
303
- rb_cref_t *rb_vm_cref(void);
304
- rb_cref_t *rb_vm_cref_replace_with_duplicated_cref(void);
305
- VALUE rb_vm_call_cfunc(VALUE recv, VALUE (*func)(VALUE), VALUE arg, VALUE block_handler, VALUE filename);
306
- void rb_vm_set_progname(VALUE filename);
307
- VALUE rb_vm_cbase(void);
308
-
309
- /* vm_backtrace.c */
310
- VALUE rb_ec_backtrace_object(const rb_execution_context_t *ec);
311
- VALUE rb_ec_backtrace_str_ary(const rb_execution_context_t *ec, long lev, long n);
312
- VALUE rb_ec_backtrace_location_ary(const rb_execution_context_t *ec, long lev, long n, bool skip_internal);
313
-
314
- #ifndef CharNext /* defined as CharNext[AW] on Windows. */
315
- # ifdef HAVE_MBLEN
316
- # define CharNext(p) rb_char_next(p)
317
- static inline char *
318
- rb_char_next(const char *p)
319
- {
320
- if (p) {
321
- int len = mblen(p, RUBY_MBCHAR_MAXSIZE);
322
- p += len > 0 ? len : 1;
323
- }
324
- return (char *)p;
325
- }
326
- # else
327
- # define CharNext(p) ((p) + 1)
328
- # endif
329
- #endif
330
-
331
- #if defined DOSISH || defined __CYGWIN__
332
- static inline void
333
- translit_char(char *p, int from, int to)
334
- {
335
- while (*p) {
336
- if ((unsigned char)*p == from)
337
- *p = to;
338
- p = CharNext(p);
339
- }
340
- }
341
- #endif
342
-
343
- #endif /* RUBY_EVAL_INTERN_H */
@@ -1,227 +0,0 @@
1
- #ifndef RB_HRTIME_H
2
- #define RB_HRTIME_H
3
- #include "ruby/ruby.h"
4
- #include <time.h>
5
- #if defined(HAVE_SYS_TIME_H)
6
- # include <sys/time.h>
7
- #endif
8
-
9
- /*
10
- * Hi-res monotonic clock. It is currently nsec resolution, which has over
11
- * 500 years of range (with an unsigned 64-bit integer). Developers
12
- * targeting small systems may try 32-bit and low-resolution (milliseconds).
13
- *
14
- * TBD: Is nsec even necessary? usec resolution seems enough for userspace
15
- * and it'll be suitable for use with devices lasting over 500,000 years
16
- * (maybe some devices designed for long-term space travel)
17
- *
18
- * Current API:
19
- *
20
- * * rb_hrtime_now - current clock value (monotonic if available)
21
- * * rb_hrtime_mul - multiply with overflow check
22
- * * rb_hrtime_add - add with overflow check
23
- * * rb_timeval2hrtime - convert from timeval
24
- * * rb_timespec2hrtime - convert from timespec
25
- * * rb_msec2hrtime - convert from millisecond
26
- * * rb_sec2hrtime - convert from time_t (seconds)
27
- * * rb_hrtime2timeval - convert to timeval
28
- * * rb_hrtime2timespec - convert to timespec
29
- *
30
- * Note: no conversion to milliseconds is provided here because different
31
- * functions have different limits (e.g. epoll_wait vs w32_wait_events).
32
- * So we provide RB_HRTIME_PER_MSEC and similar macros for implementing
33
- * this for each use case.
34
- */
35
- #define RB_HRTIME_PER_USEC ((rb_hrtime_t)1000)
36
- #define RB_HRTIME_PER_MSEC (RB_HRTIME_PER_USEC * (rb_hrtime_t)1000)
37
- #define RB_HRTIME_PER_SEC (RB_HRTIME_PER_MSEC * (rb_hrtime_t)1000)
38
- #define RB_HRTIME_MAX UINT64_MAX
39
- #define RB_HRTIME_MIN ((rb_hrtime_t)0)
40
-
41
- /*
42
- * Lets try to support time travelers. Lets assume anybody with a time machine
43
- * also has access to a modern gcc or clang with 128-bit int support
44
- */
45
- #ifdef MY_RUBY_BUILD_MAY_TIME_TRAVEL
46
- typedef int128_t rb_hrtime_t;
47
- #else
48
- typedef uint64_t rb_hrtime_t;
49
- #endif
50
-
51
- /* thread.c */
52
- /* returns the value of the monotonic clock (if available) */
53
- rb_hrtime_t rb_hrtime_now(void);
54
-
55
- /*
56
- * multiply @a and @b with overflow check and return the
57
- * (clamped to RB_HRTIME_MAX) result.
58
- */
59
- static inline rb_hrtime_t
60
- rb_hrtime_mul(rb_hrtime_t a, rb_hrtime_t b)
61
- {
62
- rb_hrtime_t c;
63
-
64
- #ifdef HAVE_BUILTIN___BUILTIN_MUL_OVERFLOW
65
- if (__builtin_mul_overflow(a, b, &c))
66
- return RB_HRTIME_MAX;
67
- #else
68
- if (b != 0 && a > RB_HRTIME_MAX / b) /* overflow */
69
- return RB_HRTIME_MAX;
70
- c = a * b;
71
- #endif
72
- return c;
73
- }
74
-
75
- /*
76
- * add @a and @b with overflow check and return the
77
- * (clamped to RB_HRTIME_MAX) result.
78
- */
79
- static inline rb_hrtime_t
80
- rb_hrtime_add(rb_hrtime_t a, rb_hrtime_t b)
81
- {
82
- rb_hrtime_t c;
83
-
84
- #ifdef HAVE_BUILTIN___BUILTIN_ADD_OVERFLOW
85
- if (__builtin_add_overflow(a, b, &c))
86
- return RB_HRTIME_MAX;
87
- #else
88
- c = a + b;
89
- if (c < a) /* overflow */
90
- return RB_HRTIME_MAX;
91
- #endif
92
- return c;
93
- }
94
-
95
- static inline rb_hrtime_t
96
- rb_hrtime_sub(rb_hrtime_t a, rb_hrtime_t b)
97
- {
98
- if (a < b) {
99
- return RB_HRTIME_MIN;
100
- }
101
- return a - b;
102
- }
103
-
104
- /*
105
- * convert a timeval struct to rb_hrtime_t, clamping at RB_HRTIME_MAX
106
- */
107
- static inline rb_hrtime_t
108
- rb_timeval2hrtime(const struct timeval *tv)
109
- {
110
- rb_hrtime_t s = rb_hrtime_mul((rb_hrtime_t)tv->tv_sec, RB_HRTIME_PER_SEC);
111
- rb_hrtime_t u = rb_hrtime_mul((rb_hrtime_t)tv->tv_usec, RB_HRTIME_PER_USEC);
112
-
113
- return rb_hrtime_add(s, u);
114
- }
115
-
116
- /*
117
- * convert a timespec struct to rb_hrtime_t, clamping at RB_HRTIME_MAX
118
- */
119
- static inline rb_hrtime_t
120
- rb_timespec2hrtime(const struct timespec *ts)
121
- {
122
- rb_hrtime_t s = rb_hrtime_mul((rb_hrtime_t)ts->tv_sec, RB_HRTIME_PER_SEC);
123
-
124
- return rb_hrtime_add(s, (rb_hrtime_t)ts->tv_nsec);
125
- }
126
-
127
- /*
128
- * convert a millisecond value to rb_hrtime_t, clamping at RB_HRTIME_MAX
129
- */
130
- static inline rb_hrtime_t
131
- rb_msec2hrtime(unsigned long msec)
132
- {
133
- return rb_hrtime_mul((rb_hrtime_t)msec, RB_HRTIME_PER_MSEC);
134
- }
135
-
136
- /*
137
- * convert a time_t value to rb_hrtime_t, clamping at RB_HRTIME_MAX
138
- * Negative values will be clamped at 0.
139
- */
140
- static inline rb_hrtime_t
141
- rb_sec2hrtime(time_t sec)
142
- {
143
- if (sec <= 0) return 0;
144
-
145
- return rb_hrtime_mul((rb_hrtime_t)sec, RB_HRTIME_PER_SEC);
146
- }
147
-
148
- /*
149
- * convert a rb_hrtime_t value to a timespec, suitable for calling
150
- * functions like ppoll(2) or kevent(2)
151
- */
152
- static inline struct timespec *
153
- rb_hrtime2timespec(struct timespec *ts, const rb_hrtime_t *hrt)
154
- {
155
- if (hrt) {
156
- ts->tv_sec = (time_t)(*hrt / RB_HRTIME_PER_SEC);
157
- ts->tv_nsec = (int32_t)(*hrt % RB_HRTIME_PER_SEC);
158
- return ts;
159
- }
160
- return 0;
161
- }
162
-
163
- /*
164
- * convert a rb_hrtime_t value to a timeval, suitable for calling
165
- * functions like select(2)
166
- */
167
- static inline struct timeval *
168
- rb_hrtime2timeval(struct timeval *tv, const rb_hrtime_t *hrt)
169
- {
170
- if (hrt) {
171
- tv->tv_sec = (time_t)(*hrt / RB_HRTIME_PER_SEC);
172
- tv->tv_usec = (int32_t)((*hrt % RB_HRTIME_PER_SEC)/RB_HRTIME_PER_USEC);
173
-
174
- return tv;
175
- }
176
- return 0;
177
- }
178
-
179
- #include "internal/warnings.h"
180
- #include "internal/time.h"
181
-
182
- /*
183
- * Back when we used "struct timeval", not all platforms implemented
184
- * tv_sec as time_t. Nowadays we use "struct timespec" and tv_sec
185
- * seems to be implemented more consistently across platforms.
186
- * At least other parts of our code hasn't had to deal with non-time_t
187
- * tv_sec in timespec...
188
- */
189
- #define TIMESPEC_SEC_MAX TIMET_MAX
190
- #define TIMESPEC_SEC_MIN TIMET_MIN
191
-
192
- COMPILER_WARNING_PUSH
193
- #if __has_warning("-Wimplicit-int-float-conversion")
194
- COMPILER_WARNING_IGNORED(-Wimplicit-int-float-conversion)
195
- #elif defined(_MSC_VER)
196
- /* C4305: 'initializing': truncation from '__int64' to 'const double' */
197
- COMPILER_WARNING_IGNORED(4305)
198
- #endif
199
- static const double TIMESPEC_SEC_MAX_as_double = TIMESPEC_SEC_MAX;
200
- COMPILER_WARNING_POP
201
-
202
- static inline rb_hrtime_t *
203
- double2hrtime(rb_hrtime_t *hrt, double d)
204
- {
205
- /* assume timespec.tv_sec has same signedness as time_t */
206
- const double TIMESPEC_SEC_MAX_PLUS_ONE = 2.0 * (TIMESPEC_SEC_MAX_as_double / 2.0 + 1.0);
207
-
208
- if (TIMESPEC_SEC_MAX_PLUS_ONE <= d) {
209
- *hrt = RB_HRTIME_MAX;
210
- return NULL;
211
- }
212
- else if (d <= 0) {
213
- *hrt = 0;
214
- }
215
- else {
216
- *hrt = (rb_hrtime_t)(d * (double)RB_HRTIME_PER_SEC);
217
- }
218
- return hrt;
219
- }
220
-
221
- static inline double
222
- hrtime2double(rb_hrtime_t hrt)
223
- {
224
- return (double)hrt / (double)RB_HRTIME_PER_SEC;
225
- }
226
-
227
- #endif /* RB_HRTIME_H */