Граф коммитов

44 Коммитов

Автор SHA1 Сообщение Дата
nobu c01aaf60a5 id.def: move IDs for exception
* defs/id.def: add :mesg and :exception and move from other
  sources.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48457 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-16 08:33:35 +00:00
nobu ab1576704f id.def: attrset
* defs/id.def: add attrset IDs, which no longer shares serial
  numbers with local name IDs.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48422 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-14 06:55:05 +00:00
akr ee0a9dfb6a * defs/known_errors.def: More errors for FreeBSD.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48330 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-09 02:42:02 +00:00
akr f6695a95ea * defs/known_errors.def (EHWPOISON): New errno symbol.
It is defined by glibc-2.16.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48325 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-09 00:13:39 +00:00
nobu 5a277b4070 parse.y: optimize IDs in ripper
* parse.y: optimize ripper_intern calls, ::, **, -@, +@, <=>, >=,
  <=, ==, ===, !=, =~, !~, <<, >>, and call.

* parse.y: use initialized IDs, warn and warning.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48153 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-27 06:23:09 +00:00
hsbt 83edc945fa * defs/default_gems: change version definition file of rake.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46821 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-07-15 03:43:04 +00:00
nobu 0b4e4b20cb extmk.rb: GNU make -C option
* ext/extmk.rb: use -C option for GNU make instead of shell.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46664 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-07-03 03:38:13 +00:00
nobu 3ff85b795a eval.c: no method calls at stack overflow
* eval.c (setup_exception): get rid of method calls before raising
  stack overflow, not to cause stack overflow again.
* defs/id.def: add IDs for backtraces.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46593 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-28 04:58:25 +00:00
nobu c63170c917 gmake.mk: for love
* defs/gmake.mk: add dependencies for love.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46475 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-20 04:20:26 +00:00
nobu 3f3c86faaa common.mk: fix dependencies
* common.mk, defs/gmake.mk: fix install and uninstall dependencies
  with parallel make.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46466 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-19 14:11:52 +00:00
nobu b16245145b gmake.mk: fix argument
* defs/gmake.mk: fix missing loop variable of `foreach`.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46308 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-01 21:50:32 +00:00
nobu 2f0c383d9d gmake.mk: universal assembler rules
* Makefile.in (CFLAGS_NO_ARCH): split from ARCH_FLAG.

* defs/gmake.mk: define assembler rules per architectures for
  universal binaries.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46307 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-01 19:32:17 +00:00
nobu b1b88695be gmake.mk: universal cpp rules
* defs/gmake.mk: define preprocessing rules per architectures for
  universal binaries.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46306 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-01 19:32:15 +00:00
hsbt eb7df1eaca * defs/default_gems: remvoed mintiest entry.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46065 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-24 00:40:53 +00:00
nobu c0dba956d1 id.def: predefine to_i
* defs/id.def: predefine `to_i` as well as `to_int`.

* numeric.c (id_to_i): use predefined `idTo_i`.

* object.c (conv_method_names): add `to_i` ID.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46030 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-20 08:28:33 +00:00
nobu 6a2ef9d6c3 id.def: predefine conversion method IDs
* defs/id.def: predefine conversion method name IDs.

* object.c (conv_method_names): consitify with predefined IDs.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46026 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-20 06:28:52 +00:00
nobu b8c376cb9d defs/gmake.mk: no _FORTIFY_SOURCE unless optimization
* defs/gmake.mk (XCFLAGS): remove _FORTIFY_SOURCE if optimization is
  disabled as it requires compiling with optimization.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45402 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-03-25 01:30:07 +00:00
a_matsuda 06e2b610e5 * defs/opt_operand.def: Fix typo
s/configration/configuration/

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44329 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-12-22 01:11:07 +00:00
charliesome 07ac58747f * compile.c (iseq_compile_each): emit opt_str_freeze if the #freeze
method is called on a static string literal with no arguments.

* defs/id.def (firstline): add freeze so idFreeze is available

* insns.def (opt_str_freeze): add opt_str_freeze instruction which
  pushes a frozen string literal without allocating a new object if
  String#freeze is not overriden

* string.c (Init_String): define String#freeze

* vm.c (vm_init_redefined_flag): define BOP_FREEZE on String class as
  a basic operation

