merge revision(s) r46387: [Backport #9607]

	* gc.c: change full GC timing to keep lower memory usage.
	  Extend heap only at
	  (1) after major GC
	  or
	  (2) after several (two times, at current) minor GC
	  Details in https://bugs.ruby-lang.org/issues/9607#note-9
	  [Bug #9607]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@47326 b2dd03c8-39d4-4d8f-98ff-823fe69b080e