diff options
author | Richard Sandiford <rdsandiford@googlemail.com> | 2012-11-18 17:34:06 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@gcc.gnu.org> | 2012-11-18 17:34:06 +0000 |
commit | d2eeb2d179a4353af0a8ff989222301c4f7dc11b (patch) | |
tree | 2d71577e02e248f2a39d8d852e69ab9ea07433d6 /gcc/optabs.def | |
parent | fcdd52b73c0b23bffd5ce5ba591f994547333429 (diff) | |
download | gcc-d2eeb2d179a4353af0a8ff989222301c4f7dc11b.zip gcc-d2eeb2d179a4353af0a8ff989222301c4f7dc11b.tar.gz gcc-d2eeb2d179a4353af0a8ff989222301c4f7dc11b.tar.bz2 |
gcc/
* doc/md.texi (extv@var{m}, extvmisalign@var{m}, extzv@var{m})
(extzvmisalign@var{m}, insv@var{m}, insvmisalign@var{m}): Document.
(insv, extv, extzv): Deprecate.
* optabs.def (insv_optab, extv_optab, extzv_optab)
(insvmisalign_optab, extvmisalign_optab, extzvmisalign_optab):
New optabs.
* optabs.c (get_optab_extraction_insn): New function.
(get_extraction_insn): Use it.
* config/mips/mips.md (extv): Split into...
(extvmisalign<mode>, extv<mode>): ...these new patterns. Rename
existing extv<mode> pattern to...
(*extv<mode>): ...this.
(extzv): Split into...
(extzvmisalign<mode>, extzv<mode>): ...these new patterns. Rename
existing extzv<mode> pattern to...
(*extzv<mode>): ...this.
(insv): Split into...
(insvmisalign<mode>, insv<mode>): ...these new patterns. Rename
existing insv<mode> pattern to...
(*insv<mode>): ...this. Use const_int_operand rather than
immediate_operand.
* config/mips/mips.c (mips_block_move_straight): Use set_mem_size
to set the size of BLKmode accesses.
(mips_get_unaligned_mem): Require OP0 to be a BLKmode memory,
turning it from an "rtx *" to an rtx.
(mips_expand_ext_as_unaligned_load): Simplify for new optab
interface. Update call to mips_get_unaligned_mem.
(mips_expand_ins_as_unaligned_store): Update call to
mips_get_unaligned_mem.
From-SVN: r193606
Diffstat (limited to 'gcc/optabs.def')
-rw-r--r-- | gcc/optabs.def | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/optabs.def b/gcc/optabs.def index b483b02..559726b 100644 --- a/gcc/optabs.def +++ b/gcc/optabs.def @@ -171,6 +171,12 @@ OPTAB_DC(mov_optab, "mov$a", SET) OPTAB_DC(movstrict_optab, "movstrict$a", STRICT_LOW_PART) OPTAB_D (movmisalign_optab, "movmisalign$a") OPTAB_D (storent_optab, "storent$a") +OPTAB_D (insv_optab, "insv$a") +OPTAB_D (extv_optab, "extv$a") +OPTAB_D (extzv_optab, "extzv$a") +OPTAB_D (insvmisalign_optab, "insvmisalign$a") +OPTAB_D (extvmisalign_optab, "extvmisalign$a") +OPTAB_D (extzvmisalign_optab, "extzvmisalign$a") OPTAB_D (push_optab, "push$a1") OPTAB_D (reload_in_optab, "reload_in$a") OPTAB_D (reload_out_optab, "reload_out$a") |