* vm_insnhelper.h: ditto

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43627 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-09 21:17:06 +00:00
knu e1da84266b Set mode for GNU Makefile.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41491 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 10:19:02 +00:00
nobu 97982e823f id.def: predefined IDs
* defs/id.def: add more predefined IDs used in core.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40556 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-05-02 07:54:17 +00:00
nobu 9644f9b572 proc.c: use predefined IDs
* defs/id.def (predefined): add "idProc".
* proc.c (mnew, mproc, mlambda): use predefined IDs.
* vm.c (Init_VM): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40530 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-05-01 02:38:44 +00:00
nobu 6b7478c4bd gmake.mk: order test-all and test-knownbug
* defs/gmake.mk (test-all, test-ruby): depends on test-knownbug if
  check is given or with test-knownbug.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39964 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-27 03:42:19 +00:00
nobu aa25b1e740 gmake.mk: no test-knownbug if unnecessary
* defs/gmake.mk (test-all): no needs to depend on test-knownbug
  always.  it is included in TEST_TARGETS if it is given.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39957 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-26 21:39:47 +00:00
nobu e4e82e50ab common.mk: reinstall target
* common.mk (reinstall): new target.

* defs/gmake.mk (install, uninstall): can't run parallel.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39618 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-07 01:39:10 +00:00
nobu 5c1af05ef5 defs/gmake.mk: serialize test targets.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39615 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-06 11:59:23 +00:00
naruse 8654730aa8 * def/id.def: use split(/^/) instead of String#lines to support
Ruby 1.8.5 as BASERUBY.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38636 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-27 22:08:41 +00:00
nobu 94a4bc0ef4 id.h.tmpl: ID2ATTRSET
* template/id.h.tmpl (ID2ATTRSET): compile time constant macro for
  ID_ATTRSET.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38523 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-21 07:38:11 +00:00
nobu 2edcf87c1c id.def: check duplication
* defs/id.def (KeywordError): check duplication.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38522 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-21 07:38:07 +00:00
nobu 298694a2fd id.def: other scope ID
* defs/id.def: support for other scope IDs,
  ID_{INSTANCE,GLOBAL,CONST,CLASS}.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38521 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-21 07:38:03 +00:00
nobu 28ee4c2966 id.c: generate
* common.mk, defs/id.def, template/id.c.tmpl: generate id.c as well as id.h.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38192 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04 17:36:19 +00:00
ko1 d3842de5c9 * vm_opts.h: enable optimization - operand unifications.
Operand unification technique enable to combine
  an instruction and specific operands and make new
  instruction.
* defs/opt_operand.def: add several configuration
  of operand unifications.
