diff options
author | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-05-22 06:46:20 +0000 |
---|---|---|
committer | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-05-22 06:46:20 +0000 |
commit | 4737d8efd8bdfccb3d0d41413aaf3933f25780ce (patch) | |
tree | c78f15a05fa13284aee7f9acc312bbd22411818a /gcc/genrecog.c | |
parent | 98248defea4732249c4e2d3360022c5f98ad83a9 (diff) | |
download | gcc-4737d8efd8bdfccb3d0d41413aaf3933f25780ce.tar.gz |
* combine.c (simplify_comparison): Update op1 after constant
extension.
* recog.c (const_int_operand): Accept only constants valid
for the given mode.
* genrecog.c: Update comments wrt const_int_operand.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@42427 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/genrecog.c')
-rw-r--r-- | gcc/genrecog.c | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/gcc/genrecog.c b/gcc/genrecog.c index 228a5701eb4..00f425bc822 100644 --- a/gcc/genrecog.c +++ b/gcc/genrecog.c @@ -842,18 +842,16 @@ add_to_sequence (pattern, last, position, insn_type, top) test->u.pred.name = pred_name; test->u.pred.mode = mode; - /* See if we know about this predicate and save its number. If - we do, and it only accepts one code, note that fact. The - predicate `const_int_operand' only tests for a CONST_INT, so - if we do so we can avoid calling it at all. - - Finally, if we know that the predicate does not allow - CONST_INT, we know that the only way the predicate can match - is if the modes match (here we use the kludge of relying on - the fact that "address_operand" accepts CONST_INT; otherwise, - it would have to be a special case), so we can test the mode - (but we need not). This fact should considerably simplify the - generated code. */ + /* See if we know about this predicate and save its number. + If we do, and it only accepts one code, note that fact. + + If we know that the predicate does not allow CONST_INT, + we know that the only way the predicate can match is if + the modes match (here we use the kludge of relying on the + fact that "address_operand" accepts CONST_INT; otherwise, + it would have to be a special case), so we can test the + mode (but we need not). This fact should considerably + simplify the generated code. */ for (i = 0; i < NUM_KNOWN_PREDS; i++) if (! strcmp (preds[i].name, pred_name)) |