aboutsummaryrefslogtreecommitdiff
path: root/gcc/ChangeLog
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/ChangeLog')
-rw-r--r--gcc/ChangeLog28
1 files changed, 28 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 8f1300c..e9d5538 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,31 @@
+2004-03-13 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (arm_legitimate_address_p): New argument, OUTER. Pass through
+ to arm_legitimate_index_p. Update all callers with SET as default
+ value.
+ (arm_legitimate_index_p): New argument, OUTER. Restrict the index
+ range if OUTER is a sign-extend operation on QImode. Correctly
+ reject shift operations on sign-extended QImode addresses.
+ (bad_signed_byte_operand): Delete.
+ (arm_extendqisi_mem_op): New function.
+ * arm.h (EXTRA_CONSTRAINT_ARM): Delete. Replace with...
+ (EXTRA_CONSTRAINT_STR_ARM): ... this. Handle extended address
+ constraints.
+ (CONSTRAINT_LEN): New.
+ (EXTRA_CONSTRAINT): Delete. Replace with...
+ (EXTRA_CONSTRAINT_STR): ... this.
+ (PREDICATE_CODES): Remove bad_signed_byte_operand.
+ * arm.md (extendqihi_insn): Use new constraint Uq. Rework. Length
+ is now always default.
+ (define_splits for bad sign-extend loads): Delete.
+ (arm_extendqisi, arm_extendqisi_v5): Likewise.
+ * arm/vfp.md (arm_movsi_vfp, arm_movdi_vfp, movsf_vfp, movdf_vfp):
+ Rework 'U' constraint to 'Uv'.
+ * arm-protos.h: Remove bad_signed_byte_operand. Add
+ arm_extendqisi_mem_op.
+ * doc/md.texi (ARM constraints): Rename VFP constraint (now Uv).
+ Add Uq constraint.
+
2004-03-13 Alan Modra <amodra@bigpond.net.au>
* config/rs6000/rs6000.c (rs6000_va_arg): Replace SPLIT_COMPLEX_ARGS