* config.gcc (alpha64-dec-*vms*, alpha*-dec-*vms*, ia64-hp-*vms*):
Adjust for above change.
- 2011-11-07 Sergey Ostanevich <sergos.gnu@gmail.com>
+2011-11-07 Enkovich Ilya <ilya.enkovich@intel.com>
+
+ PR target/50962
+ * config/i386/i386-protos.h (ix86_use_lea_for_mov): New.
+ * config/i386/i386.c (ix86_use_lea_for_mov): Likewise.
+ * config/i386/i386.md (movsi_internal): Emit lea if profitable.
+ (movdi_internal_rex64): Likewise.
+
+2011-11-07 Sergey Ostanevich <sergos.gnu@gmail.com>
PR rtl-optimization/47698
* ifconv.c (noce_operand_ok): prevent CMOV generation for volatile mem.
-2011-11-07 Enkovich Ilya <ilya.enkovich@intel.com>
+2011-11-07 Uros Bizjak <ubizjak@gmail.com>
- PR target/50962
- * config/i386/i386-protos.h (ix86_use_lea_for_mov): New.
- * config/i386/i386.c (ix86_use_lea_for_mov): Likewise.
- * config/i386/i386.md (movsi_internal): Emit lea if profitable.
- (movdi_internal_rex64): Likewise.
+ * lib/target-supports.exp (check_effective_target_sync_int_128):
+ Don't cache the result.
+ (check_effective_target_sync_long_long): Ditto.
2011-11-07 Sergey Ostanevich <sergos.gnu@gmail.com>
# Return 1 if the target supports atomic operations on "int_128" values.
proc check_effective_target_sync_int_128 { } {
- global et_sync_int_128_saved
-
- if [info exists et_sync_int_128_saved] {
- verbose "check_effective_target_sync_int_128: using cached result" 2
+ if { ([istarget x86_64-*-*] || [istarget i?86-*-*])
+ && ![is-effective-target ia32] } {
+ return 1
} else {
- set et_sync_int_128_saved 0
- if { ([istarget x86_64-*-*] || [istarget i?86-*-*])
- && ![is-effective-target ia32] } {
- set et_sync_int_128_saved 1
- }
+ return 0
}
-
- verbose "check_effective_target_sync_int_128: returning $et_sync_int_128_saved" 2
- return $et_sync_int_128_saved
}
# Return 1 if the target supports atomic operations on "long long".
proc check_effective_target_sync_long_long { } {
- global et_sync_long_long_saved
-
- if [info exists et_sync_long_long_saved] {
- verbose "check_effective_target_sync_long_long: using cached result" 2
+ if { ([istarget x86_64-*-*] || [istarget i?86-*-*])
+ && ![is-effective-target ia32] } {
+ return 1
} else {
- set et_sync_long_long_saved 0
- if { ([istarget x86_64-*-*] || [istarget i?86-*-*])
- && ![is-effective-target ia32] } {
- set et_sync_long_long_saved 1
- }
+ return 0
}
-
- verbose "check_effective_target_sync_long_long: returning $et_sync_long_long_saved" 2
- return $et_sync_long_long_saved
}
# Return 1 if the target supports atomic operations on "int" and "long".