Introduce Float32x4, Float64x2, Int32x4, Float32x4Array, Float64x2Array
and Int32x4Array data types, implement the SIMD operations on the
Float32x4, Float64x2 and Int32x4 with C++ runtime functions and implement
Float32x4Array, Float64x2Array and Int32x4Array element loading and storing.

Conflicts:
	include/v8.h
	src/arm/assembler-arm.h
	src/hydrogen-instructions.cc
	src/ia32/assembler-ia32.h
	src/ia32/lithium-codegen-ia32.cc
	src/types.cc
	src/types.h
	src/x64/assembler-x64.h
	src/x64/lithium-codegen-x64.cc
	src/x64/lithium-x64.cc
	src/x64/lithium-x64.h
Change Float32x4, Float64x2 and Int32x4 to JSObject.

These objects contains a "value" pointer pointing to a corresponding
FixedTypedArray which is the real data storage.
Inline all SIMD operations and optimize the SIMD arrays load and store.

The implementation is for ia32 and x64 ports.

Optimize Float32x4Array, Float64x2Array and Int32x4Array element loading
and storing for ia32 and x64 port by:
  1). Allocating SIMD128 registers
  2). Emitting SIMD movups instruction
  3). Adding deoptimization support for SIMD128 registers or stack slots

Inline all SIMD operations and emit SIMD instructions for ia32 and x64 port

Conflicts:
	src/hydrogen-instructions.cc
	src/hydrogen-instructions.h
	src/ia32/assembler-ia32.h
	src/ia32/deoptimizer-ia32.cc
	src/ia32/lithium-codegen-ia32.cc
	src/ia32/lithium-codegen-ia32.h
	src/ia32/macro-assembler-ia32.cc
	src/x64/assembler-x64.h
	src/x64/lithium-codegen-x64.cc
	src/x64/lithium-x64.h
	src/hydrogen-instructions.cc
	src/hydrogen-instructions.h
	src/hydrogen.cc
	src/ia32/lithium-ia32.cc
	src/x64/lithium-x64.cc
	test/cctest/test-disasm-ia32.cc