merge revision(s) 48288: [Backport #9681]

	* compile.c (compile_data_alloc): add padding when strict alignment
	  is required for memory access. Currently, the padding is enabled
	  only when the CPU is 32-bit SPARC and the compiler is GCC.
	  [Bug #9681] [ruby-core:61715]

	* compile.c (STRICT_ALIGNMENT): defined if strict alignment is required

	* compile.c (ALIGNMENT_SIZE, ALIGNMENT_SIZE_MASK, PADDING_SIZE_MAX):
	  new macros for alignemnt word size, bit mask, max size of padding.

	* compile.c (calc_padding): new function to calculate padding size.


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