diff options
author | Doug Evans <dje@gnu.org> | 1996-09-25 20:39:46 +0000 |
---|---|---|
committer | Doug Evans <dje@gnu.org> | 1996-09-25 20:39:46 +0000 |
commit | 0f39a9aa8b5eb478f5ad3082c7f5bb17b146efef (patch) | |
tree | 54f03aa48235aaa03a2a8eed8f300e2734d6bcd3 | |
parent | ba619c961fb49d694be7be516ed168caec072a2c (diff) | |
download | gcc-0f39a9aa8b5eb478f5ad3082c7f5bb17b146efef.zip gcc-0f39a9aa8b5eb478f5ad3082c7f5bb17b146efef.tar.gz gcc-0f39a9aa8b5eb478f5ad3082c7f5bb17b146efef.tar.bz2 |
sparc.c (print_operand): Handle new codes H/L.
* sparc.c (print_operand): Handle new codes H/L.
* sparc.md (lo_sum_di_sp32,adddi3_sp32,subdi3_sp32,
mulsidi3_sp32,const_mulsidi3,umulsidi3_sp32,const_umulsidi3,
smacdi,umacdi,anddi3_sp32,iordi3_sp32,xordi3_sp32,negdi2_sp32):
Add little endian support.
From-SVN: r12845
-rw-r--r-- | gcc/config/sparc/sparc.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/gcc/config/sparc/sparc.c b/gcc/config/sparc/sparc.c index 81c291d..bd51b32 100644 --- a/gcc/config/sparc/sparc.c +++ b/gcc/config/sparc/sparc.c @@ -3925,6 +3925,20 @@ print_operand (file, x, code) else output_operand_lossage ("Invalid %%Y operand"); return; + case 'L': + /* Print out the low order register name of a register pair. */ + if (WORDS_BIG_ENDIAN) + fputs (reg_names[REGNO (x)+1], file); + else + fputs (reg_names[REGNO (x)], file); + return; + case 'H': + /* Print out the high order register name of a register pair. */ + if (WORDS_BIG_ENDIAN) + fputs (reg_names[REGNO (x)], file); + else + fputs (reg_names[REGNO (x)+1], file); + return; case 'R': /* Print out the second register name of a register pair or quad. I.e., R (%o0) => %o1. */ |