* insns.def: use `int' instead to suppress warning.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38173 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04 04:57:50 +00:00
kou bfd5921e5d * re-added r38053 that is reverted by r38061. Problems by r38053
are resolved by r38096. r38096 removed GEM_SKIP configuration.

  The below is ChangeLog of r38053:

* defs/default_gems: Add base directory column.

* tool/rbinstall.rb:
  - Install .gemspecs of default gem to
    #{GEM_HOME}/specifications/default/.
  - Update files parameter of .gemspecs by relative path from
    library directory.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38101 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-01 03:35:36 +00:00
usa 5d33dad16c * revert r38053 because it causes too many test failures.
if you've already installed r38053 or later, remove the installed
  lib/ruby/gems/2.0.0 directory and reinstall this revision or later.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38061 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-30 13:00:23 +00:00
kou f807e1b80d * defs/default_gems: Add base directory column.
* tool/rbinstall.rb:
  - Install .gemspecs of default gem to
    #{GEM_HOME}/specifications/default/.
  - Update files parameter of .gemspecs by relative path from
    library directory.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38053 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-30 10:45:58 +00:00
nobu 5f3a8912f7 * tool/rbinstall.rb (gem): install all gemspecs under lib and ext.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32842 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-08-04 07:08:48 +00:00
tenderlove 55d68f1160 installing psych as a gem
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32831 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-08-03 17:02:44 +00:00
nobu 6466df87a6 * defs/default_gems: separate from tool/rbinstall.rb.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32759 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-30 14:19:11 +00:00
yugui 295bc2fe25 removes the dtrace support. reverts r26239, r26238 and r26235.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26243 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-05 05:59:23 +00:00
yugui 72b199940d * trace.h: new file. wraps tracing mechanisms.
* defs/dtrace.d: new file. defined a dtrace provider "ruby".

* include/ruby/ruby.h (LIKELY): moved from vm.c.
  (UNLIKELY): ditto.
  (OBJSETUP): probe "object-create".
  (RUBY_EVENT_RESCUE): new event.

* vm_exec.c (DEBUG_ENTER_INSN): embeded a probe insn-entry into it.
  (DEBUG_END_INSN): insn-return.

* vm.c (LIKELY): moved into ruby.h.
  (UNLIKELY): ditto.
  (Init_BareVM): embeded a probe "raise" into it.

* variable.c (rb_class2name_without_alloc): new utility function.

* tool/rbinstall.rb (install?(:ext, :arch, :'ext-arch')): installs 
  dtrace.d if necessary.

* thread_pthread.c (add_signal_thread_list): probe "raise".
  (rb_thread_create_timer_thread): ditto.

* thread.c (rb_thread_schedule_rec): probes "thread-enter" and
  "thread-leave",
  (thread_start_func_2): ditto.
  (thread_cleanup_func): probe "thread-term"

* lib/mkmf.rb: supports dtrace postprocessor on making an extension.

* iseq.c (rb_vm_insn_name): new utility function.
  (rb_vm_insn_len): ditto.

* insns.def (hook): probes "method-etnry", "method-return", "line",
  and "rescue".

* compile.c (iseq_compile_each): adds a trace op for "rescue" probe.

* gc.c (garbage_collect): probes "gc-begin" and "gc-end".
  (obj_free): probe "object-free"
  (garbage_collect_with_gvl): probe "raise"
  (negative_size_allocation_error): ditto.
  (rb_memerror): ditto.

* eval.c (rb_rescue2): probe "rescue"
  (rb_longjmp): probe "raise"

* ext/probe/probe.c: new extension for application defined probes.

* ext/probe/extconf.rb: ditto.

* configure.in (--with-tracing-model): new option to choose a tracing
  mechanism.
  (DTRACE): new substitution. name of dtrace(1).
  (RUBY_TRACING_MODEL): new substitution.
  (DTRACE_OBJ): ditto.
  (MINIDTRACE_OBJ): ditto.
  (GOLFDTRACE_OBJ): ditto.
  (LIBRUBY_DTRACE_OBJ): ditto.
  (RUBY_DTRACE_POSTPROCESS): new macro. checks whether the dtrace on 
  the system needs postprocessing.
  (RUBY_DTRACE_BSD_BROKEN): new macro. checks whether the dtrace
  supports USDT.

* Makefile.in: 
  (DTRACE): new variable. name of dtrace(1).
  (TRACING_MODEL): new variable. name of the chosen tracing mechanism.
  (DTRACE_OBJ): same as the one in configure.in.
  (MINIDTRACE_OBJ): ditto.
  (GOLFDTRACE_OBJ): ditto.
  (LIBRUBY_DTRACE_OBJ): ditto.
  (CPPOUTFILE): new substitution. necessary for generating dtrace.d
  (trace_none.h): new target for TRACING_MODEL=none
  (RUBY_H_INCLUDES): appended a header for tracing.
  (distclean-local): also removes preprocessed version of dtrace.d
  ($(LIBRUBY_A)): needs $(LIBRUBY_DTRACE_OBJ) if dtrace needs 
  postprocessing.
  ($(PROGRAM)): ditto.
  (golf): ditto.
  (miniruby): ditto.
  ($(arch_hdrdir)/ruby/dtrace.d): new target. preprocessed verson 
  of defs/dtrace.d. generated if necessary.
  ($(arch_hdrdir)/ruby/trace_dtrace.h): new target.
  definition of probes.
  ($(LIBRUBY_DTRACE_OBJ)): new target. generated if dtrace needs 
  postprocessing.
  ($(DTRACE_OBJ)): ditto.
  ($(MINIDTRACE_OBJ)): ditto.
  ($(GOLFDTRACE_OBJ)): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26235 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-03 15:36:17 +00:00
akr db1564ec1d * defs/known_errors.def: more errors.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25905 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-24 11:06:53 +00:00
nobu 78e376a3ee * defs/keywords (reserved_word): made inline function static.
[ruby-core:23210]

* parse.y (rb_reserved_word): ordinary function for ripper.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23436 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-16 00:30:16 +00:00
yugui c2091e37ec * keywords, lex.c.src, opt_insn_unif.def, opt_operand.def: moved rarely changed
input files for code generators into defs/ directory.

* Makefile.in (lex.c): followed keywords and lex.c.src.

* common.mk (parser.o): followed keywords.
  (INSNS): followed opt_*.def

* tools/instruction.rb: followed opt_*.def.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19844 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-18 22:30:13 +00:00
yugui 16c95b42ce * error.c (Init_syserr): moved to the template.
(errno_missing): removed. fixed [ruby-dev:35958].

* defs/knwon_errors.def: added. extracted from Init_syserr.

* templates/known_errors.inc.tmpl: added. Template for Init_syserr.
  c.f. [ruby-dev:35958].

* tools/generic_erb.rb: added. general purpose mapper which maps
  data+template into source code.

* common.mk (error.$(OBJEXT), incs, known_errors.inc):
  Fixed dependencies.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19575 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-26 08:18:49 +00:00