Index: SConstruct |
=================================================================== |
--- SConstruct (revision 4732) |
+++ SConstruct (working copy) |
@@ -204,10 +204,16 @@ |
'LINKFLAGS': ['-m32'] |
}, |
'arch:arm': { |
- 'CPPDEFINES': ['V8_TARGET_ARCH_ARM'] |
+ 'CPPDEFINES': ['V8_TARGET_ARCH_ARM'], |
+ 'unalignedaccesses:on' : { |
+ 'CPPDEFINES' : ['CAN_USE_UNALIGNED_ACCESSES=1'] |
+ }, |
+ 'unalignedaccesses:off' : { |
+ 'CPPDEFINES' : ['CAN_USE_UNALIGNED_ACCESSES=0'] |
+ } |
}, |
'simulator:arm': { |
- 'CCFLAGS': ['-m32', '-DCAN_USE_UNALIGNED_ACCESSES=1'], |
+ 'CCFLAGS': ['-m32'], |
'LINKFLAGS': ['-m32'] |
}, |
'arch:mips': { |
@@ -734,6 +740,11 @@ |
'default': 'none', |
'help': 'build with simulator' |
}, |
+ 'unalignedaccesses': { |
+ 'values': ['default', 'on', 'off'], |
+ 'default': 'default', |
+ 'help': 'set whether the ARM target supports unaligned accesses' |
+ }, |
'disassembler': { |
'values': ['on', 'off'], |
'default': 'off', |
@@ -852,6 +863,10 @@ |
Abort("Shared Object soname not applicable for static library.") |
if env['os'] != 'win32' and env['pgo'] != 'off': |
Abort("Profile guided optimization only supported on Windows.") |
+ if not (env['arch'] == 'arm' or env['simulator'] == 'arm') and ('unalignedaccesses' in ARGUMENTS): |
+ print env['arch'] |
+ print env['simulator'] |
+ Abort("Option unalignedaccesses only supported for the ARM architecture.") |
for (name, option) in SIMPLE_OPTIONS.iteritems(): |
if (not option.get('default')) and (name not in ARGUMENTS): |
message = ("A value for option %s must be specified (%s)." % |