diff options
author | Andreas Krebbel <krebbel1@de.ibm.com> | 2008-05-27 11:41:10 +0000 |
---|---|---|
committer | Andreas Krebbel <krebbel@gcc.gnu.org> | 2008-05-27 11:41:10 +0000 |
commit | a4edaf835918f2dd4a2c36659b3639438a0d1a38 (patch) | |
tree | 434ad6c0e7449499b85133dba8b2068b274857f0 /gcc/genpreds.c | |
parent | 79d2a7279ffca5617a15c9082369110fd491efda (diff) | |
download | gcc-a4edaf835918f2dd4a2c36659b3639438a0d1a38.zip gcc-a4edaf835918f2dd4a2c36659b3639438a0d1a38.tar.gz gcc-a4edaf835918f2dd4a2c36659b3639438a0d1a38.tar.bz2 |
defaults.h (TARGET_MEM_CONSTRAINT): New target macro added.
2008-05-27 Andreas Krebbel <krebbel1@de.ibm.com>
* defaults.h (TARGET_MEM_CONSTRAINT): New target macro added.
* postreload.c (reload_cse_simplify_operands): Replace 'm'
constraint with TARGET_MEM_CONSTRAINT.
* recog.c (asm_operand_ok, preprocess_constraints,
constrain_operands): Likewise.
* regclass.c (record_reg_classes): Likewise.
* reload.c (find_reloads, alternative_allows_const_pool_ref):
Likewise.
* reload1.c (maybe_fix_stack_asms): Likewise.
* stmt.c (parse_output_constraint, parse_input_constraint):
Likewise.
* recog.h: Adjust comment.
* genpreds.c (generic_constraint_letters): Remove 'm' constraint.
* genoutput.c (note_constraint): Don't emit error for 'm'
constraint.
* doc/md.texi: Add a note to description of 'm' constraint.
* doc/tm.texi: Document the new TARGET_MEM_CONSTRAINT macro.
From-SVN: r136011
Diffstat (limited to 'gcc/genpreds.c')
-rw-r--r-- | gcc/genpreds.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/gcc/genpreds.c b/gcc/genpreds.c index bc20b16..b292784 100644 --- a/gcc/genpreds.c +++ b/gcc/genpreds.c @@ -690,8 +690,11 @@ static struct constraint_data **last_constraint_ptr = &first_constraint; for (iter_ = first_constraint; iter_; iter_ = iter_->next_textual) /* These letters, and all names beginning with them, are reserved for - generic constraints. */ -static const char generic_constraint_letters[] = "EFVXgimnoprs"; + generic constraints. + The 'm' constraint is not mentioned here since that constraint + letter can be overridden by the back end by defining the + TARGET_MEM_CONSTRAINT macro. */ +static const char generic_constraint_letters[] = "EFVXginoprs"; /* Machine-independent code expects that constraints with these (initial) letters will allow only (a subset of all) CONST_INTs. */ |