/* Generated automatically by the program `genattrtab'
   from the machine description file `md'.  */

#include "config.h"
#include "system.h"
#include "coretypes.h"
#include "backend.h"
#include "predict.h"
#include "tree.h"
#include "rtl.h"
#include "alias.h"
#include "options.h"
#include "varasm.h"
#include "stor-layout.h"
#include "calls.h"
#include "insn-attr.h"
#include "tm_p.h"
#include "insn-config.h"
#include "recog.h"
#include "regs.h"
#include "real.h"
#include "output.h"
#include "toplev.h"
#include "flags.h"
#include "emit-rtl.h"

#define operands recog_data.operand

int
insn_current_length (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  switch (recog_memoized (insn))
    {
    case 3702:  /* *p *arm_jump */
    case 214:  /* *arm_jump */
      extract_constrain_insn_cached (insn);
      if ((
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2)) && ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[0]) == LABEL_REF ? XEXP (operands[0], 0) : operands[0])) : 0) - (insn_current_reference_address (insn))) >= (-2044)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[0]) == LABEL_REF ? XEXP (operands[0], 0) : operands[0])) : 0) - (insn_current_reference_address (insn))) <= (2048))))
        {
	  return 2;
        }
      else
        {
	  return 4;
        }

    case 899:  /* *thumb2_cbnz */
      extract_constrain_insn_cached (insn);
      if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[1]) == LABEL_REF ? XEXP (operands[1], 0) : operands[1])) : 0) - (insn_current_reference_address (insn))) >= (2)) && ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[1]) == LABEL_REF ? XEXP (operands[1], 0) : operands[1])) : 0) - (insn_current_reference_address (insn))) <= (128)) && (! (
#line 1389 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/thumb2.md"
(which_alternative)))))
        {
	  return 2;
        }
      else
        {
	  return 8;
        }

    case 898:  /* *thumb2_cbz */
      extract_constrain_insn_cached (insn);
      if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[1]) == LABEL_REF ? XEXP (operands[1], 0) : operands[1])) : 0) - (insn_current_reference_address (insn))) >= (2)) && ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[1]) == LABEL_REF ? XEXP (operands[1], 0) : operands[1])) : 0) - (insn_current_reference_address (insn))) <= (128)) && (! (
#line 1389 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/thumb2.md"
(which_alternative)))))
        {
	  return 2;
        }
      else
        {
	  return 8;
        }

    case 832:  /* *thumb_jump */
      extract_insn_cached (insn);
      if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[0]) == LABEL_REF ? XEXP (operands[0], 0) : operands[0])) : 0) - (insn_current_reference_address (insn))) >= (-2044)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[0]) == LABEL_REF ? XEXP (operands[0], 0) : operands[0])) : 0) - (insn_current_reference_address (insn))) <= (2048)))
        {
	  return 2;
        }
      else
        {
	  return 4;
        }

    case 825:  /* *addsi3_cbranch_scratch */
      extract_insn_cached (insn);
      if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[4]) == LABEL_REF ? XEXP (operands[4], 0) : operands[4])) : 0) - (insn_current_reference_address (insn))) >= (-250)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[4]) == LABEL_REF ? XEXP (operands[4], 0) : operands[4])) : 0) - (insn_current_reference_address (insn))) <= (256)))
        {
	  return 4;
        }
      else
        {
	  if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[4]) == LABEL_REF ? XEXP (operands[4], 0) : operands[4])) : 0) - (insn_current_reference_address (insn))) >= (-2040)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[4]) == LABEL_REF ? XEXP (operands[4], 0) : operands[4])) : 0) - (insn_current_reference_address (insn))) <= (2048)))
	    {
	      return 6;
	    }
	  else
	    {
	      return 8;
	    }
        }

    case 824:  /* *addsi3_cbranch */
      extract_constrain_insn_cached (insn);
      if ((
#line 1487 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/thumb1.md"
(which_alternative)) < (2))
        {
	  if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[5]) == LABEL_REF ? XEXP (operands[5], 0) : operands[5])) : 0) - (insn_current_reference_address (insn))) >= (-250)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[5]) == LABEL_REF ? XEXP (operands[5], 0) : operands[5])) : 0) - (insn_current_reference_address (insn))) <= (256)))
	    {
	      return 4;
	    }
	  else
	    {
	      if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[5]) == LABEL_REF ? XEXP (operands[5], 0) : operands[5])) : 0) - (insn_current_reference_address (insn))) >= (-2040)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[5]) == LABEL_REF ? XEXP (operands[5], 0) : operands[5])) : 0) - (insn_current_reference_address (insn))) <= (2048)))
	        {
		  return 6;
	        }
	      else
	        {
		  return 8;
	        }
	    }
        }
      else
        {
	  if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[5]) == LABEL_REF ? XEXP (operands[5], 0) : operands[5])) : 0) - (insn_current_reference_address (insn))) >= (-248)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[5]) == LABEL_REF ? XEXP (operands[5], 0) : operands[5])) : 0) - (insn_current_reference_address (insn))) <= (256)))
	    {
	      return 6;
	    }
	  else
	    {
	      if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[5]) == LABEL_REF ? XEXP (operands[5], 0) : operands[5])) : 0) - (insn_current_reference_address (insn))) >= (-2038)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[5]) == LABEL_REF ? XEXP (operands[5], 0) : operands[5])) : 0) - (insn_current_reference_address (insn))) <= (2048)))
	        {
		  return 8;
	        }
	      else
	        {
		  return 10 /* 0xa */;
	        }
	    }
        }

    case 823:  /* *cbranchne_decr1 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[4]) == LABEL_REF ? XEXP (operands[4], 0) : operands[4])) : 0) - (insn_current_reference_address (insn))) >= (-250)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[4]) == LABEL_REF ? XEXP (operands[4], 0) : operands[4])) : 0) - (insn_current_reference_address (insn))) <= (256)))
	    {
	      return 4;
	    }
	  else
	    {
	      if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[4]) == LABEL_REF ? XEXP (operands[4], 0) : operands[4])) : 0) - (insn_current_reference_address (insn))) >= (-2040)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[4]) == LABEL_REF ? XEXP (operands[4], 0) : operands[4])) : 0) - (insn_current_reference_address (insn))) <= (2048)))
	        {
		  return 6;
	        }
	      else
	        {
		  return 8;
	        }
	    }
        }
      else if (which_alternative == 1)
        {
	  if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[4]) == LABEL_REF ? XEXP (operands[4], 0) : operands[4])) : 0) - (insn_current_reference_address (insn))) >= (-248)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[4]) == LABEL_REF ? XEXP (operands[4], 0) : operands[4])) : 0) - (insn_current_reference_address (insn))) <= (256)))
	    {
	      return 6;
	    }
	  else
	    {
	      if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[4]) == LABEL_REF ? XEXP (operands[4], 0) : operands[4])) : 0) - (insn_current_reference_address (insn))) >= (-2038)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[4]) == LABEL_REF ? XEXP (operands[4], 0) : operands[4])) : 0) - (insn_current_reference_address (insn))) <= (2048)))
	        {
		  return 8;
	        }
	      else
	        {
		  return 10 /* 0xa */;
	        }
	    }
        }
      else if (which_alternative == 2)
        {
	  if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[4]) == LABEL_REF ? XEXP (operands[4], 0) : operands[4])) : 0) - (insn_current_reference_address (insn))) >= (-248)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[4]) == LABEL_REF ? XEXP (operands[4], 0) : operands[4])) : 0) - (insn_current_reference_address (insn))) <= (256)))
	    {
	      return 6;
	    }
	  else
	    {
	      if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[4]) == LABEL_REF ? XEXP (operands[4], 0) : operands[4])) : 0) - (insn_current_reference_address (insn))) >= (-2038)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[4]) == LABEL_REF ? XEXP (operands[4], 0) : operands[4])) : 0) - (insn_current_reference_address (insn))) <= (2048)))
	        {
		  return 8;
	        }
	      else
	        {
		  return 10 /* 0xa */;
	        }
	    }
        }
      else
        {
	  if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[4]) == LABEL_REF ? XEXP (operands[4], 0) : operands[4])) : 0) - (insn_current_reference_address (insn))) >= (-248)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[4]) == LABEL_REF ? XEXP (operands[4], 0) : operands[4])) : 0) - (insn_current_reference_address (insn))) <= (256)))
	    {
	      return 6;
	    }
	  else
	    {
	      if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[4]) == LABEL_REF ? XEXP (operands[4], 0) : operands[4])) : 0) - (insn_current_reference_address (insn))) >= (-2038)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[4]) == LABEL_REF ? XEXP (operands[4], 0) : operands[4])) : 0) - (insn_current_reference_address (insn))) <= (2048)))
	        {
		  return 8;
	        }
	      else
	        {
		  return 10 /* 0xa */;
	        }
	    }
        }

    case 822:  /* *tstsi3_cbranch */
      extract_insn_cached (insn);
      if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[2]) == LABEL_REF ? XEXP (operands[2], 0) : operands[2])) : 0) - (insn_current_reference_address (insn))) >= (-250)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[2]) == LABEL_REF ? XEXP (operands[2], 0) : operands[2])) : 0) - (insn_current_reference_address (insn))) <= (256)))
        {
	  return 4;
        }
      else
        {
	  if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[2]) == LABEL_REF ? XEXP (operands[2], 0) : operands[2])) : 0) - (insn_current_reference_address (insn))) >= (-2040)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[2]) == LABEL_REF ? XEXP (operands[2], 0) : operands[2])) : 0) - (insn_current_reference_address (insn))) <= (2048)))
	    {
	      return 6;
	    }
	  else
	    {
	      return 8;
	    }
        }

    case 821:  /* *tlobits_cbranch */
      extract_insn_cached (insn);
      if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[3]) == LABEL_REF ? XEXP (operands[3], 0) : operands[3])) : 0) - (insn_current_reference_address (insn))) >= (-250)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[3]) == LABEL_REF ? XEXP (operands[3], 0) : operands[3])) : 0) - (insn_current_reference_address (insn))) <= (256)))
        {
	  return 4;
        }
      else
        {
	  if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[3]) == LABEL_REF ? XEXP (operands[3], 0) : operands[3])) : 0) - (insn_current_reference_address (insn))) >= (-2040)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[3]) == LABEL_REF ? XEXP (operands[3], 0) : operands[3])) : 0) - (insn_current_reference_address (insn))) <= (2048)))
	    {
	      return 6;
	    }
	  else
	    {
	      return 8;
	    }
        }

    case 820:  /* *tbit_cbranch */
      extract_insn_cached (insn);
      if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[3]) == LABEL_REF ? XEXP (operands[3], 0) : operands[3])) : 0) - (insn_current_reference_address (insn))) >= (-250)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[3]) == LABEL_REF ? XEXP (operands[3], 0) : operands[3])) : 0) - (insn_current_reference_address (insn))) <= (256)))
        {
	  return 4;
        }
      else
        {
	  if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[3]) == LABEL_REF ? XEXP (operands[3], 0) : operands[3])) : 0) - (insn_current_reference_address (insn))) >= (-2040)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[3]) == LABEL_REF ? XEXP (operands[3], 0) : operands[3])) : 0) - (insn_current_reference_address (insn))) <= (2048)))
	    {
	      return 6;
	    }
	  else
	    {
	      return 8;
	    }
        }

    case 819:  /* *negated_cbranchsi4 */
      extract_insn_cached (insn);
      if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[3]) == LABEL_REF ? XEXP (operands[3], 0) : operands[3])) : 0) - (insn_current_reference_address (insn))) >= (-250)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[3]) == LABEL_REF ? XEXP (operands[3], 0) : operands[3])) : 0) - (insn_current_reference_address (insn))) <= (256)))
        {
	  return 4;
        }
      else
        {
	  if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[3]) == LABEL_REF ? XEXP (operands[3], 0) : operands[3])) : 0) - (insn_current_reference_address (insn))) >= (-2040)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[3]) == LABEL_REF ? XEXP (operands[3], 0) : operands[3])) : 0) - (insn_current_reference_address (insn))) <= (2048)))
	    {
	      return 6;
	    }
	  else
	    {
	      return 8;
	    }
        }

    case 818:  /* cbranchsi4_scratch */
      extract_insn_cached (insn);
      if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[3]) == LABEL_REF ? XEXP (operands[3], 0) : operands[3])) : 0) - (insn_current_reference_address (insn))) >= (-250)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[3]) == LABEL_REF ? XEXP (operands[3], 0) : operands[3])) : 0) - (insn_current_reference_address (insn))) <= (256)))
        {
	  return 4;
        }
      else
        {
	  if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[3]) == LABEL_REF ? XEXP (operands[3], 0) : operands[3])) : 0) - (insn_current_reference_address (insn))) >= (-2040)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[3]) == LABEL_REF ? XEXP (operands[3], 0) : operands[3])) : 0) - (insn_current_reference_address (insn))) <= (2048)))
	    {
	      return 6;
	    }
	  else
	    {
	      return 8;
	    }
        }

    case 817:  /* cbranchsi4_insn */
      extract_insn_cached (insn);
      if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[3]) == LABEL_REF ? XEXP (operands[3], 0) : operands[3])) : 0) - (insn_current_reference_address (insn))) >= (-250)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[3]) == LABEL_REF ? XEXP (operands[3], 0) : operands[3])) : 0) - (insn_current_reference_address (insn))) <= (256)))
        {
	  return 4;
        }
      else
        {
	  if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[3]) == LABEL_REF ? XEXP (operands[3], 0) : operands[3])) : 0) - (insn_current_reference_address (insn))) >= (-2040)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[3]) == LABEL_REF ? XEXP (operands[3], 0) : operands[3])) : 0) - (insn_current_reference_address (insn))) <= (2048)))
	    {
	      return 6;
	    }
	  else
	    {
	      return 8;
	    }
        }

    case 816:  /* thumb1_cbz */
      extract_insn_cached (insn);
      if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[2]) == LABEL_REF ? XEXP (operands[2], 0) : operands[2])) : 0) - (insn_current_reference_address (insn))) >= (2)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[2]) == LABEL_REF ? XEXP (operands[2], 0) : operands[2])) : 0) - (insn_current_reference_address (insn))) <= (128)))
        {
	  return 2;
        }
      else
        {
	  if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[2]) == LABEL_REF ? XEXP (operands[2], 0) : operands[2])) : 0) - (insn_current_reference_address (insn))) >= (-250)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[2]) == LABEL_REF ? XEXP (operands[2], 0) : operands[2])) : 0) - (insn_current_reference_address (insn))) <= (256)))
	    {
	      return 4;
	    }
	  else
	    {
	      if ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[2]) == LABEL_REF ? XEXP (operands[2], 0) : operands[2])) : 0) - (insn_current_reference_address (insn))) >= (-2040)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[2]) == LABEL_REF ? XEXP (operands[2], 0) : operands[2])) : 0) - (insn_current_reference_address (insn))) <= (2048)))
	        {
		  return 6;
	        }
	      else
	        {
		  return 8;
	        }
	    }
        }

    case 205:  /* *arm_cond_branch_reversed */
      extract_constrain_insn_cached (insn);
      if ((
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2)) && ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[0]) == LABEL_REF ? XEXP (operands[0], 0) : operands[0])) : 0) - (insn_current_reference_address (insn))) >= (-250)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[0]) == LABEL_REF ? XEXP (operands[0], 0) : operands[0])) : 0) - (insn_current_reference_address (insn))) <= (256))))
        {
	  return 2;
        }
      else
        {
	  return 4;
        }

    case 204:  /* arm_cond_branch */
      extract_constrain_insn_cached (insn);
      if ((
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2)) && ((((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[0]) == LABEL_REF ? XEXP (operands[0], 0) : operands[0])) : 0) - (insn_current_reference_address (insn))) >= (-250)) && (((INSN_ADDRESSES_SET_P () ? INSN_ADDRESSES (INSN_UID (GET_CODE (operands[0]) == LABEL_REF ? XEXP (operands[0], 0) : operands[0])) : 0) - (insn_current_reference_address (insn))) <= (256))))
        {
	  return 2;
        }
      else
        {
	  return 4;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
    default:
      return 0;

    }
}

int
insn_variable_length_p (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  switch (recog_memoized (insn))
    {
    case 3702:  /* *p *arm_jump */
    case 214:  /* *arm_jump */
    case 899:  /* *thumb2_cbnz */
    case 898:  /* *thumb2_cbz */
    case 832:  /* *thumb_jump */
    case 825:  /* *addsi3_cbranch_scratch */
    case 824:  /* *addsi3_cbranch */
    case 823:  /* *cbranchne_decr1 */
    case 822:  /* *tstsi3_cbranch */
    case 821:  /* *tlobits_cbranch */
    case 820:  /* *tbit_cbranch */
    case 819:  /* *negated_cbranchsi4 */
    case 818:  /* cbranchsi4_scratch */
    case 817:  /* cbranchsi4_insn */
    case 816:  /* thumb1_cbz */
    case 205:  /* *arm_cond_branch_reversed */
    case 204:  /* arm_cond_branch */
      return 1;

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
    default:
      return 0;

    }
}

int
insn_min_length (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  switch (recog_memoized (insn))
    {
    case 1094:  /* orndi3_neon */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 4;
        }
      else if (which_alternative == 1)
        {
	  return 16 /* 0x10 */;
        }
      else
        {
	  return 8;
        }

    case 998:  /* subdi3_neon */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 4;
        }
      else if (((1 << which_alternative) & 0xe))
        {
	  return 8;
        }
      else
        {
	  return 4;
        }

    case 984:  /* adddi3_neon */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 4;
        }
      else if (((1 << which_alternative) & 0x6))
        {
	  return 8;
        }
      else if (which_alternative == 3)
        {
	  return 4;
        }
      else
        {
	  return 8;
        }

    case 920:  /* *neon_movti */
    case 919:  /* *neon_movv2di */
    case 918:  /* *neon_movv4sf */
    case 917:  /* *neon_movv4si */
    case 916:  /* *neon_movv8hf */
    case 915:  /* *neon_movv8hi */
    case 914:  /* *neon_movv16qi */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 4;
        }
      else if (which_alternative == 1)
        {
	  return 8;
        }
      else if (which_alternative == 2)
        {
	  return 4;
        }
      else if (((1 << which_alternative) & 0x38))
        {
	  return 8;
        }
      else if (which_alternative == 6)
        {
	  return 16 /* 0x10 */;
        }
      else if (which_alternative == 7)
        {
	  return 8;
        }
      else
        {
	  return 16 /* 0x10 */;
        }

    case 878:  /* *thumb2_movcond */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return 10 /* 0xa */;
        }
      else
        {
	  return 14 /* 0xe */;
        }

    case 865:  /* *thumb2_movsicc_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return 4;
        }
      else if (((1 << which_alternative) & 0x3c))
        {
	  return 6;
        }
      else if (which_alternative == 6)
        {
	  return 10 /* 0xa */;
        }
      else if (which_alternative == 7)
        {
	  return 8;
        }
      else if (((1 << which_alternative) & 0x700))
        {
	  return 10 /* 0xa */;
        }
      else
        {
	  return 6;
        }

    case 856:  /* tls_load_dot_plus_four */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return 4;
        }
      else
        {
	  return 6;
        }

    case 873:  /* *thumb2_cond_move */
    case 850:  /* *thumb2_uminsi3 */
    case 849:  /* *thumb32_umaxsi3 */
    case 848:  /* *thumb2_sminsi3 */
    case 847:  /* *thumb2_smaxsi3 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return 6;
        }
      else
        {
	  return 10 /* 0xa */;
        }

    case 823:  /* *cbranchne_decr1 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 4;
        }
      else
        {
	  return 6;
        }

    case 813:  /* *thumb_movdf_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 4;
        }
      else if (((1 << which_alternative) & 0x6))
        {
	  return 2;
        }
      else if (which_alternative == 3)
        {
	  return 6;
        }
      else
        {
	  return 4;
        }

    case 809:  /* *thumb1_movhi_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 2;
        }
      else if (which_alternative == 1)
        {
	  return 4;
        }
      else if (((1 << which_alternative) & 0x3c))
        {
	  return 2;
        }
      else
        {
	  return 4;
        }

    case 808:  /* *thumb1_movsi_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return 2;
        }
      else if (((1 << which_alternative) & 0x1c))
        {
	  return 4;
        }
      else
        {
	  return 2;
        }

    case 807:  /* *thumb1_movdi_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return 4;
        }
      else if (((1 << which_alternative) & 0xc))
        {
	  return 6;
        }
      else if (((1 << which_alternative) & 0x30))
        {
	  return 2;
        }
      else if (which_alternative == 6)
        {
	  return 6;
        }
      else
        {
	  return 4;
        }

    case 787:  /* *thumb_mulsi3 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return 4;
        }
      else
        {
	  return 2;
        }

    case 784:  /* *thumb1_addsi3 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7f))
        {
	  return 2;
        }
      else
        {
	  return 4;
        }

    case 644:  /* *thumb2_movdfcc_vfp */
    case 642:  /* *thumb2_movsfcc_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return 6;
        }
      else if (which_alternative == 2)
        {
	  return 10 /* 0xa */;
        }
      else if (((1 << which_alternative) & 0x18))
        {
	  return 6;
        }
      else if (which_alternative == 5)
        {
	  return 10 /* 0xa */;
        }
      else if (((1 << which_alternative) & 0xc0))
        {
	  return 6;
        }
      else
        {
	  return 10 /* 0xa */;
        }

    case 643:  /* *movdfcc_vfp */
    case 641:  /* *movsfcc_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return 4;
        }
      else if (which_alternative == 2)
        {
	  return 8;
        }
      else if (((1 << which_alternative) & 0x18))
        {
	  return 4;
        }
      else if (which_alternative == 5)
        {
	  return 8;
        }
      else if (((1 << which_alternative) & 0xc0))
        {
	  return 4;
        }
      else
        {
	  return 8;
        }

    case 913:  /* *neon_movdi */
    case 912:  /* *neon_movv2sf */
    case 911:  /* *neon_movv2si */
    case 910:  /* *neon_movv4hf */
    case 909:  /* *neon_movv4hi */
    case 908:  /* *neon_movv8qi */
    case 636:  /* *movhf_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3f))
        {
	  return 4;
        }
      else
        {
	  return 8;
        }

    case 635:  /* *movhf_vfp_neon */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0xff))
        {
	  return 4;
        }
      else
        {
	  return 8;
        }

    case 4011:  /* *p *movhf_vfp_fp16 */
    case 634:  /* *movhf_vfp_fp16 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x1ff))
        {
	  return 4;
        }
      else
        {
	  if (
#line 469 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/vfp.md"
(arm_arch_thumb2))
	    {
	      return 4;
	    }
	  else
	    {
	      return 8;
	    }
        }

    case 4081:  /* *p *thumb2_movhi_insn */
    case 4080:  /* *p *thumb2_movsi_insn */
    case 4009:  /* *p *thumb2_movsi_vfp */
    case 4007:  /* *p *thumb2_movhi_fp16 */
    case 4005:  /* *p *thumb2_movhi_vfp */
    case 857:  /* *thumb2_movhi_insn */
    case 855:  /* *thumb2_movsi_insn */
    case 631:  /* *thumb2_movsi_vfp */
    case 629:  /* *thumb2_movhi_fp16 */
    case 627:  /* *thumb2_movhi_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 2;
        }
      else if (which_alternative == 1)
        {
	  return 4;
        }
      else if (which_alternative == 2)
        {
	  return 2;
        }
      else
        {
	  return 4;
        }

    case 3793:  /* *p movv8qi_internal */
    case 3792:  /* *p movv4hi_internal */
    case 3791:  /* *p movv2si_internal */
    case 415:  /* movv8qi_internal */
    case 414:  /* movv4hi_internal */
    case 413:  /* movv2si_internal */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x1f))
        {
	  return 4;
        }
      else
        {
	  return 8;
        }

    case 411:  /* *iwmmxt_movsi_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0xff))
        {
	  return 4;
        }
      else if (which_alternative == 8)
        {
	  return 16 /* 0x10 */;
        }
      else
        {
	  return 4;
        }

    case 262:  /* *cmp_ior */
    case 261:  /* *cmp_and */
    case 260:  /* *cmp_ite1 */
    case 259:  /* *cmp_ite0 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 6;
        }
      else if (((1 << which_alternative) & 0x1e))
        {
	  return 8;
        }
      else
        {
	  if ((! (
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB))))
	    {
	      return 8;
	    }
	  else
	    {
	      return 10 /* 0xa */;
	    }
        }

    case 4018:  /* *p *negdf2_vfp */
    case 648:  /* *negdf2_vfp */
    case 274:  /* *if_move_plus */
    case 272:  /* *if_plus_move */
    case 256:  /* *cond_move */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return 4;
        }
      else
        {
	  return 8;
        }

    case 212:  /* *movsicc_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0xf))
        {
	  return 4;
        }
      else
        {
	  return 8;
        }

    case 201:  /* *arm_cmpdi_unsigned */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return 6;
        }
      else if (which_alternative == 2)
        {
	  return 10 /* 0xa */;
        }
      else
        {
	  return 8;
        }

    case 3698:  /* *p *arm32_movhf */
    case 193:  /* *arm32_movhf */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7))
        {
	  return 4;
        }
      else
        {
	  return 8;
        }

    case 3697:  /* *p *arm_movqi_insn */
    case 192:  /* *arm_movqi_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 2;
        }
      else if (((1 << which_alternative) & 0x6))
        {
	  return 4;
        }
      else if (which_alternative == 3)
        {
	  return 2;
        }
      else if (which_alternative == 4)
        {
	  return 4;
        }
      else if (((1 << which_alternative) & 0x60))
        {
	  return 2;
        }
      else
        {
	  return 4;
        }

    case 195:  /* *movdf_soft_insn */
    case 180:  /* *arm_movdi */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 8;
        }
      else if (which_alternative == 1)
        {
	  return 12 /* 0xc */;
        }
      else if (which_alternative == 2)
        {
	  return 16 /* 0x10 */;
        }
      else
        {
	  return 8;
        }

    case 3677:  /* *p extendsidi2 */
    case 3676:  /* *p extendhidi2 */
    case 3675:  /* *p extendqidi2 */
    case 3674:  /* *p zero_extendsidi2 */
    case 3673:  /* *p zero_extendhidi2 */
    case 3672:  /* *p zero_extendqidi2 */
    case 165:  /* extendsidi2 */
    case 164:  /* extendhidi2 */
    case 163:  /* extendqidi2 */
    case 162:  /* zero_extendsidi2 */
    case 161:  /* zero_extendhidi2 */
    case 160:  /* zero_extendqidi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 8;
        }
      else if (which_alternative == 1)
        {
	  return 4;
        }
      else
        {
	  return 8;
        }

    case 3670:  /* *p one_cmpldi2 */
    case 156:  /* one_cmpldi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 4;
        }
      else if (((1 << which_alternative) & 0x6))
        {
	  return 8;
        }
      else
        {
	  return 4;
        }

    case 270:  /* movcond */
    case 121:  /* *arm_uminsi3 */
    case 120:  /* *arm_umaxsi3 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return 8;
        }
      else
        {
	  return 12 /* 0xc */;
        }

    case 3643:  /* *p *arm_xorsi3 */
    case 111:  /* *arm_xorsi3 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7))
        {
	  return 4;
        }
      else
        {
	  return 16 /* 0x10 */;
        }

    case 108:  /* *xordi3_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 4;
        }
      else if (((1 << which_alternative) & 0x1e))
        {
	  return 8;
        }
      else
        {
	  return 4;
        }

    case 3640:  /* *p *iorsi3_insn */
    case 3626:  /* *p *arm_andsi3_insn */
    case 105:  /* *iorsi3_insn */
    case 82:  /* *arm_andsi3_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0xf))
        {
	  return 4;
        }
      else
        {
	  return 16 /* 0x10 */;
        }

    case 102:  /* *iordi3_insn */
    case 79:  /* *anddi3_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return 4;
        }
      else if (((1 << which_alternative) & 0x3c))
        {
	  return 8;
        }
      else
        {
	  return 4;
        }

    case 3598:  /* *p *arm_subsi3_insn */
    case 41:  /* *arm_subsi3_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0xff))
        {
	  return 4;
        }
      else
        {
	  return 16 /* 0x10 */;
        }

    case 3728:  /* *p *arm_rev */
    case 3700:  /* *p *arm_cmpsi_insn */
    case 3588:  /* *p *compare_addsi2_op1 */
    case 3587:  /* *p *compare_addsi2_op0 */
    case 893:  /* thumb2_addsi3_compare0 */
    case 332:  /* arm_rev16si2_alt */
    case 331:  /* arm_rev16si2 */
    case 330:  /* *arm_rev16 */
    case 329:  /* *arm_revsh */
    case 328:  /* *arm_rev */
    case 196:  /* *arm_cmpsi_insn */
    case 18:  /* *compare_addsi2_op1 */
    case 17:  /* *compare_addsi2_op0 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return 2;
        }
      else
        {
	  return 4;
        }

    case 3584:  /* *p *arm_addsi3 */
    case 4:  /* *arm_addsi3 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 2;
        }
      else if (((1 << which_alternative) & 0x3ffe))
        {
	  return 4;
        }
      else
        {
	  return 16 /* 0x10 */;
        }

    case 4098:  /* *p *iordi_notsesidi_di */
    case 4097:  /* *p *iordi_notdi_zesidi */
    case 4095:  /* *p *iordi_notdi_di */
    case 4068:  /* *p *combine_vcvt_f64_s32 */
    case 4067:  /* *p *combine_vcvt_f64_u32 */
    case 3669:  /* *p *arm_neg_abssi2 */
    case 3668:  /* *p *arm_abssi2 */
    case 3644:  /* *p *andsi_iorsi3_notsi */
    case 3642:  /* *p *xordi_sesidi_di */
    case 3639:  /* *p *iordi_sesidi_di */
    case 3633:  /* *p *anddi_notsesidi_di */
    case 3632:  /* *p *anddi_notdi_zesidi */
    case 3630:  /* *p *anddi_notdi_di */
    case 2521:  /* vec_pack_trunc_v2di */
    case 2520:  /* vec_pack_trunc_v4si */
    case 2519:  /* vec_pack_trunc_v8hi */
    case 2294:  /* neon_vld1_dupv2di */
    case 1813:  /* neon_vdup_nv2di */
    case 1145:  /* negdi2_neon */
    case 905:  /* *iordi_notsesidi_di */
    case 904:  /* *iordi_notdi_zesidi */
    case 902:  /* *iordi_notdi_di */
    case 872:  /* *thumb2_ior_scc_strict_it */
    case 864:  /* *thumb2_mov_notscc_strict_it */
    case 862:  /* *thumb2_mov_negscc_strict_it */
    case 851:  /* *thumb2_negdi2 */
    case 841:  /* prologue_thumb1_interwork */
    case 728:  /* *combine_vcvt_f64_s32 */
    case 727:  /* *combine_vcvt_f64_u32 */
    case 316:  /* consttable_8 */
    case 301:  /* *sign_extract_onebit */
    case 294:  /* *if_arith_not */
    case 292:  /* *if_not_arith */
    case 290:  /* *if_shift_shift */
    case 276:  /* *if_arith_arith */
    case 253:  /* *and_scc */
    case 229:  /* *check_arch2 */
    case 208:  /* *mov_notscc */
    case 207:  /* *mov_negscc */
    case 206:  /* *mov_scc */
    case 200:  /* *arm_cmpdi_insn */
    case 155:  /* *arm_neg_abssi2 */
    case 154:  /* *arm_abssi2 */
    case 153:  /* *negdi_zero_extendsidi */
    case 151:  /* *zextendsidi_negsi */
    case 148:  /* *arm_negdi2 */
    case 147:  /* negdi2_compare */
    case 131:  /* arm_lshrdi3_1bit */
    case 130:  /* arm_ashrdi3_1bit */
    case 129:  /* arm_ashldi3_1bit */
    case 114:  /* *andsi_iorsi3_notsi */
    case 110:  /* *xordi_sesidi_di */
    case 104:  /* *iordi_sesidi_di */
    case 95:  /* *anddi_notsesidi_di */
    case 94:  /* *anddi_notdi_zesidi */
    case 92:  /* *anddi_notdi_di */
    case 89:  /* *ite_ne_zeroextractsi_shifted */
    case 88:  /* *ite_ne_zeroextractsi */
    case 87:  /* *ne_zeroextractsi_shifted */
    case 81:  /* *anddi_sesdi_di */
    case 80:  /* *anddi_zesidi_di */
    case 40:  /* *subdi_zesidi_zesidi */
    case 39:  /* *subdi_sesidi_di */
    case 38:  /* *subdi_zesidi_di */
    case 37:  /* *subdi_di_sesidi */
    case 36:  /* *subdi_di_zesidi */
    case 35:  /* *arm_subdi3 */
    case 27:  /* subdi3_compare1 */
    case 8:  /* adddi3_compareC */
    case 5:  /* adddi3_compareV */
    case 3:  /* *adddi_zesidi_di */
    case 2:  /* *adddi_sesidi_di */
    case 1:  /* *arm_adddi3 */
      return 8;

    case 3789:  /* *p iwmmxt_anddi3 */
    case 3788:  /* *p iwmmxt_xordi3 */
    case 3787:  /* *p iwmmxt_iordi3 */
    case 1106:  /* bicdi3_neon */
    case 408:  /* iwmmxt_anddi3 */
    case 407:  /* iwmmxt_xordi3 */
    case 406:  /* iwmmxt_iordi3 */
    case 288:  /* *if_move_shift */
    case 286:  /* *if_shift_move */
    case 284:  /* *if_not_move */
    case 282:  /* *if_move_not */
    case 4096:  /* *p *iordi_notzesidi_di */
    case 3641:  /* *p *xordi_zesidi_di */
    case 3638:  /* *p *iordi_zesidi_di */
    case 3631:  /* *p *anddi_notzesidi_di */
    case 903:  /* *iordi_notzesidi_di */
    case 300:  /* *cond_move_not */
    case 280:  /* *if_move_arith */
    case 278:  /* *if_arith_move */
    case 254:  /* *ior_scc */
    case 109:  /* *xordi_zesidi_di */
    case 103:  /* *iordi_zesidi_di */
    case 93:  /* *anddi_notzesidi_di */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 4;
        }
      else
        {
	  return 8;
        }

    case 4078:  /* *p *thumb2_neg_abssi2 */
    case 4077:  /* *p *thumb2_abssi2 */
    case 853:  /* *thumb2_neg_abssi2 */
    case 852:  /* *thumb2_abssi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 8;
        }
      else if (which_alternative == 1)
        {
	  return 6;
        }
      else
        {
	  return 10 /* 0xa */;
        }

    case 4014:  /* *p *movdf_vfp */
    case 640:  /* *thumb2_movdf_vfp */
    case 639:  /* *movdf_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x2c0))
        {
	  return 8;
        }
      else if (which_alternative == 8)
        {
	  if (
#line 711 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/vfp.md"
(TARGET_VFP_SINGLE))
	    {
	      return 8;
	    }
	  else
	    {
	      return 4;
	    }
        }
      else
        {
	  return 4;
        }

    case 4010:  /* *p *movdi_vfp_cortexa8 */
    case 633:  /* *movdi_vfp_cortexa8 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 1)
        {
	  return 8;
        }
      else if (which_alternative == 2)
        {
	  return 12 /* 0xc */;
        }
      else if (which_alternative == 3)
        {
	  return 16 /* 0x10 */;
        }
      else if (((1 << which_alternative) & 0x70))
        {
	  return 
#line 395 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/vfp.md"
(arm_count_output_move_double_insns (operands)                                  * 4);
        }
      else
        {
	  return 4;
        }

    case 3722:  /* *p *pop_multiple_with_return */
    case 307:  /* *pop_multiple_with_return */
      extract_constrain_insn_cached (insn);
      return 
#line 11033 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_attr_length_pop_multi (operands, /*return_pc=*/true,
						/*write_back_p=*/false));

    case 3721:  /* *p *pop_multiple_with_writeback_and_return */
    case 306:  /* *pop_multiple_with_writeback_and_return */
      extract_constrain_insn_cached (insn);
      return 
#line 11010 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_attr_length_pop_multi (operands, /*return_pc=*/true,
						/*write_back_p=*/true));

    case 3720:  /* *p *load_multiple_with_writeback */
    case 305:  /* *load_multiple_with_writeback */
      extract_constrain_insn_cached (insn);
      return 
#line 10977 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_attr_length_pop_multi (operands,
						/*return_pc=*/false,
						/*write_back_p=*/true));

    case 3719:  /* *p *arith_adjacentmem */
    case 3703:  /* *p *arm_return */
    case 875:  /* *thumb2_cond_arith_strict_it */
    case 302:  /* *not_signextract_onebit */
    case 299:  /* *arith_adjacentmem */
    case 293:  /* *ifcompare_arith_not */
    case 291:  /* *ifcompare_not_arith */
    case 289:  /* *ifcompare_shift_shift */
    case 275:  /* *ifcompare_arith_arith */
    case 268:  /* *negscc */
    case 257:  /* *cond_arith */
    case 233:  /* arm_casesi_internal */
    case 227:  /* *cond_simple_return_inverted */
    case 226:  /* *cond_return_inverted */
    case 225:  /* *cond_simple_return */
    case 224:  /* *cond_return */
    case 223:  /* *arm_return */
    case 218:  /* *call_value_reg_arm */
    case 216:  /* *call_reg_arm */
    case 152:  /* *negdi_extendsidi */
      return 12 /* 0xc */;

    case 3688:  /* *p *arm_extendqisi */
    case 3685:  /* *p *arm_extendhisi2 */
    case 3681:  /* *p *arm_zero_extendqisi2 */
    case 177:  /* *arm_extendqisi */
    case 173:  /* *arm_extendhisi2 */
    case 169:  /* *arm_zero_extendqisi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 8;
        }
      else
        {
	  return 4;
        }

    case 3662:  /* *p unaligned_storehi */
    case 3661:  /* *p unaligned_storesi */
    case 3660:  /* *p unaligned_loadhiu */
    case 3659:  /* *p unaligned_loadhis */
    case 3658:  /* *p unaligned_loadsi */
    case 3586:  /* *p *compare_negsi_si */
    case 894:  /* *thumb2_addsi3_compare0_scratch */
    case 142:  /* unaligned_storehi */
    case 141:  /* unaligned_storesi */
    case 140:  /* unaligned_loadhiu */
    case 139:  /* unaligned_loadhis */
    case 138:  /* unaligned_loadsi */
    case 13:  /* *compare_negsi_si */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 2;
        }
      else
        {
	  return 4;
        }

    case 2721:  /* usmulusa3 */
    case 2720:  /* ssmulsa3 */
      extract_constrain_insn_cached (insn);
      if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
        {
	  if (
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it))
	    {
	      return 40 /* 0x28 */;
	    }
	  else
	    {
	      return 38 /* 0x26 */;
	    }
        }
      else
        {
	  return 32 /* 0x20 */;
        }

    case 924:  /* *neon_movxi */
    case 923:  /* *neon_movci */
    case 922:  /* *neon_movoi */
    case 921:  /* *neon_movei */
      extract_constrain_insn_cached (insn);
      return 
#line 185 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(arm_attr_length_move_neon (insn));

    case 883:  /* thumb2_casesi_internal_pic */
    case 267:  /* *and_scc_scc_nodom */
      return 20 /* 0x14 */;

    case 882:  /* thumb2_casesi_internal */
    case 317:  /* consttable_16 */
    case 266:  /* *and_scc_scc_cmp */
    case 265:  /* *and_scc_scc */
    case 264:  /* *ior_scc_scc_cmp */
    case 263:  /* *ior_scc_scc */
      return 16 /* 0x10 */;

    case 877:  /* *thumb2_negscc */
    case 874:  /* *thumb2_cond_arith */
      return 14 /* 0xe */;

    case 876:  /* *thumb2_cond_sub */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 10 /* 0xa */;
        }
      else
        {
	  return 14 /* 0xe */;
        }

    case 871:  /* *thumb2_ior_scc */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 6;
        }
      else
        {
	  return 10 /* 0xa */;
        }

    case 870:  /* *thumb2_and_scc */
      extract_constrain_insn_cached (insn);
      if (
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it))
        {
	  return 8;
        }
      else
        {
	  return 10 /* 0xa */;
        }

    case 866:  /* *thumb2_movsfcc_soft_insn */
    case 800:  /* *thumb1_neg_abssi2 */
    case 799:  /* *thumb1_abssi2 */
    case 797:  /* *thumb1_negdi2 */
      return 6;

    case 863:  /* *thumb2_mov_notscc */
    case 861:  /* *thumb2_mov_negscc */
      return 10 /* 0xa */;

    case 860:  /* *thumb2_mov_scc */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 8;
        }
      else
        {
	  return 10 /* 0xa */;
        }

    case 842:  /* *epilogue_insns */
      return 44 /* 0x2c */;

    case 824:  /* *addsi3_cbranch */
      extract_constrain_insn_cached (insn);
      if ((
#line 1487 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/thumb1.md"
(which_alternative)) < (2))
        {
	  return 4;
        }
      else
        {
	  return 6;
        }

    case 806:  /* thumb1_extendqisi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if (((
#line 77 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_arch6)) == (
(IS_ARCH6_YES))))
	    {
	      return 2;
	    }
	  else
	    {
	      return 4;
	    }
        }
      else if (which_alternative == 1)
        {
	  return 2;
        }
      else
        {
	  if (((
#line 77 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_arch6)) == (
(IS_ARCH6_YES))))
	    {
	      return 4;
	    }
	  else
	    {
	      return 6;
	    }
        }

    case 805:  /* thumb1_extendhisi2 */
    case 802:  /* *thumb1_zero_extendhisi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if (((
#line 77 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_arch6)) == (
(IS_ARCH6_YES))))
	    {
	      return 2;
	    }
	  else
	    {
	      return 4;
	    }
        }
      else
        {
	  return 4;
        }

    case 803:  /* *thumb1_zero_extendqisi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 4;
        }
      else
        {
	  return 2;
        }

    case 632:  /* *movdi_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x72))
        {
	  return 8;
        }
      else if (which_alternative == 2)
        {
	  return 12 /* 0xc */;
        }
      else if (which_alternative == 3)
        {
	  return 16 /* 0x10 */;
        }
      else if (which_alternative == 9)
        {
	  if (
#line 711 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/vfp.md"
(TARGET_VFP_SINGLE))
	    {
	      return 8;
	    }
	  else
	    {
	      return 4;
	    }
        }
      else
        {
	  return 4;
        }

    case 410:  /* *iwmmxt_arm_movdi */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x19))
        {
	  return 8;
        }
      else if (which_alternative == 1)
        {
	  return 12 /* 0xc */;
        }
      else if (which_alternative == 2)
        {
	  return 16 /* 0x10 */;
        }
      else if (which_alternative == 12)
        {
	  if ((
#line 154 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/iwmmxt.md"
(TARGET_VFP_SINGLE)) == (1))
	    {
	      return 8;
	    }
	  else
	    {
	      return 4;
	    }
        }
      else
        {
	  return 4;
        }

    case 322:  /* force_register_use */
    case 304:  /* stack_tie */
    case 230:  /* blockage */
    case 203:  /* *deleted_compare */
      return 0;

    case 303:  /* *push_multi */
      extract_constrain_insn_cached (insn);
      return 
#line 10940 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_attr_length_push_multi (operands[2], operands[1]));

    case 297:  /* *ifcompare_move_neg */
    case 295:  /* *ifcompare_neg_move */
    case 287:  /* *ifcompare_move_shift */
    case 285:  /* *ifcompare_shift_move */
    case 283:  /* *ifcompare_not_move */
    case 281:  /* *ifcompare_move_not */
    case 279:  /* *ifcompare_move_arith */
    case 277:  /* *ifcompare_arith_move */
    case 273:  /* *ifcompare_move_plus */
    case 271:  /* *ifcompare_plus_move */
    case 258:  /* *cond_sub */
    case 119:  /* *arm_smin_insn */
    case 117:  /* *arm_smax_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 8;
        }
      else
        {
	  return 12 /* 0xc */;
        }

    case 237:  /* trap */
    case 236:  /* nop */
      if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
        {
	  return 2;
        }
      else
        {
	  return 4;
        }

    case 4094:  /* *p *thumb2_negsi2_short */
    case 4093:  /* *p *thumb2_one_cmplsi2_short */
    case 4092:  /* *p *thumb2_mulsi_short */
    case 4091:  /* *p *thumb2_subsi_short */
    case 4090:  /* *p *thumb2_addsi_short */
    case 4089:  /* *p *thumb2_movsi_shortim */
    case 4088:  /* *p *thumb2_movhi_shortim */
    case 4087:  /* *p *thumb2_movqi_shortim */
    case 4086:  /* *p *thumb2_shiftsi3_short */
    case 4085:  /* *p *thumb2_alusi3_short */
    case 4079:  /* *p *thumb2_pop_single */
    case 901:  /* *thumb2_negsi2_short */
    case 900:  /* *thumb2_one_cmplsi2_short */
    case 897:  /* *thumb2_mulsi_short_compare0_scratch */
    case 896:  /* *thumb2_mulsi_short_compare0 */
    case 895:  /* *thumb2_mulsi_short */
    case 892:  /* *thumb2_subsi_short */
    case 891:  /* *thumb2_addsi_short */
    case 890:  /* *thumb2_movsi_shortim */
    case 889:  /* *thumb2_movhi_shortim */
    case 888:  /* *thumb2_movqi_shortim */
    case 887:  /* *thumb2_shiftsi3_short */
    case 886:  /* *thumb2_alusi3_short */
    case 854:  /* *thumb2_pop_single */
    case 844:  /* *thumb1_tablejump */
    case 843:  /* *thumb1_movpc_insn */
    case 840:  /* *thumb1_indirect_jump */
    case 835:  /* *call_value_reg_thumb1_v5 */
    case 833:  /* *call_reg_thumb1_v5 */
    case 826:  /* *thumb_cmpdi_zero */
    case 812:  /* *thumb1_movsf_insn */
    case 811:  /* *thumb1_movhf */
    case 810:  /* *thumb1_movqi_insn */
    case 804:  /* *thumb1_zero_extendqisi2_v6 */
    case 801:  /* *thumb1_one_cmplsi2 */
    case 798:  /* *thumb1_negsi2 */
    case 796:  /* *thumb1_rotrsi3 */
    case 795:  /* *thumb1_lshrsi3 */
    case 794:  /* *thumb1_ashrsi3 */
    case 793:  /* *thumb1_ashlsi3 */
    case 792:  /* *thumb1_xorsi3_insn */
    case 791:  /* *thumb1_iorsi3_insn */
    case 790:  /* thumb1_bicsi3 */
    case 789:  /* *thumb1_andsi3_insn */
    case 788:  /* *thumb_mulsi3_v6 */
    case 786:  /* thumb1_subsi3_insn */
    case 186:  /* pic_add_dot_plus_four */
    case 3702:  /* *p *arm_jump */
    case 214:  /* *arm_jump */
    case 899:  /* *thumb2_cbnz */
    case 898:  /* *thumb2_cbz */
    case 832:  /* *thumb_jump */
    case 816:  /* thumb1_cbz */
    case 205:  /* *arm_cond_branch_reversed */
    case 204:  /* arm_cond_branch */
      return 2;

    case 183:  /* pic_load_addr_unified */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 8;
        }
      else if (which_alternative == 1)
        {
	  return 6;
        }
      else
        {
	  return 4;
        }

    case 124:  /* *minmax_arithsi_non_canon */
    case 123:  /* *minmax_arithsi */
    case 122:  /* *store_minmaxsi */
      if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
        {
	  return 14 /* 0xe */;
        }
      else
        {
	  return 12 /* 0xc */;
        }

    case 86:  /* *ne_zeroextractsi */
      if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
        {
	  return 12 /* 0xc */;
        }
      else
        {
	  return 8;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
    default:
      return 4;

    }
}

int
insn_default_length (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  switch (recog_memoized (insn))
    {
    case 1094:  /* orndi3_neon */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 4;
        }
      else if (which_alternative == 1)
        {
	  return 16 /* 0x10 */;
        }
      else
        {
	  return 8;
        }

    case 998:  /* subdi3_neon */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 4;
        }
      else if (((1 << which_alternative) & 0xe))
        {
	  return 8;
        }
      else
        {
	  return 4;
        }

    case 984:  /* adddi3_neon */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 4;
        }
      else if (((1 << which_alternative) & 0x6))
        {
	  return 8;
        }
      else if (which_alternative == 3)
        {
	  return 4;
        }
      else
        {
	  return 8;
        }

    case 920:  /* *neon_movti */
    case 919:  /* *neon_movv2di */
    case 918:  /* *neon_movv4sf */
    case 917:  /* *neon_movv4si */
    case 916:  /* *neon_movv8hf */
    case 915:  /* *neon_movv8hi */
    case 914:  /* *neon_movv16qi */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 4;
        }
      else if (which_alternative == 1)
        {
	  return 8;
        }
      else if (which_alternative == 2)
        {
	  return 4;
        }
      else if (((1 << which_alternative) & 0x38))
        {
	  return 8;
        }
      else if (which_alternative == 6)
        {
	  return 16 /* 0x10 */;
        }
      else if (which_alternative == 7)
        {
	  return 8;
        }
      else
        {
	  return 16 /* 0x10 */;
        }

    case 878:  /* *thumb2_movcond */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return 10 /* 0xa */;
        }
      else
        {
	  return 14 /* 0xe */;
        }

    case 865:  /* *thumb2_movsicc_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return 4;
        }
      else if (((1 << which_alternative) & 0x3c))
        {
	  return 6;
        }
      else if (which_alternative == 6)
        {
	  return 10 /* 0xa */;
        }
      else if (which_alternative == 7)
        {
	  return 8;
        }
      else if (((1 << which_alternative) & 0x700))
        {
	  return 10 /* 0xa */;
        }
      else
        {
	  return 6;
        }

    case 856:  /* tls_load_dot_plus_four */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return 4;
        }
      else
        {
	  return 6;
        }

    case 873:  /* *thumb2_cond_move */
    case 850:  /* *thumb2_uminsi3 */
    case 849:  /* *thumb32_umaxsi3 */
    case 848:  /* *thumb2_sminsi3 */
    case 847:  /* *thumb2_smaxsi3 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return 6;
        }
      else
        {
	  return 10 /* 0xa */;
        }

    case 813:  /* *thumb_movdf_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 4;
        }
      else if (((1 << which_alternative) & 0x6))
        {
	  return 2;
        }
      else if (which_alternative == 3)
        {
	  return 6;
        }
      else
        {
	  return 4;
        }

    case 809:  /* *thumb1_movhi_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 2;
        }
      else if (which_alternative == 1)
        {
	  return 4;
        }
      else if (((1 << which_alternative) & 0x3c))
        {
	  return 2;
        }
      else
        {
	  return 4;
        }

    case 808:  /* *thumb1_movsi_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return 2;
        }
      else if (((1 << which_alternative) & 0x1c))
        {
	  return 4;
        }
      else
        {
	  return 2;
        }

    case 807:  /* *thumb1_movdi_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return 4;
        }
      else if (((1 << which_alternative) & 0xc))
        {
	  return 6;
        }
      else if (((1 << which_alternative) & 0x30))
        {
	  return 2;
        }
      else if (which_alternative == 6)
        {
	  return 6;
        }
      else
        {
	  return 4;
        }

    case 787:  /* *thumb_mulsi3 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return 4;
        }
      else
        {
	  return 2;
        }

    case 784:  /* *thumb1_addsi3 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7f))
        {
	  return 2;
        }
      else
        {
	  return 4;
        }

    case 644:  /* *thumb2_movdfcc_vfp */
    case 642:  /* *thumb2_movsfcc_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return 6;
        }
      else if (which_alternative == 2)
        {
	  return 10 /* 0xa */;
        }
      else if (((1 << which_alternative) & 0x18))
        {
	  return 6;
        }
      else if (which_alternative == 5)
        {
	  return 10 /* 0xa */;
        }
      else if (((1 << which_alternative) & 0xc0))
        {
	  return 6;
        }
      else
        {
	  return 10 /* 0xa */;
        }

    case 643:  /* *movdfcc_vfp */
    case 641:  /* *movsfcc_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return 4;
        }
      else if (which_alternative == 2)
        {
	  return 8;
        }
      else if (((1 << which_alternative) & 0x18))
        {
	  return 4;
        }
      else if (which_alternative == 5)
        {
	  return 8;
        }
      else if (((1 << which_alternative) & 0xc0))
        {
	  return 4;
        }
      else
        {
	  return 8;
        }

    case 913:  /* *neon_movdi */
    case 912:  /* *neon_movv2sf */
    case 911:  /* *neon_movv2si */
    case 910:  /* *neon_movv4hf */
    case 909:  /* *neon_movv4hi */
    case 908:  /* *neon_movv8qi */
    case 636:  /* *movhf_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3f))
        {
	  return 4;
        }
      else
        {
	  return 8;
        }

    case 635:  /* *movhf_vfp_neon */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0xff))
        {
	  return 4;
        }
      else
        {
	  return 8;
        }

    case 4011:  /* *p *movhf_vfp_fp16 */
    case 634:  /* *movhf_vfp_fp16 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x1ff))
        {
	  return 4;
        }
      else
        {
	  if (
#line 469 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/vfp.md"
(arm_arch_thumb2))
	    {
	      return 4;
	    }
	  else
	    {
	      return 8;
	    }
        }

    case 4081:  /* *p *thumb2_movhi_insn */
    case 4080:  /* *p *thumb2_movsi_insn */
    case 4009:  /* *p *thumb2_movsi_vfp */
    case 4007:  /* *p *thumb2_movhi_fp16 */
    case 4005:  /* *p *thumb2_movhi_vfp */
    case 857:  /* *thumb2_movhi_insn */
    case 855:  /* *thumb2_movsi_insn */
    case 631:  /* *thumb2_movsi_vfp */
    case 629:  /* *thumb2_movhi_fp16 */
    case 627:  /* *thumb2_movhi_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 2;
        }
      else if (which_alternative == 1)
        {
	  return 4;
        }
      else if (which_alternative == 2)
        {
	  return 2;
        }
      else
        {
	  return 4;
        }

    case 3793:  /* *p movv8qi_internal */
    case 3792:  /* *p movv4hi_internal */
    case 3791:  /* *p movv2si_internal */
    case 415:  /* movv8qi_internal */
    case 414:  /* movv4hi_internal */
    case 413:  /* movv2si_internal */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x1f))
        {
	  return 4;
        }
      else
        {
	  return 8;
        }

    case 411:  /* *iwmmxt_movsi_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0xff))
        {
	  return 4;
        }
      else if (which_alternative == 8)
        {
	  return 16 /* 0x10 */;
        }
      else
        {
	  return 4;
        }

    case 262:  /* *cmp_ior */
    case 261:  /* *cmp_and */
    case 260:  /* *cmp_ite1 */
    case 259:  /* *cmp_ite0 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 6;
        }
      else if (((1 << which_alternative) & 0x1e))
        {
	  return 8;
        }
      else
        {
	  if ((! (
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB))))
	    {
	      return 8;
	    }
	  else
	    {
	      return 10 /* 0xa */;
	    }
        }

    case 4018:  /* *p *negdf2_vfp */
    case 648:  /* *negdf2_vfp */
    case 274:  /* *if_move_plus */
    case 272:  /* *if_plus_move */
    case 256:  /* *cond_move */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return 4;
        }
      else
        {
	  return 8;
        }

    case 212:  /* *movsicc_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0xf))
        {
	  return 4;
        }
      else
        {
	  return 8;
        }

    case 201:  /* *arm_cmpdi_unsigned */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return 6;
        }
      else if (which_alternative == 2)
        {
	  return 10 /* 0xa */;
        }
      else
        {
	  return 8;
        }

    case 3698:  /* *p *arm32_movhf */
    case 193:  /* *arm32_movhf */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7))
        {
	  return 4;
        }
      else
        {
	  return 8;
        }

    case 3697:  /* *p *arm_movqi_insn */
    case 192:  /* *arm_movqi_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 2;
        }
      else if (((1 << which_alternative) & 0x6))
        {
	  return 4;
        }
      else if (which_alternative == 3)
        {
	  return 2;
        }
      else if (which_alternative == 4)
        {
	  return 4;
        }
      else if (((1 << which_alternative) & 0x60))
        {
	  return 2;
        }
      else
        {
	  return 4;
        }

    case 195:  /* *movdf_soft_insn */
    case 180:  /* *arm_movdi */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 8;
        }
      else if (which_alternative == 1)
        {
	  return 12 /* 0xc */;
        }
      else if (which_alternative == 2)
        {
	  return 16 /* 0x10 */;
        }
      else
        {
	  return 8;
        }

    case 3677:  /* *p extendsidi2 */
    case 3676:  /* *p extendhidi2 */
    case 3675:  /* *p extendqidi2 */
    case 3674:  /* *p zero_extendsidi2 */
    case 3673:  /* *p zero_extendhidi2 */
    case 3672:  /* *p zero_extendqidi2 */
    case 165:  /* extendsidi2 */
    case 164:  /* extendhidi2 */
    case 163:  /* extendqidi2 */
    case 162:  /* zero_extendsidi2 */
    case 161:  /* zero_extendhidi2 */
    case 160:  /* zero_extendqidi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 8;
        }
      else if (which_alternative == 1)
        {
	  return 4;
        }
      else
        {
	  return 8;
        }

    case 3670:  /* *p one_cmpldi2 */
    case 156:  /* one_cmpldi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 4;
        }
      else if (((1 << which_alternative) & 0x6))
        {
	  return 8;
        }
      else
        {
	  return 4;
        }

    case 270:  /* movcond */
    case 121:  /* *arm_uminsi3 */
    case 120:  /* *arm_umaxsi3 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return 8;
        }
      else
        {
	  return 12 /* 0xc */;
        }

    case 3643:  /* *p *arm_xorsi3 */
    case 111:  /* *arm_xorsi3 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7))
        {
	  return 4;
        }
      else
        {
	  return 16 /* 0x10 */;
        }

    case 108:  /* *xordi3_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 4;
        }
      else if (((1 << which_alternative) & 0x1e))
        {
	  return 8;
        }
      else
        {
	  return 4;
        }

    case 3640:  /* *p *iorsi3_insn */
    case 3626:  /* *p *arm_andsi3_insn */
    case 105:  /* *iorsi3_insn */
    case 82:  /* *arm_andsi3_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0xf))
        {
	  return 4;
        }
      else
        {
	  return 16 /* 0x10 */;
        }

    case 102:  /* *iordi3_insn */
    case 79:  /* *anddi3_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return 4;
        }
      else if (((1 << which_alternative) & 0x3c))
        {
	  return 8;
        }
      else
        {
	  return 4;
        }

    case 3598:  /* *p *arm_subsi3_insn */
    case 41:  /* *arm_subsi3_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0xff))
        {
	  return 4;
        }
      else
        {
	  return 16 /* 0x10 */;
        }

    case 3728:  /* *p *arm_rev */
    case 3700:  /* *p *arm_cmpsi_insn */
    case 3588:  /* *p *compare_addsi2_op1 */
    case 3587:  /* *p *compare_addsi2_op0 */
    case 893:  /* thumb2_addsi3_compare0 */
    case 332:  /* arm_rev16si2_alt */
    case 331:  /* arm_rev16si2 */
    case 330:  /* *arm_rev16 */
    case 329:  /* *arm_revsh */
    case 328:  /* *arm_rev */
    case 196:  /* *arm_cmpsi_insn */
    case 18:  /* *compare_addsi2_op1 */
    case 17:  /* *compare_addsi2_op0 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return 2;
        }
      else
        {
	  return 4;
        }

    case 3584:  /* *p *arm_addsi3 */
    case 4:  /* *arm_addsi3 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 2;
        }
      else if (((1 << which_alternative) & 0x3ffe))
        {
	  return 4;
        }
      else
        {
	  return 16 /* 0x10 */;
        }

    case 3789:  /* *p iwmmxt_anddi3 */
    case 3788:  /* *p iwmmxt_xordi3 */
    case 3787:  /* *p iwmmxt_iordi3 */
    case 1106:  /* bicdi3_neon */
    case 408:  /* iwmmxt_anddi3 */
    case 407:  /* iwmmxt_xordi3 */
    case 406:  /* iwmmxt_iordi3 */
    case 288:  /* *if_move_shift */
    case 286:  /* *if_shift_move */
    case 284:  /* *if_not_move */
    case 282:  /* *if_move_not */
    case 4096:  /* *p *iordi_notzesidi_di */
    case 3641:  /* *p *xordi_zesidi_di */
    case 3638:  /* *p *iordi_zesidi_di */
    case 3631:  /* *p *anddi_notzesidi_di */
    case 903:  /* *iordi_notzesidi_di */
    case 300:  /* *cond_move_not */
    case 280:  /* *if_move_arith */
    case 278:  /* *if_arith_move */
    case 254:  /* *ior_scc */
    case 109:  /* *xordi_zesidi_di */
    case 103:  /* *iordi_zesidi_di */
    case 93:  /* *anddi_notzesidi_di */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 4;
        }
      else
        {
	  return 8;
        }

    case 4094:  /* *p *thumb2_negsi2_short */
    case 4093:  /* *p *thumb2_one_cmplsi2_short */
    case 4092:  /* *p *thumb2_mulsi_short */
    case 4091:  /* *p *thumb2_subsi_short */
    case 4090:  /* *p *thumb2_addsi_short */
    case 4089:  /* *p *thumb2_movsi_shortim */
    case 4088:  /* *p *thumb2_movhi_shortim */
    case 4087:  /* *p *thumb2_movqi_shortim */
    case 4086:  /* *p *thumb2_shiftsi3_short */
    case 4085:  /* *p *thumb2_alusi3_short */
    case 4079:  /* *p *thumb2_pop_single */
    case 901:  /* *thumb2_negsi2_short */
    case 900:  /* *thumb2_one_cmplsi2_short */
    case 897:  /* *thumb2_mulsi_short_compare0_scratch */
    case 896:  /* *thumb2_mulsi_short_compare0 */
    case 895:  /* *thumb2_mulsi_short */
    case 892:  /* *thumb2_subsi_short */
    case 891:  /* *thumb2_addsi_short */
    case 890:  /* *thumb2_movsi_shortim */
    case 889:  /* *thumb2_movhi_shortim */
    case 888:  /* *thumb2_movqi_shortim */
    case 887:  /* *thumb2_shiftsi3_short */
    case 886:  /* *thumb2_alusi3_short */
    case 854:  /* *thumb2_pop_single */
    case 844:  /* *thumb1_tablejump */
    case 843:  /* *thumb1_movpc_insn */
    case 840:  /* *thumb1_indirect_jump */
    case 835:  /* *call_value_reg_thumb1_v5 */
    case 833:  /* *call_reg_thumb1_v5 */
    case 826:  /* *thumb_cmpdi_zero */
    case 812:  /* *thumb1_movsf_insn */
    case 811:  /* *thumb1_movhf */
    case 810:  /* *thumb1_movqi_insn */
    case 804:  /* *thumb1_zero_extendqisi2_v6 */
    case 801:  /* *thumb1_one_cmplsi2 */
    case 798:  /* *thumb1_negsi2 */
    case 796:  /* *thumb1_rotrsi3 */
    case 795:  /* *thumb1_lshrsi3 */
    case 794:  /* *thumb1_ashrsi3 */
    case 793:  /* *thumb1_ashlsi3 */
    case 792:  /* *thumb1_xorsi3_insn */
    case 791:  /* *thumb1_iorsi3_insn */
    case 790:  /* thumb1_bicsi3 */
    case 789:  /* *thumb1_andsi3_insn */
    case 788:  /* *thumb_mulsi3_v6 */
    case 786:  /* thumb1_subsi3_insn */
    case 186:  /* pic_add_dot_plus_four */
      return 2;

    case 4078:  /* *p *thumb2_neg_abssi2 */
    case 4077:  /* *p *thumb2_abssi2 */
    case 853:  /* *thumb2_neg_abssi2 */
    case 852:  /* *thumb2_abssi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 8;
        }
      else if (which_alternative == 1)
        {
	  return 6;
        }
      else
        {
	  return 10 /* 0xa */;
        }

    case 4014:  /* *p *movdf_vfp */
    case 640:  /* *thumb2_movdf_vfp */
    case 639:  /* *movdf_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x2c0))
        {
	  return 8;
        }
      else if (which_alternative == 8)
        {
	  if (
#line 711 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/vfp.md"
(TARGET_VFP_SINGLE))
	    {
	      return 8;
	    }
	  else
	    {
	      return 4;
	    }
        }
      else
        {
	  return 4;
        }

    case 4010:  /* *p *movdi_vfp_cortexa8 */
    case 633:  /* *movdi_vfp_cortexa8 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 1)
        {
	  return 8;
        }
      else if (which_alternative == 2)
        {
	  return 12 /* 0xc */;
        }
      else if (which_alternative == 3)
        {
	  return 16 /* 0x10 */;
        }
      else if (((1 << which_alternative) & 0x70))
        {
	  return 
#line 395 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/vfp.md"
(arm_count_output_move_double_insns (operands)                                  * 4);
        }
      else
        {
	  return 4;
        }

    case 3722:  /* *p *pop_multiple_with_return */
    case 307:  /* *pop_multiple_with_return */
      extract_constrain_insn_cached (insn);
      return 
#line 11033 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_attr_length_pop_multi (operands, /*return_pc=*/true,
						/*write_back_p=*/false));

    case 3721:  /* *p *pop_multiple_with_writeback_and_return */
    case 306:  /* *pop_multiple_with_writeback_and_return */
      extract_constrain_insn_cached (insn);
      return 
#line 11010 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_attr_length_pop_multi (operands, /*return_pc=*/true,
						/*write_back_p=*/true));

    case 3720:  /* *p *load_multiple_with_writeback */
    case 305:  /* *load_multiple_with_writeback */
      extract_constrain_insn_cached (insn);
      return 
#line 10977 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_attr_length_pop_multi (operands,
						/*return_pc=*/false,
						/*write_back_p=*/true));

    case 3719:  /* *p *arith_adjacentmem */
    case 3703:  /* *p *arm_return */
    case 875:  /* *thumb2_cond_arith_strict_it */
    case 302:  /* *not_signextract_onebit */
    case 299:  /* *arith_adjacentmem */
    case 293:  /* *ifcompare_arith_not */
    case 291:  /* *ifcompare_not_arith */
    case 289:  /* *ifcompare_shift_shift */
    case 275:  /* *ifcompare_arith_arith */
    case 268:  /* *negscc */
    case 257:  /* *cond_arith */
    case 233:  /* arm_casesi_internal */
    case 227:  /* *cond_simple_return_inverted */
    case 226:  /* *cond_return_inverted */
    case 225:  /* *cond_simple_return */
    case 224:  /* *cond_return */
    case 223:  /* *arm_return */
    case 218:  /* *call_value_reg_arm */
    case 216:  /* *call_reg_arm */
    case 152:  /* *negdi_extendsidi */
      return 12 /* 0xc */;

    case 3688:  /* *p *arm_extendqisi */
    case 3685:  /* *p *arm_extendhisi2 */
    case 3681:  /* *p *arm_zero_extendqisi2 */
    case 177:  /* *arm_extendqisi */
    case 173:  /* *arm_extendhisi2 */
    case 169:  /* *arm_zero_extendqisi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 8;
        }
      else
        {
	  return 4;
        }

    case 3662:  /* *p unaligned_storehi */
    case 3661:  /* *p unaligned_storesi */
    case 3660:  /* *p unaligned_loadhiu */
    case 3659:  /* *p unaligned_loadhis */
    case 3658:  /* *p unaligned_loadsi */
    case 3586:  /* *p *compare_negsi_si */
    case 894:  /* *thumb2_addsi3_compare0_scratch */
    case 142:  /* unaligned_storehi */
    case 141:  /* unaligned_storesi */
    case 140:  /* unaligned_loadhiu */
    case 139:  /* unaligned_loadhis */
    case 138:  /* unaligned_loadsi */
    case 13:  /* *compare_negsi_si */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 2;
        }
      else
        {
	  return 4;
        }

    case 2721:  /* usmulusa3 */
    case 2720:  /* ssmulsa3 */
      extract_constrain_insn_cached (insn);
      if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
        {
	  if (
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it))
	    {
	      return 40 /* 0x28 */;
	    }
	  else
	    {
	      return 38 /* 0x26 */;
	    }
        }
      else
        {
	  return 32 /* 0x20 */;
        }

    case 924:  /* *neon_movxi */
    case 923:  /* *neon_movci */
    case 922:  /* *neon_movoi */
    case 921:  /* *neon_movei */
      extract_constrain_insn_cached (insn);
      return 
#line 185 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(arm_attr_length_move_neon (insn));

    case 883:  /* thumb2_casesi_internal_pic */
    case 267:  /* *and_scc_scc_nodom */
      return 20 /* 0x14 */;

    case 882:  /* thumb2_casesi_internal */
    case 317:  /* consttable_16 */
    case 266:  /* *and_scc_scc_cmp */
    case 265:  /* *and_scc_scc */
    case 264:  /* *ior_scc_scc_cmp */
    case 263:  /* *ior_scc_scc */
      return 16 /* 0x10 */;

    case 877:  /* *thumb2_negscc */
    case 874:  /* *thumb2_cond_arith */
      return 14 /* 0xe */;

    case 876:  /* *thumb2_cond_sub */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 10 /* 0xa */;
        }
      else
        {
	  return 14 /* 0xe */;
        }

    case 871:  /* *thumb2_ior_scc */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 6;
        }
      else
        {
	  return 10 /* 0xa */;
        }

    case 870:  /* *thumb2_and_scc */
      extract_constrain_insn_cached (insn);
      if (
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it))
        {
	  return 8;
        }
      else
        {
	  return 10 /* 0xa */;
        }

    case 866:  /* *thumb2_movsfcc_soft_insn */
    case 800:  /* *thumb1_neg_abssi2 */
    case 799:  /* *thumb1_abssi2 */
    case 797:  /* *thumb1_negdi2 */
      return 6;

    case 863:  /* *thumb2_mov_notscc */
    case 861:  /* *thumb2_mov_negscc */
      return 10 /* 0xa */;

    case 823:  /* *cbranchne_decr1 */
    case 860:  /* *thumb2_mov_scc */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 8;
        }
      else
        {
	  return 10 /* 0xa */;
        }

    case 842:  /* *epilogue_insns */
      return 44 /* 0x2c */;

    case 824:  /* *addsi3_cbranch */
      extract_constrain_insn_cached (insn);
      if ((
#line 1487 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/thumb1.md"
(which_alternative)) < (2))
        {
	  return 8;
        }
      else
        {
	  return 10 /* 0xa */;
        }

    case 4098:  /* *p *iordi_notsesidi_di */
    case 4097:  /* *p *iordi_notdi_zesidi */
    case 4095:  /* *p *iordi_notdi_di */
    case 4068:  /* *p *combine_vcvt_f64_s32 */
    case 4067:  /* *p *combine_vcvt_f64_u32 */
    case 3669:  /* *p *arm_neg_abssi2 */
    case 3668:  /* *p *arm_abssi2 */
    case 3644:  /* *p *andsi_iorsi3_notsi */
    case 3642:  /* *p *xordi_sesidi_di */
    case 3639:  /* *p *iordi_sesidi_di */
    case 3633:  /* *p *anddi_notsesidi_di */
    case 3632:  /* *p *anddi_notdi_zesidi */
    case 3630:  /* *p *anddi_notdi_di */
    case 2521:  /* vec_pack_trunc_v2di */
    case 2520:  /* vec_pack_trunc_v4si */
    case 2519:  /* vec_pack_trunc_v8hi */
    case 2294:  /* neon_vld1_dupv2di */
    case 1813:  /* neon_vdup_nv2di */
    case 1145:  /* negdi2_neon */
    case 905:  /* *iordi_notsesidi_di */
    case 904:  /* *iordi_notdi_zesidi */
    case 902:  /* *iordi_notdi_di */
    case 872:  /* *thumb2_ior_scc_strict_it */
    case 864:  /* *thumb2_mov_notscc_strict_it */
    case 862:  /* *thumb2_mov_negscc_strict_it */
    case 851:  /* *thumb2_negdi2 */
    case 841:  /* prologue_thumb1_interwork */
    case 728:  /* *combine_vcvt_f64_s32 */
    case 727:  /* *combine_vcvt_f64_u32 */
    case 316:  /* consttable_8 */
    case 301:  /* *sign_extract_onebit */
    case 294:  /* *if_arith_not */
    case 292:  /* *if_not_arith */
    case 290:  /* *if_shift_shift */
    case 276:  /* *if_arith_arith */
    case 253:  /* *and_scc */
    case 229:  /* *check_arch2 */
    case 208:  /* *mov_notscc */
    case 207:  /* *mov_negscc */
    case 206:  /* *mov_scc */
    case 200:  /* *arm_cmpdi_insn */
    case 155:  /* *arm_neg_abssi2 */
    case 154:  /* *arm_abssi2 */
    case 153:  /* *negdi_zero_extendsidi */
    case 151:  /* *zextendsidi_negsi */
    case 148:  /* *arm_negdi2 */
    case 147:  /* negdi2_compare */
    case 131:  /* arm_lshrdi3_1bit */
    case 130:  /* arm_ashrdi3_1bit */
    case 129:  /* arm_ashldi3_1bit */
    case 114:  /* *andsi_iorsi3_notsi */
    case 110:  /* *xordi_sesidi_di */
    case 104:  /* *iordi_sesidi_di */
    case 95:  /* *anddi_notsesidi_di */
    case 94:  /* *anddi_notdi_zesidi */
    case 92:  /* *anddi_notdi_di */
    case 89:  /* *ite_ne_zeroextractsi_shifted */
    case 88:  /* *ite_ne_zeroextractsi */
    case 87:  /* *ne_zeroextractsi_shifted */
    case 81:  /* *anddi_sesdi_di */
    case 80:  /* *anddi_zesidi_di */
    case 40:  /* *subdi_zesidi_zesidi */
    case 39:  /* *subdi_sesidi_di */
    case 38:  /* *subdi_zesidi_di */
    case 37:  /* *subdi_di_sesidi */
    case 36:  /* *subdi_di_zesidi */
    case 35:  /* *arm_subdi3 */
    case 27:  /* subdi3_compare1 */
    case 8:  /* adddi3_compareC */
    case 5:  /* adddi3_compareV */
    case 3:  /* *adddi_zesidi_di */
    case 2:  /* *adddi_sesidi_di */
    case 1:  /* *arm_adddi3 */
    case 899:  /* *thumb2_cbnz */
    case 898:  /* *thumb2_cbz */
    case 825:  /* *addsi3_cbranch_scratch */
    case 822:  /* *tstsi3_cbranch */
    case 821:  /* *tlobits_cbranch */
    case 820:  /* *tbit_cbranch */
    case 819:  /* *negated_cbranchsi4 */
    case 818:  /* cbranchsi4_scratch */
    case 817:  /* cbranchsi4_insn */
    case 816:  /* thumb1_cbz */
      return 8;

    case 806:  /* thumb1_extendqisi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if (((
#line 77 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_arch6)) == (
(IS_ARCH6_YES))))
	    {
	      return 2;
	    }
	  else
	    {
	      return 4;
	    }
        }
      else if (which_alternative == 1)
        {
	  return 2;
        }
      else
        {
	  if (((
#line 77 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_arch6)) == (
(IS_ARCH6_YES))))
	    {
	      return 4;
	    }
	  else
	    {
	      return 6;
	    }
        }

    case 805:  /* thumb1_extendhisi2 */
    case 802:  /* *thumb1_zero_extendhisi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if (((
#line 77 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_arch6)) == (
(IS_ARCH6_YES))))
	    {
	      return 2;
	    }
	  else
	    {
	      return 4;
	    }
        }
      else
        {
	  return 4;
        }

    case 803:  /* *thumb1_zero_extendqisi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 4;
        }
      else
        {
	  return 2;
        }

    case 632:  /* *movdi_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x72))
        {
	  return 8;
        }
      else if (which_alternative == 2)
        {
	  return 12 /* 0xc */;
        }
      else if (which_alternative == 3)
        {
	  return 16 /* 0x10 */;
        }
      else if (which_alternative == 9)
        {
	  if (
#line 711 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/vfp.md"
(TARGET_VFP_SINGLE))
	    {
	      return 8;
	    }
	  else
	    {
	      return 4;
	    }
        }
      else
        {
	  return 4;
        }

    case 410:  /* *iwmmxt_arm_movdi */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x19))
        {
	  return 8;
        }
      else if (which_alternative == 1)
        {
	  return 12 /* 0xc */;
        }
      else if (which_alternative == 2)
        {
	  return 16 /* 0x10 */;
        }
      else if (which_alternative == 12)
        {
	  if ((
#line 154 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/iwmmxt.md"
(TARGET_VFP_SINGLE)) == (1))
	    {
	      return 8;
	    }
	  else
	    {
	      return 4;
	    }
        }
      else
        {
	  return 4;
        }

    case 322:  /* force_register_use */
    case 304:  /* stack_tie */
    case 230:  /* blockage */
    case 203:  /* *deleted_compare */
      return 0;

    case 303:  /* *push_multi */
      extract_constrain_insn_cached (insn);
      return 
#line 10940 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_attr_length_push_multi (operands[2], operands[1]));

    case 297:  /* *ifcompare_move_neg */
    case 295:  /* *ifcompare_neg_move */
    case 287:  /* *ifcompare_move_shift */
    case 285:  /* *ifcompare_shift_move */
    case 283:  /* *ifcompare_not_move */
    case 281:  /* *ifcompare_move_not */
    case 279:  /* *ifcompare_move_arith */
    case 277:  /* *ifcompare_arith_move */
    case 273:  /* *ifcompare_move_plus */
    case 271:  /* *ifcompare_plus_move */
    case 258:  /* *cond_sub */
    case 119:  /* *arm_smin_insn */
    case 117:  /* *arm_smax_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 8;
        }
      else
        {
	  return 12 /* 0xc */;
        }

    case 237:  /* trap */
    case 236:  /* nop */
      if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
        {
	  return 2;
        }
      else
        {
	  return 4;
        }

    case 183:  /* pic_load_addr_unified */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 8;
        }
      else if (which_alternative == 1)
        {
	  return 6;
        }
      else
        {
	  return 4;
        }

    case 124:  /* *minmax_arithsi_non_canon */
    case 123:  /* *minmax_arithsi */
    case 122:  /* *store_minmaxsi */
      if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
        {
	  return 14 /* 0xe */;
        }
      else
        {
	  return 12 /* 0xc */;
        }

    case 86:  /* *ne_zeroextractsi */
      if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
        {
	  return 12 /* 0xc */;
        }
      else
        {
	  return 8;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
    default:
      return 4;

    }
}

int
bypass_p (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  enum attr_type cached_type ATTRIBUTE_UNUSED;
  enum attr_mul32 cached_mul32 ATTRIBUTE_UNUSED;
  enum attr_mul64 cached_mul64 ATTRIBUTE_UNUSED;
  enum attr_cortex_a8_neon_type cached_cortex_a8_neon_type ATTRIBUTE_UNUSED;
  enum attr_cortex_a9_neon_type cached_cortex_a9_neon_type ATTRIBUTE_UNUSED;
  enum attr_cortex_a15_neon_type cached_cortex_a15_neon_type ATTRIBUTE_UNUSED;
  enum attr_cortex_a53_advsimd_type cached_cortex_a53_advsimd_type ATTRIBUTE_UNUSED;
  enum attr_cortex_a57_neon_type cached_cortex_a57_neon_type ATTRIBUTE_UNUSED;
  enum attr_predicated cached_predicated ATTRIBUTE_UNUSED;
  enum attr_exynos_m1_neon_type cached_exynos_m1_neon_type ATTRIBUTE_UNUSED;
  enum attr_conds cached_conds ATTRIBUTE_UNUSED;

  switch (recog_memoized (insn))
    {
    case 2476:  /* neon_vst4_lanev4sf */
    case 2475:  /* neon_vst4_lanev4si */
    case 2474:  /* neon_vst4_lanev8hf */
    case 2473:  /* neon_vst4_lanev8hi */
    case 2472:  /* neon_vst4_lanev2sf */
    case 2471:  /* neon_vst4_lanev2si */
    case 2470:  /* neon_vst4_lanev4hf */
    case 2469:  /* neon_vst4_lanev4hi */
    case 2468:  /* neon_vst4_lanev8qi */
    case 2467:  /* neon_vst4qbv4sf */
    case 2466:  /* neon_vst4qbv4si */
    case 2465:  /* neon_vst4qbv8hf */
    case 2464:  /* neon_vst4qbv8hi */
    case 2463:  /* neon_vst4qbv16qi */
    case 2462:  /* neon_vst4qav4sf */
    case 2461:  /* neon_vst4qav4si */
    case 2460:  /* neon_vst4qav8hf */
    case 2459:  /* neon_vst4qav8hi */
    case 2458:  /* neon_vst4qav16qi */
    case 2457:  /* neon_vst4di */
    case 2456:  /* neon_vst4v2sf */
    case 2455:  /* neon_vst4v2si */
    case 2454:  /* neon_vst4v4hf */
    case 2453:  /* neon_vst4v4hi */
    case 2452:  /* neon_vst4v8qi */
    case 2420:  /* neon_vst3_lanev4sf */
    case 2419:  /* neon_vst3_lanev4si */
    case 2418:  /* neon_vst3_lanev8hf */
    case 2417:  /* neon_vst3_lanev8hi */
    case 2416:  /* neon_vst3_lanev2sf */
    case 2415:  /* neon_vst3_lanev2si */
    case 2414:  /* neon_vst3_lanev4hf */
    case 2413:  /* neon_vst3_lanev4hi */
    case 2412:  /* neon_vst3_lanev8qi */
    case 2411:  /* neon_vst3qbv4sf */
    case 2410:  /* neon_vst3qbv4si */
    case 2409:  /* neon_vst3qbv8hf */
    case 2408:  /* neon_vst3qbv8hi */
    case 2407:  /* neon_vst3qbv16qi */
    case 2406:  /* neon_vst3qav4sf */
    case 2405:  /* neon_vst3qav4si */
    case 2404:  /* neon_vst3qav8hf */
    case 2403:  /* neon_vst3qav8hi */
    case 2402:  /* neon_vst3qav16qi */
    case 2401:  /* neon_vst3di */
    case 2400:  /* neon_vst3v2sf */
    case 2399:  /* neon_vst3v2si */
    case 2398:  /* neon_vst3v4hf */
    case 2397:  /* neon_vst3v4hi */
    case 2396:  /* neon_vst3v8qi */
    case 2364:  /* neon_vst2_lanev4sf */
    case 2363:  /* neon_vst2_lanev4si */
    case 2362:  /* neon_vst2_lanev8hf */
    case 2361:  /* neon_vst2_lanev8hi */
    case 2360:  /* neon_vst2_lanev2sf */
    case 2359:  /* neon_vst2_lanev2si */
    case 2358:  /* neon_vst2_lanev4hf */
    case 2357:  /* neon_vst2_lanev4hi */
    case 2356:  /* neon_vst2_lanev8qi */
    case 2355:  /* neon_vst2v4sf */
    case 2354:  /* neon_vst2v4si */
    case 2353:  /* neon_vst2v8hf */
    case 2352:  /* neon_vst2v8hi */
    case 2351:  /* neon_vst2v16qi */
    case 2350:  /* neon_vst2di */
    case 2349:  /* neon_vst2v2sf */
    case 2348:  /* neon_vst2v2si */
    case 2347:  /* neon_vst2v4hf */
    case 2346:  /* neon_vst2v4hi */
    case 2345:  /* neon_vst2v8qi */
    case 2318:  /* neon_vst1_lanev2di */
    case 2317:  /* neon_vst1_lanev4sf */
    case 2316:  /* neon_vst1_lanev4si */
    case 2315:  /* neon_vst1_lanev8hf */
    case 2314:  /* neon_vst1_lanev8hi */
    case 2313:  /* neon_vst1_lanev16qi */
    case 2312:  /* neon_vst1_lanedi */
    case 2311:  /* neon_vst1_lanev2sf */
    case 2310:  /* neon_vst1_lanev2si */
    case 2309:  /* neon_vst1_lanev4hf */
    case 2308:  /* neon_vst1_lanev4hi */
    case 2307:  /* neon_vst1_lanev8qi */
    case 2306:  /* neon_vst1v2di */
    case 2305:  /* neon_vst1di */
    case 2304:  /* neon_vst1v4sf */
    case 2303:  /* neon_vst1v2sf */
    case 2302:  /* neon_vst1v8hf */
    case 2301:  /* neon_vst1v4hf */
    case 2300:  /* neon_vst1v4si */
    case 2299:  /* neon_vst1v2si */
    case 2298:  /* neon_vst1v8hi */
    case 2297:  /* neon_vst1v4hi */
    case 2296:  /* neon_vst1v16qi */
    case 2295:  /* neon_vst1v8qi */
    case 1939:  /* neon_vqrdmulh_lanev2si */
    case 1938:  /* neon_vqdmulh_lanev2si */
    case 1935:  /* neon_vqrdmulh_lanev4si */
    case 1934:  /* neon_vqdmulh_lanev4si */
    case 1859:  /* neon_vcvtv4hfv4sf */
    case 1858:  /* neon_vcvtv4sfv4hf */
    case 1802:  /* neon_vget_lanev4sf_zext_internal */
    case 1801:  /* neon_vget_lanev4si_zext_internal */
    case 1800:  /* neon_vget_lanev8hf_zext_internal */
    case 1799:  /* neon_vget_lanev8hi_zext_internal */
    case 1798:  /* neon_vget_lanev16qi_zext_internal */
    case 1797:  /* neon_vget_lanev4sf_sext_internal */
    case 1796:  /* neon_vget_lanev4si_sext_internal */
    case 1795:  /* neon_vget_lanev8hf_sext_internal */
    case 1794:  /* neon_vget_lanev8hi_sext_internal */
    case 1793:  /* neon_vget_lanev16qi_sext_internal */
    case 1792:  /* neon_vget_lanev2sf_zext_internal */
    case 1791:  /* neon_vget_lanev2si_zext_internal */
    case 1790:  /* neon_vget_lanev4hi_zext_internal */
    case 1789:  /* neon_vget_lanev8qi_zext_internal */
    case 1788:  /* neon_vget_lanev2sf_sext_internal */
    case 1787:  /* neon_vget_lanev2si_sext_internal */
    case 1786:  /* neon_vget_lanev4hi_sext_internal */
    case 1785:  /* neon_vget_lanev8qi_sext_internal */
    case 942:  /* *movmisalignv2di_neon_store */
    case 941:  /* *movmisalignv4sf_neon_store */
    case 940:  /* *movmisalignv4si_neon_store */
    case 939:  /* *movmisalignv8hf_neon_store */
    case 938:  /* *movmisalignv8hi_neon_store */
    case 937:  /* *movmisalignv16qi_neon_store */
    case 930:  /* *movmisaligndi_neon_store */
    case 929:  /* *movmisalignv2sf_neon_store */
    case 928:  /* *movmisalignv2si_neon_store */
    case 927:  /* *movmisalignv4hf_neon_store */
    case 926:  /* *movmisalignv4hi_neon_store */
    case 925:  /* *movmisalignv8qi_neon_store */
      if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) || ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1))))))
        {
	  return 1;
        }
      else
        {
	  return 0;
        }

    case 4075:  /* *p rintdf2 */
    case 4074:  /* *p nearbyintdf2 */
    case 4073:  /* *p btruncdf2 */
    case 4072:  /* *p rintsf2 */
    case 4071:  /* *p nearbyintsf2 */
    case 4070:  /* *p btruncsf2 */
    case 780:  /* fmindf3 */
    case 779:  /* fmaxdf3 */
    case 778:  /* fminsf3 */
    case 777:  /* fmaxsf3 */
    case 776:  /* neon_vminnmhf */
    case 775:  /* neon_vmaxnmhf */
    case 774:  /* smindf3 */
    case 773:  /* sminsf3 */
    case 772:  /* smaxdf3 */
    case 771:  /* smaxsf3 */
    case 758:  /* rounddf2 */
    case 757:  /* rintdf2 */
    case 756:  /* nearbyintdf2 */
    case 755:  /* floordf2 */
    case 754:  /* ceildf2 */
    case 753:  /* btruncdf2 */
    case 752:  /* roundsf2 */
    case 751:  /* rintsf2 */
    case 750:  /* nearbyintsf2 */
    case 749:  /* floorsf2 */
    case 748:  /* ceilsf2 */
    case 747:  /* btruncsf2 */
      if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA53)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))))
        {
	  return 1;
        }
      else
        {
	  return 0;
        }

    case 716:  /* *movcc_vfp */
      if (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9))))
        {
	  return 1;
        }
      else
        {
	  return 0;
        }

    case 4123:  /* *p arm_store_release_exclusivesi */
    case 4122:  /* *p arm_store_release_exclusivehi */
    case 4121:  /* *p arm_store_release_exclusiveqi */
    case 4120:  /* *p arm_store_release_exclusivedi */
    case 4119:  /* *p arm_store_exclusivedi */
    case 4118:  /* *p arm_store_exclusivesi */
    case 4117:  /* *p arm_store_exclusivehi */
    case 4116:  /* *p arm_store_exclusiveqi */
    case 4115:  /* *p arm_load_acquire_exclusivedi */
    case 4114:  /* *p arm_load_exclusivedi */
    case 4113:  /* *p arm_load_acquire_exclusivesi */
    case 4112:  /* *p arm_load_exclusivesi */
    case 4111:  /* *p arm_load_acquire_exclusivehi */
    case 4110:  /* *p arm_load_acquire_exclusiveqi */
    case 4109:  /* *p arm_load_exclusivehi */
    case 4108:  /* *p arm_load_exclusiveqi */
    case 4107:  /* *p arm_atomic_loaddi2_ldrd */
    case 4106:  /* *p atomic_storesi */
    case 4105:  /* *p atomic_storehi */
    case 4104:  /* *p atomic_storeqi */
    case 4103:  /* *p atomic_loadsi */
    case 4102:  /* *p atomic_loadhi */
    case 4101:  /* *p atomic_loadqi */
    case 4003:  /* *p iwmmxt_textrcv8qi3 */
    case 4002:  /* *p iwmmxt_textrcv4hi3 */
    case 4001:  /* *p iwmmxt_textrcv2si3 */
    case 4000:  /* *p iwmmxt_torvscv8qi3 */
    case 3999:  /* *p iwmmxt_torvscv4hi3 */
    case 3998:  /* *p iwmmxt_torvscv2si3 */
    case 3997:  /* *p iwmmxt_torcv8qi3 */
    case 3996:  /* *p iwmmxt_torcv4hi3 */
    case 3995:  /* *p iwmmxt_torcv2si3 */
    case 3994:  /* *p iwmmxt_tandcv8qi3 */
    case 3993:  /* *p iwmmxt_tandcv4hi3 */
    case 3992:  /* *p iwmmxt_tandcv2si3 */
    case 3991:  /* *p iwmmxt_wmerge */
    case 3990:  /* *p iwmmxt_wmiawttn */
    case 3989:  /* *p iwmmxt_wmiawtbn */
    case 3988:  /* *p iwmmxt_wmiawbtn */
    case 3987:  /* *p iwmmxt_wmiawbbn */
    case 3986:  /* *p iwmmxt_wmiawtt */
    case 3985:  /* *p iwmmxt_wmiawtb */
    case 3984:  /* *p iwmmxt_wmiawbt */
    case 3983:  /* *p iwmmxt_wmiawbb */
    case 3982:  /* *p iwmmxt_wmiattn */
    case 3981:  /* *p iwmmxt_wmiatbn */
    case 3980:  /* *p iwmmxt_wmiabtn */
    case 3979:  /* *p iwmmxt_wmiabbn */
    case 3978:  /* *p iwmmxt_wmiatt */
    case 3977:  /* *p iwmmxt_wmiatb */
    case 3976:  /* *p iwmmxt_wmiabt */
    case 3975:  /* *p iwmmxt_wmiabb */
    case 3974:  /* *p iwmmxt_wqmiattn */
    case 3973:  /* *p iwmmxt_wqmiatbn */
    case 3972:  /* *p iwmmxt_wqmiabtn */
    case 3971:  /* *p iwmmxt_wqmiabbn */
    case 3970:  /* *p iwmmxt_wqmiatt */
    case 3969:  /* *p iwmmxt_wqmiatb */
    case 3968:  /* *p iwmmxt_wqmiabt */
    case 3967:  /* *p iwmmxt_wqmiabb */
    case 3966:  /* *p iwmmxt_waddbhusl */
    case 3965:  /* *p iwmmxt_waddbhusm */
    case 3964:  /* *p iwmmxt_wqmulwmr */
    case 3963:  /* *p iwmmxt_wqmulmr */
    case 3962:  /* *p iwmmxt_wqmulwm */
    case 3961:  /* *p iwmmxt_wqmulm */
    case 3960:  /* *p iwmmxt_wmulwl */
    case 3959:  /* *p iwmmxt_wmulwumr */
    case 3958:  /* *p iwmmxt_wmulwsmr */
    case 3957:  /* *p iwmmxt_wmulumr */
    case 3956:  /* *p iwmmxt_wmulsmr */
    case 3955:  /* *p iwmmxt_wmulwum */
    case 3954:  /* *p iwmmxt_wmulwsm */
    case 3953:  /* *p iwmmxt_wmaddun */
    case 3952:  /* *p iwmmxt_wmaddsn */
    case 3951:  /* *p iwmmxt_wmaddux */
    case 3950:  /* *p iwmmxt_wmaddsx */
    case 3949:  /* *p iwmmxt_avg4r */
    case 3948:  /* *p iwmmxt_avg4 */
    case 3947:  /* *p addcv2si3 */
    case 3946:  /* *p addcv4hi3 */
    case 3945:  /* *p iwmmxt_wsubaddhx */
    case 3944:  /* *p iwmmxt_waddsubhx */
    case 3943:  /* *p iwmmxt_wabsdiffw */
    case 3942:  /* *p iwmmxt_wabsdiffh */
    case 3941:  /* *p iwmmxt_wabsdiffb */
    case 3940:  /* *p iwmmxt_wabsv8qi3 */
    case 3939:  /* *p iwmmxt_wabsv4hi3 */
    case 3938:  /* *p iwmmxt_wabsv2si3 */
    case 3937:  /* *p iwmmxt_wsadhz */
    case 3936:  /* *p iwmmxt_wsadbz */
    case 3935:  /* *p iwmmxt_wsadh */
    case 3934:  /* *p iwmmxt_wsadb */
    case 3933:  /* *p iwmmxt_walignr3 */
    case 3932:  /* *p iwmmxt_walignr2 */
    case 3931:  /* *p iwmmxt_walignr1 */
    case 3930:  /* *p iwmmxt_walignr0 */
    case 3929:  /* *p iwmmxt_walignr */
    case 3928:  /* *p iwmmxt_waligni */
    case 3927:  /* *p iwmmxt_waccw */
    case 3926:  /* *p iwmmxt_wacch */
    case 3925:  /* *p iwmmxt_waccb */
    case 3924:  /* *p iwmmxt_tmovmskw */
    case 3923:  /* *p iwmmxt_tmovmskh */
    case 3922:  /* *p iwmmxt_tmovmskb */
    case 3921:  /* *p iwmmxt_tmiatt */
    case 3920:  /* *p iwmmxt_tmiabt */
    case 3919:  /* *p iwmmxt_tmiatb */
    case 3918:  /* *p iwmmxt_tmiabb */
    case 3917:  /* *p iwmmxt_tmiaph */
    case 3916:  /* *p iwmmxt_tmia */
    case 3915:  /* *p iwmmxt_wmaddu */
    case 3914:  /* *p iwmmxt_wmadds */
    case 3913:  /* *p ashldi3_di */
    case 3912:  /* *p ashlv2si3_di */
    case 3911:  /* *p ashlv4hi3_di */
    case 3910:  /* *p lshrdi3_di */
    case 3909:  /* *p lshrv2si3_di */
    case 3908:  /* *p lshrv4hi3_di */
    case 3907:  /* *p ashrdi3_di */
    case 3906:  /* *p ashrv2si3_di */
    case 3905:  /* *p ashrv4hi3_di */
    case 3904:  /* *p rordi3_di */
    case 3903:  /* *p rorv2si3_di */
    case 3902:  /* *p rorv4hi3_di */
    case 3901:  /* *p ashldi3_iwmmxt */
    case 3900:  /* *p ashlv2si3_iwmmxt */
    case 3899:  /* *p ashlv4hi3_iwmmxt */
    case 3898:  /* *p lshrdi3_iwmmxt */
    case 3897:  /* *p lshrv2si3_iwmmxt */
    case 3896:  /* *p lshrv4hi3_iwmmxt */
    case 3895:  /* *p ashrdi3_iwmmxt */
    case 3894:  /* *p ashrv2si3_iwmmxt */
    case 3893:  /* *p ashrv4hi3_iwmmxt */
    case 3892:  /* *p rordi3 */
    case 3891:  /* *p rorv2si3 */
    case 3890:  /* *p rorv4hi3 */
    case 3889:  /* *p iwmmxt_wunpckelsw */
    case 3888:  /* *p iwmmxt_wunpckelsh */
    case 3887:  /* *p iwmmxt_wunpckelsb */
    case 3886:  /* *p iwmmxt_wunpckeluw */
    case 3885:  /* *p iwmmxt_wunpckeluh */
    case 3884:  /* *p iwmmxt_wunpckelub */
    case 3883:  /* *p iwmmxt_wunpckehsw */
    case 3882:  /* *p iwmmxt_wunpckehsh */
    case 3881:  /* *p iwmmxt_wunpckehsb */
    case 3880:  /* *p iwmmxt_wunpckehuw */
    case 3879:  /* *p iwmmxt_wunpckehuh */
    case 3878:  /* *p iwmmxt_wunpckehub */
    case 3877:  /* *p iwmmxt_wunpckilw */
    case 3876:  /* *p iwmmxt_wunpckilh */
    case 3875:  /* *p iwmmxt_wunpckilb */
    case 3874:  /* *p iwmmxt_wunpckihw */
    case 3873:  /* *p iwmmxt_wunpckihh */
    case 3872:  /* *p iwmmxt_wunpckihb */
    case 3871:  /* *p iwmmxt_wpackdus */
    case 3870:  /* *p iwmmxt_wpackwus */
    case 3869:  /* *p iwmmxt_wpackhus */
    case 3868:  /* *p iwmmxt_wpackdss */
    case 3867:  /* *p iwmmxt_wpackwss */
    case 3866:  /* *p iwmmxt_wpackhss */
    case 3865:  /* *p *uminv8qi3_iwmmxt */
    case 3864:  /* *p *uminv4hi3_iwmmxt */
    case 3863:  /* *p *uminv2si3_iwmmxt */
    case 3862:  /* *p *sminv8qi3_iwmmxt */
    case 3861:  /* *p *sminv4hi3_iwmmxt */
    case 3860:  /* *p *sminv2si3_iwmmxt */
    case 3859:  /* *p *umaxv8qi3_iwmmxt */
    case 3858:  /* *p *umaxv4hi3_iwmmxt */
    case 3857:  /* *p *umaxv2si3_iwmmxt */
    case 3856:  /* *p *smaxv8qi3_iwmmxt */
    case 3855:  /* *p *smaxv4hi3_iwmmxt */
    case 3854:  /* *p *smaxv2si3_iwmmxt */
    case 3853:  /* *p gtv2si3 */
    case 3852:  /* *p gtv4hi3 */
    case 3851:  /* *p gtv8qi3 */
    case 3850:  /* *p gtuv2si3 */
    case 3849:  /* *p gtuv4hi3 */
    case 3848:  /* *p gtuv8qi3 */
    case 3847:  /* *p eqv2si3 */
    case 3846:  /* *p eqv4hi3 */
    case 3845:  /* *p eqv8qi3 */
    case 3844:  /* *p iwmmxt_wshufh */
    case 3843:  /* *p iwmmxt_textrmw */
    case 3842:  /* *p iwmmxt_textrmsh */
    case 3841:  /* *p iwmmxt_textrmuh */
    case 3840:  /* *p iwmmxt_textrmsb */
    case 3839:  /* *p iwmmxt_textrmub */
    case 3838:  /* *p iwmmxt_tinsrw */
    case 3837:  /* *p iwmmxt_tinsrh */
    case 3836:  /* *p iwmmxt_tinsrb */
    case 3835:  /* *p iwmmxt_uavgv4hi3 */
    case 3834:  /* *p iwmmxt_uavgv8qi3 */
    case 3833:  /* *p iwmmxt_uavgrndv4hi3 */
    case 3832:  /* *p iwmmxt_uavgrndv8qi3 */
    case 3831:  /* *p iwmmxt_clrv2si */
    case 3830:  /* *p iwmmxt_clrv4hi */
    case 3829:  /* *p iwmmxt_clrv8qi */
    case 3828:  /* *p iwmmxt_clrdi */
    case 3827:  /* *p iwmmxt_wmacuz */
    case 3826:  /* *p iwmmxt_wmacu */
    case 3825:  /* *p iwmmxt_wmacsz */
    case 3824:  /* *p iwmmxt_wmacs */
    case 3823:  /* *p umulv4hi3_highpart */
    case 3822:  /* *p smulv4hi3_highpart */
    case 3821:  /* *p *mulv4hi3_iwmmxt */
    case 3820:  /* *p ussubv2si3 */
    case 3819:  /* *p ussubv4hi3 */
    case 3818:  /* *p ussubv8qi3 */
    case 3817:  /* *p sssubv2si3 */
    case 3816:  /* *p sssubv4hi3 */
    case 3815:  /* *p sssubv8qi3 */
    case 3814:  /* *p *subv8qi3_iwmmxt */
    case 3813:  /* *p *subv4hi3_iwmmxt */
    case 3812:  /* *p *subv2si3_iwmmxt */
    case 3811:  /* *p usaddv2si3 */
    case 3810:  /* *p usaddv4hi3 */
    case 3809:  /* *p usaddv8qi3 */
    case 3808:  /* *p ssaddv2si3 */
    case 3807:  /* *p ssaddv4hi3 */
    case 3806:  /* *p ssaddv8qi3 */
    case 3805:  /* *p *addv8qi3_iwmmxt */
    case 3804:  /* *p *addv4hi3_iwmmxt */
    case 3803:  /* *p *addv2si3_iwmmxt */
    case 3802:  /* *p *xorv8qi3_iwmmxt */
    case 3801:  /* *p *xorv4hi3_iwmmxt */
    case 3800:  /* *p *xorv2si3_iwmmxt */
    case 3799:  /* *p *iorv8qi3_iwmmxt */
    case 3798:  /* *p *iorv4hi3_iwmmxt */
    case 3797:  /* *p *iorv2si3_iwmmxt */
    case 3796:  /* *p *andv8qi3_iwmmxt */
    case 3795:  /* *p *andv4hi3_iwmmxt */
    case 3794:  /* *p *andv2si3_iwmmxt */
    case 3790:  /* *p iwmmxt_nanddi3 */
    case 3789:  /* *p iwmmxt_anddi3 */
    case 3788:  /* *p iwmmxt_xordi3 */
    case 3787:  /* *p iwmmxt_iordi3 */
    case 3786:  /* *p tbcstv2si */
    case 3785:  /* *p tbcstv4hi */
    case 3784:  /* *p tbcstv8qi */
    case 3783:  /* *p *load_multiple */
    case 2665:  /* arm_store_release_exclusivesi */
    case 2664:  /* arm_store_release_exclusivehi */
    case 2663:  /* arm_store_release_exclusiveqi */
    case 2662:  /* arm_store_release_exclusivedi */
    case 2661:  /* arm_store_exclusivedi */
    case 2660:  /* arm_store_exclusivesi */
    case 2659:  /* arm_store_exclusivehi */
    case 2658:  /* arm_store_exclusiveqi */
    case 2657:  /* arm_load_acquire_exclusivedi */
    case 2656:  /* arm_load_exclusivedi */
    case 2655:  /* arm_load_acquire_exclusivesi */
    case 2654:  /* arm_load_exclusivesi */
    case 2653:  /* arm_load_acquire_exclusivehi */
    case 2652:  /* arm_load_acquire_exclusiveqi */
    case 2651:  /* arm_load_exclusivehi */
    case 2650:  /* arm_load_exclusiveqi */
    case 2649:  /* atomic_nand_fetchdi */
    case 2648:  /* atomic_nand_fetchsi */
    case 2647:  /* atomic_nand_fetchhi */
    case 2646:  /* atomic_nand_fetchqi */
    case 2645:  /* atomic_and_fetchdi */
    case 2644:  /* atomic_xor_fetchdi */
    case 2643:  /* atomic_or_fetchdi */
    case 2642:  /* atomic_sub_fetchdi */
    case 2641:  /* atomic_add_fetchdi */
    case 2640:  /* atomic_and_fetchsi */
    case 2639:  /* atomic_xor_fetchsi */
    case 2638:  /* atomic_or_fetchsi */
    case 2637:  /* atomic_sub_fetchsi */
    case 2636:  /* atomic_add_fetchsi */
    case 2635:  /* atomic_and_fetchhi */
    case 2634:  /* atomic_xor_fetchhi */
    case 2633:  /* atomic_or_fetchhi */
    case 2632:  /* atomic_sub_fetchhi */
    case 2631:  /* atomic_add_fetchhi */
    case 2630:  /* atomic_and_fetchqi */
    case 2629:  /* atomic_xor_fetchqi */
    case 2628:  /* atomic_or_fetchqi */
    case 2627:  /* atomic_sub_fetchqi */
    case 2626:  /* atomic_add_fetchqi */
    case 2625:  /* atomic_fetch_nanddi */
    case 2624:  /* atomic_fetch_nandsi */
    case 2623:  /* atomic_fetch_nandhi */
    case 2622:  /* atomic_fetch_nandqi */
    case 2621:  /* atomic_fetch_anddi */
    case 2620:  /* atomic_fetch_xordi */
    case 2619:  /* atomic_fetch_ordi */
    case 2618:  /* atomic_fetch_subdi */
    case 2617:  /* atomic_fetch_adddi */
    case 2616:  /* atomic_fetch_andsi */
    case 2615:  /* atomic_fetch_xorsi */
    case 2614:  /* atomic_fetch_orsi */
    case 2613:  /* atomic_fetch_subsi */
    case 2612:  /* atomic_fetch_addsi */
    case 2611:  /* atomic_fetch_andhi */
    case 2610:  /* atomic_fetch_xorhi */
    case 2609:  /* atomic_fetch_orhi */
    case 2608:  /* atomic_fetch_subhi */
    case 2607:  /* atomic_fetch_addhi */
    case 2606:  /* atomic_fetch_andqi */
    case 2605:  /* atomic_fetch_xorqi */
    case 2604:  /* atomic_fetch_orqi */
    case 2603:  /* atomic_fetch_subqi */
    case 2602:  /* atomic_fetch_addqi */
    case 2601:  /* atomic_nanddi */
    case 2600:  /* atomic_nandsi */
    case 2599:  /* atomic_nandhi */
    case 2598:  /* atomic_nandqi */
    case 2597:  /* atomic_anddi */
    case 2596:  /* atomic_xordi */
    case 2595:  /* atomic_ordi */
    case 2594:  /* atomic_subdi */
    case 2593:  /* atomic_adddi */
    case 2592:  /* atomic_andsi */
    case 2591:  /* atomic_xorsi */
    case 2590:  /* atomic_orsi */
    case 2589:  /* atomic_subsi */
    case 2588:  /* atomic_addsi */
    case 2587:  /* atomic_andhi */
    case 2586:  /* atomic_xorhi */
    case 2585:  /* atomic_orhi */
    case 2584:  /* atomic_subhi */
    case 2583:  /* atomic_addhi */
    case 2582:  /* atomic_andqi */
    case 2581:  /* atomic_xorqi */
    case 2580:  /* atomic_orqi */
    case 2579:  /* atomic_subqi */
    case 2578:  /* atomic_addqi */
    case 2577:  /* atomic_exchangedi */
    case 2576:  /* atomic_exchangesi */
    case 2575:  /* atomic_exchangehi */
    case 2574:  /* atomic_exchangeqi */
    case 2573:  /* atomic_compare_and_swapdi_1 */
    case 2572:  /* atomic_compare_and_swapsi_1 */
    case 2571:  /* atomic_compare_and_swaphi_1 */
    case 2570:  /* atomic_compare_and_swapqi_1 */
    case 2569:  /* arm_atomic_loaddi2_ldrd */
    case 2568:  /* atomic_storesi */
    case 2567:  /* atomic_storehi */
    case 2566:  /* atomic_storeqi */
    case 2565:  /* atomic_loadsi */
    case 2564:  /* atomic_loadhi */
    case 2563:  /* atomic_loadqi */
    case 2562:  /* *memory_barrier */
    case 885:  /* thumb2_eh_return */
    case 828:  /* *cstoresi_ne0_thumb1_insn */
    case 720:  /* *cmpdf_trap_split_vfp */
    case 719:  /* *cmpdf_split_vfp */
    case 718:  /* *cmpsf_trap_split_vfp */
    case 717:  /* *cmpsf_split_vfp */
    case 625:  /* iwmmxt_textrcv8qi3 */
    case 624:  /* iwmmxt_textrcv4hi3 */
    case 623:  /* iwmmxt_textrcv2si3 */
    case 622:  /* iwmmxt_torvscv8qi3 */
    case 621:  /* iwmmxt_torvscv4hi3 */
    case 620:  /* iwmmxt_torvscv2si3 */
    case 619:  /* iwmmxt_torcv8qi3 */
    case 618:  /* iwmmxt_torcv4hi3 */
    case 617:  /* iwmmxt_torcv2si3 */
    case 616:  /* iwmmxt_tandcv8qi3 */
    case 615:  /* iwmmxt_tandcv4hi3 */
    case 614:  /* iwmmxt_tandcv2si3 */
    case 613:  /* iwmmxt_wmerge */
    case 612:  /* iwmmxt_wmiawttn */
    case 611:  /* iwmmxt_wmiawtbn */
    case 610:  /* iwmmxt_wmiawbtn */
    case 609:  /* iwmmxt_wmiawbbn */
    case 608:  /* iwmmxt_wmiawtt */
    case 607:  /* iwmmxt_wmiawtb */
    case 606:  /* iwmmxt_wmiawbt */
    case 605:  /* iwmmxt_wmiawbb */
    case 604:  /* iwmmxt_wmiattn */
    case 603:  /* iwmmxt_wmiatbn */
    case 602:  /* iwmmxt_wmiabtn */
    case 601:  /* iwmmxt_wmiabbn */
    case 600:  /* iwmmxt_wmiatt */
    case 599:  /* iwmmxt_wmiatb */
    case 598:  /* iwmmxt_wmiabt */
    case 597:  /* iwmmxt_wmiabb */
    case 596:  /* iwmmxt_wqmiattn */
    case 595:  /* iwmmxt_wqmiatbn */
    case 594:  /* iwmmxt_wqmiabtn */
    case 593:  /* iwmmxt_wqmiabbn */
    case 592:  /* iwmmxt_wqmiatt */
    case 591:  /* iwmmxt_wqmiatb */
    case 590:  /* iwmmxt_wqmiabt */
    case 589:  /* iwmmxt_wqmiabb */
    case 588:  /* iwmmxt_waddbhusl */
    case 587:  /* iwmmxt_waddbhusm */
    case 586:  /* iwmmxt_wqmulwmr */
    case 585:  /* iwmmxt_wqmulmr */
    case 584:  /* iwmmxt_wqmulwm */
    case 583:  /* iwmmxt_wqmulm */
    case 582:  /* iwmmxt_wmulwl */
    case 581:  /* iwmmxt_wmulwumr */
    case 580:  /* iwmmxt_wmulwsmr */
    case 579:  /* iwmmxt_wmulumr */
    case 578:  /* iwmmxt_wmulsmr */
    case 577:  /* iwmmxt_wmulwum */
    case 576:  /* iwmmxt_wmulwsm */
    case 575:  /* iwmmxt_wmaddun */
    case 574:  /* iwmmxt_wmaddsn */
    case 573:  /* iwmmxt_wmaddux */
    case 572:  /* iwmmxt_wmaddsx */
    case 571:  /* iwmmxt_avg4r */
    case 570:  /* iwmmxt_avg4 */
    case 569:  /* addcv2si3 */
    case 568:  /* addcv4hi3 */
    case 567:  /* iwmmxt_wsubaddhx */
    case 566:  /* iwmmxt_waddsubhx */
    case 565:  /* iwmmxt_wabsdiffw */
    case 564:  /* iwmmxt_wabsdiffh */
    case 563:  /* iwmmxt_wabsdiffb */
    case 562:  /* iwmmxt_wabsv8qi3 */
    case 561:  /* iwmmxt_wabsv4hi3 */
    case 560:  /* iwmmxt_wabsv2si3 */
    case 559:  /* iwmmxt_wsadhz */
    case 558:  /* iwmmxt_wsadbz */
    case 557:  /* iwmmxt_wsadh */
    case 556:  /* iwmmxt_wsadb */
    case 555:  /* iwmmxt_walignr3 */
    case 554:  /* iwmmxt_walignr2 */
    case 553:  /* iwmmxt_walignr1 */
    case 552:  /* iwmmxt_walignr0 */
    case 551:  /* iwmmxt_walignr */
    case 550:  /* iwmmxt_waligni */
    case 549:  /* iwmmxt_waccw */
    case 548:  /* iwmmxt_wacch */
    case 547:  /* iwmmxt_waccb */
    case 546:  /* iwmmxt_tmovmskw */
    case 545:  /* iwmmxt_tmovmskh */
    case 544:  /* iwmmxt_tmovmskb */
    case 543:  /* iwmmxt_tmiatt */
    case 542:  /* iwmmxt_tmiabt */
    case 541:  /* iwmmxt_tmiatb */
    case 540:  /* iwmmxt_tmiabb */
    case 539:  /* iwmmxt_tmiaph */
    case 538:  /* iwmmxt_tmia */
    case 537:  /* iwmmxt_wmaddu */
    case 536:  /* iwmmxt_wmadds */
    case 535:  /* ashldi3_di */
    case 534:  /* ashlv2si3_di */
    case 533:  /* ashlv4hi3_di */
    case 532:  /* lshrdi3_di */
    case 531:  /* lshrv2si3_di */
    case 530:  /* lshrv4hi3_di */
    case 529:  /* ashrdi3_di */
    case 528:  /* ashrv2si3_di */
    case 527:  /* ashrv4hi3_di */
    case 526:  /* rordi3_di */
    case 525:  /* rorv2si3_di */
    case 524:  /* rorv4hi3_di */
    case 523:  /* ashldi3_iwmmxt */
    case 522:  /* ashlv2si3_iwmmxt */
    case 521:  /* ashlv4hi3_iwmmxt */
    case 520:  /* lshrdi3_iwmmxt */
    case 519:  /* lshrv2si3_iwmmxt */
    case 518:  /* lshrv4hi3_iwmmxt */
    case 517:  /* ashrdi3_iwmmxt */
    case 516:  /* ashrv2si3_iwmmxt */
    case 515:  /* ashrv4hi3_iwmmxt */
    case 514:  /* rordi3 */
    case 513:  /* rorv2si3 */
    case 512:  /* rorv4hi3 */
    case 511:  /* iwmmxt_wunpckelsw */
    case 510:  /* iwmmxt_wunpckelsh */
    case 509:  /* iwmmxt_wunpckelsb */
    case 508:  /* iwmmxt_wunpckeluw */
    case 507:  /* iwmmxt_wunpckeluh */
    case 506:  /* iwmmxt_wunpckelub */
    case 505:  /* iwmmxt_wunpckehsw */
    case 504:  /* iwmmxt_wunpckehsh */
    case 503:  /* iwmmxt_wunpckehsb */
    case 502:  /* iwmmxt_wunpckehuw */
    case 501:  /* iwmmxt_wunpckehuh */
    case 500:  /* iwmmxt_wunpckehub */
    case 499:  /* iwmmxt_wunpckilw */
    case 498:  /* iwmmxt_wunpckilh */
    case 497:  /* iwmmxt_wunpckilb */
    case 496:  /* iwmmxt_wunpckihw */
    case 495:  /* iwmmxt_wunpckihh */
    case 494:  /* iwmmxt_wunpckihb */
    case 493:  /* iwmmxt_wpackdus */
    case 492:  /* iwmmxt_wpackwus */
    case 491:  /* iwmmxt_wpackhus */
    case 490:  /* iwmmxt_wpackdss */
    case 489:  /* iwmmxt_wpackwss */
    case 488:  /* iwmmxt_wpackhss */
    case 487:  /* *uminv8qi3_iwmmxt */
    case 486:  /* *uminv4hi3_iwmmxt */
    case 485:  /* *uminv2si3_iwmmxt */
    case 484:  /* *sminv8qi3_iwmmxt */
    case 483:  /* *sminv4hi3_iwmmxt */
    case 482:  /* *sminv2si3_iwmmxt */
    case 481:  /* *umaxv8qi3_iwmmxt */
    case 480:  /* *umaxv4hi3_iwmmxt */
    case 479:  /* *umaxv2si3_iwmmxt */
    case 478:  /* *smaxv8qi3_iwmmxt */
    case 477:  /* *smaxv4hi3_iwmmxt */
    case 476:  /* *smaxv2si3_iwmmxt */
    case 475:  /* gtv2si3 */
    case 474:  /* gtv4hi3 */
    case 473:  /* gtv8qi3 */
    case 472:  /* gtuv2si3 */
    case 471:  /* gtuv4hi3 */
    case 470:  /* gtuv8qi3 */
    case 469:  /* eqv2si3 */
    case 468:  /* eqv4hi3 */
    case 467:  /* eqv8qi3 */
    case 466:  /* iwmmxt_wshufh */
    case 465:  /* iwmmxt_textrmw */
    case 464:  /* iwmmxt_textrmsh */
    case 463:  /* iwmmxt_textrmuh */
    case 462:  /* iwmmxt_textrmsb */
    case 461:  /* iwmmxt_textrmub */
    case 460:  /* iwmmxt_tinsrw */
    case 459:  /* iwmmxt_tinsrh */
    case 458:  /* iwmmxt_tinsrb */
    case 457:  /* iwmmxt_uavgv4hi3 */
    case 456:  /* iwmmxt_uavgv8qi3 */
    case 455:  /* iwmmxt_uavgrndv4hi3 */
    case 454:  /* iwmmxt_uavgrndv8qi3 */
    case 453:  /* iwmmxt_clrv2si */
    case 452:  /* iwmmxt_clrv4hi */
    case 451:  /* iwmmxt_clrv8qi */
    case 450:  /* iwmmxt_clrdi */
    case 449:  /* iwmmxt_wmacuz */
    case 448:  /* iwmmxt_wmacu */
    case 447:  /* iwmmxt_wmacsz */
    case 446:  /* iwmmxt_wmacs */
    case 445:  /* umulv4hi3_highpart */
    case 444:  /* smulv4hi3_highpart */
    case 443:  /* *mulv4hi3_iwmmxt */
    case 442:  /* ussubv2si3 */
    case 441:  /* ussubv4hi3 */
    case 440:  /* ussubv8qi3 */
    case 439:  /* sssubv2si3 */
    case 438:  /* sssubv4hi3 */
    case 437:  /* sssubv8qi3 */
    case 436:  /* *subv8qi3_iwmmxt */
    case 435:  /* *subv4hi3_iwmmxt */
    case 434:  /* *subv2si3_iwmmxt */
    case 433:  /* usaddv2si3 */
    case 432:  /* usaddv4hi3 */
    case 431:  /* usaddv8qi3 */
    case 430:  /* ssaddv2si3 */
    case 429:  /* ssaddv4hi3 */
    case 428:  /* ssaddv8qi3 */
    case 427:  /* *addv8qi3_iwmmxt */
    case 426:  /* *addv4hi3_iwmmxt */
    case 425:  /* *addv2si3_iwmmxt */
    case 424:  /* *xorv8qi3_iwmmxt */
    case 423:  /* *xorv4hi3_iwmmxt */
    case 422:  /* *xorv2si3_iwmmxt */
    case 421:  /* *iorv8qi3_iwmmxt */
    case 420:  /* *iorv4hi3_iwmmxt */
    case 419:  /* *iorv2si3_iwmmxt */
    case 418:  /* *andv8qi3_iwmmxt */
    case 417:  /* *andv4hi3_iwmmxt */
    case 416:  /* *andv2si3_iwmmxt */
    case 409:  /* iwmmxt_nanddi3 */
    case 408:  /* iwmmxt_anddi3 */
    case 407:  /* iwmmxt_xordi3 */
    case 406:  /* iwmmxt_iordi3 */
    case 405:  /* tbcstv2si */
    case 404:  /* tbcstv4hi */
    case 403:  /* tbcstv8qi */
    case 402:  /* *load_multiple */
    case 323:  /* arm_eh_return */
    case 320:  /* ctzsi2 */
    case 237:  /* trap */
      return 0;

    case 842:  /* *epilogue_insns */
    case 304:  /* stack_tie */
    case 230:  /* blockage */
      if (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57))))
        {
	  return 1;
        }
      else
        {
	  return 0;
        }

    case 2550:  /* crypto_aese */
    case 2549:  /* crypto_aesd */
    case 211:  /* *cmovhf */
    case 210:  /* *cmovdf */
    case 209:  /* *cmovsf */
      if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA53)))) || ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1))))))
        {
	  return 1;
        }
      else
        {
	  return 0;
        }

    case 3782:  /* *p *stm2_db_update */
    case 3781:  /* *p *stm2_db */
    case 3778:  /* *p *stm2_da_update */
    case 3777:  /* *p *stm2_da */
    case 3774:  /* *p *stm2_ib_update */
    case 3773:  /* *p *stm2_ib */
    case 3770:  /* *p *stm2_ia_update */
    case 3769:  /* *p *stm2_ */
    case 3766:  /* *p *stm3_db_update */
    case 3765:  /* *p *stm3_db */
    case 3762:  /* *p *stm3_da_update */
    case 3761:  /* *p *stm3_da */
    case 3758:  /* *p *stm3_ib_update */
    case 3757:  /* *p *stm3_ib */
    case 3754:  /* *p *stm3_ia_update */
    case 3753:  /* *p *stm3_ */
    case 3750:  /* *p *stm4_db_update */
    case 3749:  /* *p *stm4_db */
    case 3746:  /* *p *stm4_da_update */
    case 3745:  /* *p *stm4_da */
    case 3742:  /* *p *stm4_ib_update */
    case 3741:  /* *p *stm4_ib */
    case 3738:  /* *p *stm4_ia_update */
    case 3737:  /* *p *stm4_ */
    case 3734:  /* *p *thumb2_strd_base_neg */
    case 3733:  /* *p *thumb2_strd_base */
    case 3732:  /* *p *thumb2_strd */
    case 3706:  /* *p *arm_indirect_jump */
    case 3705:  /* *p probe_stack */
    case 3704:  /* *p *arm_simple_return */
    case 3702:  /* *p *arm_jump */
    case 3666:  /* *p udivsi3 */
    case 3665:  /* *p divsi3 */
    case 3662:  /* *p unaligned_storehi */
    case 3661:  /* *p unaligned_storesi */
    case 2561:  /* crypto_sha1p */
    case 2560:  /* crypto_sha1m */
    case 2559:  /* crypto_sha1c */
    case 2558:  /* crypto_vmullp64 */
    case 2557:  /* crypto_sha1h */
    case 2556:  /* crypto_sha256su1 */
    case 2555:  /* crypto_sha256h2 */
    case 2554:  /* crypto_sha256h */
    case 2553:  /* crypto_sha1su0 */
    case 2552:  /* crypto_sha256su0 */
    case 2551:  /* crypto_sha1su1 */
    case 2548:  /* crypto_aesimc */
    case 2547:  /* crypto_aesmc */
    case 1161:  /* neon_vrndxv4hf */
    case 1160:  /* neon_vrndpv4hf */
    case 1159:  /* neon_vrndnv4hf */
    case 1158:  /* neon_vrndmv4hf */
    case 1157:  /* neon_vrndav4hf */
    case 1156:  /* neon_vrndv4hf */
    case 1155:  /* neon_vrndxv8hf */
    case 1154:  /* neon_vrndpv8hf */
    case 1153:  /* neon_vrndnv8hf */
    case 1152:  /* neon_vrndmv8hf */
    case 1151:  /* neon_vrndav8hf */
    case 1150:  /* neon_vrndv8hf */
    case 1048:  /* neon_vrintnv4sf */
    case 1047:  /* neon_vrintav4sf */
    case 1046:  /* neon_vrintxv4sf */
    case 1045:  /* neon_vrintmv4sf */
    case 1044:  /* neon_vrintzv4sf */
    case 1043:  /* neon_vrintpv4sf */
    case 1042:  /* neon_vrintnv2sf */
    case 1041:  /* neon_vrintav2sf */
    case 1040:  /* neon_vrintxv2sf */
    case 1039:  /* neon_vrintmv2sf */
    case 1038:  /* neon_vrintzv2sf */
    case 1037:  /* neon_vrintpv2sf */
    case 884:  /* *thumb2_return */
    case 869:  /* *thumb2_indirect_jump */
    case 868:  /* *call_value_reg_thumb2 */
    case 867:  /* *call_reg_thumb2 */
    case 858:  /* *thumb2_storewb_pairsi */
    case 840:  /* *thumb1_indirect_jump */
    case 838:  /* *call_value_insn */
    case 837:  /* *call_insn */
    case 836:  /* *call_value_reg_thumb1 */
    case 835:  /* *call_value_reg_thumb1_v5 */
    case 834:  /* *call_reg_thumb1 */
    case 833:  /* *call_reg_thumb1_v5 */
    case 832:  /* *thumb_jump */
    case 815:  /* movmem8b */
    case 814:  /* movmem12b */
    case 657:  /* neon_vrndihf */
    case 656:  /* neon_vrndxhf */
    case 655:  /* neon_vrndphf */
    case 654:  /* neon_vrndnhf */
    case 653:  /* neon_vrndmhf */
    case 652:  /* neon_vrndahf */
    case 651:  /* neon_vrndhf */
    case 401:  /* *stm2_db_update */
    case 400:  /* *stm2_db */
    case 397:  /* *stm2_da_update */
    case 396:  /* *stm2_da */
    case 393:  /* *stm2_ib_update */
    case 392:  /* *stm2_ib */
    case 389:  /* *thumb_stm2_ia_update */
    case 388:  /* *stm2_ia_update */
    case 387:  /* *stm2_ */
    case 382:  /* *stm3_db_update */
    case 381:  /* *stm3_db */
    case 378:  /* *stm3_da_update */
    case 377:  /* *stm3_da */
    case 374:  /* *stm3_ib_update */
    case 373:  /* *stm3_ib */
    case 370:  /* *thumb_stm3_ia_update */
    case 369:  /* *stm3_ia_update */
    case 368:  /* *stm3_ */
    case 363:  /* *stm4_db_update */
    case 362:  /* *stm4_db */
    case 359:  /* *stm4_da_update */
    case 358:  /* *stm4_da */
    case 355:  /* *stm4_ib_update */
    case 354:  /* *stm4_ib */
    case 351:  /* *thumb_stm4_ia_update */
    case 350:  /* *stm4_ia_update */
    case 349:  /* *stm4_ */
    case 338:  /* *thumb2_strd_base_neg */
    case 337:  /* *thumb2_strd_base */
    case 336:  /* *thumb2_strd */
    case 326:  /* tlscall */
    case 325:  /* load_tp_soft */
    case 303:  /* *push_multi */
    case 234:  /* *arm_indirect_jump */
    case 231:  /* probe_stack */
    case 228:  /* *arm_simple_return */
    case 222:  /* *sibcall_value_insn */
    case 221:  /* *sibcall_insn */
    case 220:  /* *call_value_symbol */
    case 219:  /* *call_symbol */
    case 218:  /* *call_value_reg_arm */
    case 217:  /* *call_value_reg_armv5 */
    case 216:  /* *call_reg_arm */
    case 215:  /* *call_reg_armv5 */
    case 214:  /* *arm_jump */
    case 205:  /* *arm_cond_branch_reversed */
    case 204:  /* arm_cond_branch */
    case 146:  /* udivsi3 */
    case 145:  /* divsi3 */
    case 142:  /* unaligned_storehi */
    case 141:  /* unaligned_storesi */
    case 122:  /* *store_minmaxsi */
    case 121:  /* *arm_uminsi3 */
    case 120:  /* *arm_umaxsi3 */
      if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))))
        {
	  return 1;
        }
      else
        {
	  return 0;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
    default:
      if (((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1020E)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1022E))))) && (((cached_type = get_attr_type (insn)) == TYPE_LOAD_BYTE) || (cached_type == TYPE_LOAD1)))
        {
	  return 1;
        }
      else if (((((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1020E)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1022E))))) && (((
#line 106 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_fpu_attr)) == (
(FPU_VFP)))))) && (((cached_type = get_attr_type (insn)) == TYPE_FMOV) || ((cached_type == TYPE_FFARITHS) || ((cached_type == TYPE_FFARITHD) || ((cached_type == TYPE_FCMPS) || (cached_type == TYPE_FCMPD))))))
        {
	  return 1;
        }
      else if (((((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1020E)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1022E))))) && (((
#line 106 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_fpu_attr)) == (
(FPU_VFP)))))) && (((cached_type = get_attr_type (insn)) == TYPE_FADDD) || (cached_type == TYPE_FADDS)))
        {
	  return 1;
        }
      else if (((((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1020E)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1022E))))) && (((
#line 106 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_fpu_attr)) == (
(FPU_VFP)))))) && (((cached_type = get_attr_type (insn)) == TYPE_FMULS) || ((cached_type == TYPE_FMACS) || ((cached_type == TYPE_FFMAS) || ((cached_type == TYPE_FMULD) || ((cached_type == TYPE_FMACD) || (cached_type == TYPE_FFMAD)))))))
        {
	  return 1;
        }
      else if (((((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1020E)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1022E))))) && (((
#line 106 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_fpu_attr)) == (
(FPU_VFP)))))) && (((cached_type = get_attr_type (insn)) == TYPE_FDIVS) || (cached_type == TYPE_FSQRTS)))
        {
	  return 1;
        }
      else if (((((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1020E)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1022E))))) && (((
#line 106 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_fpu_attr)) == (
(FPU_VFP)))))) && (((cached_type = get_attr_type (insn)) == TYPE_FDIVD) || (cached_type == TYPE_FSQRTD)))
        {
	  return 1;
        }
      else if (((((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1020E)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1022E))))) && (((
#line 106 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_fpu_attr)) == (
(FPU_VFP)))))) && ((cached_type = get_attr_type (insn)) == TYPE_F_LOADS))
        {
	  return 1;
        }
      else if (((((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1020E)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1022E))))) && (((
#line 106 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_fpu_attr)) == (
(FPU_VFP)))))) && ((cached_type = get_attr_type (insn)) == TYPE_F_LOADD))
        {
	  return 1;
        }
      else if (((((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1020E)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1022E))))) && (((
#line 106 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_fpu_attr)) == (
(FPU_VFP)))))) && (((cached_type = get_attr_type (insn)) == TYPE_F_MCR) || (cached_type == TYPE_F_MCRR)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1026EJS)))) && (((cached_type = get_attr_type (insn)) == TYPE_LOAD_BYTE) || (cached_type == TYPE_LOAD1)))
        {
	  return 1;
        }
      else if (((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1136JS)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1136JFS))))) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_IMM) || ((cached_type == TYPE_ALUS_IMM) || ((cached_type == TYPE_LOGIC_IMM) || ((cached_type == TYPE_LOGICS_IMM) || ((cached_type == TYPE_ALU_SREG) || ((cached_type == TYPE_ALUS_SREG) || ((cached_type == TYPE_LOGIC_REG) || ((cached_type == TYPE_LOGICS_REG) || ((cached_type == TYPE_ADC_IMM) || ((cached_type == TYPE_ADCS_IMM) || ((cached_type == TYPE_ADC_REG) || ((cached_type == TYPE_ADCS_REG) || ((cached_type == TYPE_ADR) || ((cached_type == TYPE_BFM) || ((cached_type == TYPE_REV) || ((cached_type == TYPE_SHIFT_IMM) || ((cached_type == TYPE_SHIFT_REG) || ((cached_type == TYPE_MOV_IMM) || ((cached_type == TYPE_MOV_REG) || ((cached_type == TYPE_MVN_IMM) || ((cached_type == TYPE_MVN_REG) || ((cached_type == TYPE_MULTIPLE) || (cached_type == TYPE_NO_INSN))))))))))))))))))))))))
        {
	  return 1;
        }
      else if (((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1136JS)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1136JFS))))) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_SHIFT_IMM) || ((cached_type == TYPE_ALUS_SHIFT_IMM) || ((cached_type == TYPE_LOGIC_SHIFT_IMM) || ((cached_type == TYPE_LOGICS_SHIFT_IMM) || ((cached_type == TYPE_EXTEND) || ((cached_type == TYPE_MOV_SHIFT) || (cached_type == TYPE_MVN_SHIFT))))))))
        {
	  return 1;
        }
      else if (((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1136JS)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1136JFS))))) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_SHIFT_REG) || ((cached_type == TYPE_ALUS_SHIFT_REG) || ((cached_type == TYPE_LOGIC_SHIFT_REG) || ((cached_type == TYPE_LOGICS_SHIFT_REG) || ((cached_type == TYPE_MOV_SHIFT_REG) || (cached_type == TYPE_MVN_SHIFT_REG)))))))
        {
	  return 1;
        }
      else if (((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1136JS)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1136JFS))))) && (((cached_type = get_attr_type (insn)) == TYPE_MUL) || (cached_type == TYPE_MLA)))
        {
	  return 1;
        }
      else if (((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1136JS)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1136JFS))))) && (((cached_type = get_attr_type (insn)) == TYPE_MULS) || (cached_type == TYPE_MLAS)))
        {
	  return 1;
        }
      else if (((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1136JS)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1136JFS))))) && (((cached_type = get_attr_type (insn)) == TYPE_SMULL) || ((cached_type == TYPE_UMULL) || ((cached_type == TYPE_SMLAL) || (cached_type == TYPE_UMLAL)))))
        {
	  return 1;
        }
      else if (((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1136JS)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1136JFS))))) && (((cached_type = get_attr_type (insn)) == TYPE_SMULLS) || ((cached_type == TYPE_UMULLS) || ((cached_type == TYPE_SMLALS) || (cached_type == TYPE_UMLALS)))))
        {
	  return 1;
        }
      else if (((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1136JS)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1136JFS))))) && (((cached_type = get_attr_type (insn)) == TYPE_SMULXY) || ((cached_type == TYPE_SMLAXY) || ((cached_type == TYPE_SMULWY) || ((cached_type == TYPE_SMLAWY) || ((cached_type == TYPE_SMUAD) || ((cached_type == TYPE_SMUADX) || ((cached_type == TYPE_SMLAD) || ((cached_type == TYPE_SMLADX) || ((cached_type == TYPE_SMUSD) || ((cached_type == TYPE_SMUSDX) || ((cached_type == TYPE_SMLSD) || (cached_type == TYPE_SMLSDX)))))))))))))
        {
	  return 1;
        }
      else if (((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1136JS)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1136JFS))))) && ((cached_type = get_attr_type (insn)) == TYPE_SMLALXY))
        {
	  return 1;
        }
      else if (((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1136JS)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1136JFS))))) && (((cached_type = get_attr_type (insn)) == TYPE_SMMUL) || (cached_type == TYPE_SMMULR)))
        {
	  return 1;
        }
      else if (((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1136JS)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1136JFS))))) && ((cached_type = get_attr_type (insn)) == TYPE_LOAD1))
        {
	  return 1;
        }
      else if (((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1136JS)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1136JFS))))) && ((cached_type = get_attr_type (insn)) == TYPE_LOAD_BYTE))
        {
	  return 1;
        }
      else if (((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1136JS)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1136JFS))))) && ((cached_type = get_attr_type (insn)) == TYPE_LOAD2))
        {
	  return 1;
        }
      else if (((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1136JS)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_ARM1136JFS))))) && (((cached_type = get_attr_type (insn)) == TYPE_LOAD3) || (cached_type == TYPE_LOAD4)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_FMP626)))) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_IMM) || ((cached_type == TYPE_ALUS_IMM) || ((cached_type == TYPE_ALU_SREG) || ((cached_type == TYPE_ALUS_SREG) || ((cached_type == TYPE_LOGIC_IMM) || ((cached_type == TYPE_LOGICS_IMM) || ((cached_type == TYPE_LOGIC_REG) || ((cached_type == TYPE_LOGICS_REG) || ((cached_type == TYPE_ADC_IMM) || ((cached_type == TYPE_ADCS_IMM) || ((cached_type == TYPE_ADC_REG) || ((cached_type == TYPE_ADCS_REG) || ((cached_type == TYPE_ADR) || ((cached_type == TYPE_BFM) || ((cached_type == TYPE_REV) || ((cached_type == TYPE_SHIFT_IMM) || ((cached_type == TYPE_SHIFT_REG) || ((cached_type == TYPE_MOV_IMM) || ((cached_type == TYPE_MOV_REG) || ((cached_type == TYPE_MVN_IMM) || (cached_type == TYPE_MVN_REG))))))))))))))))))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_FMP626)))) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_SHIFT_IMM) || ((cached_type == TYPE_LOGIC_SHIFT_IMM) || ((cached_type == TYPE_ALUS_SHIFT_IMM) || ((cached_type == TYPE_LOGICS_SHIFT_IMM) || ((cached_type == TYPE_ALU_SHIFT_REG) || ((cached_type == TYPE_LOGIC_SHIFT_REG) || ((cached_type == TYPE_ALUS_SHIFT_REG) || ((cached_type == TYPE_LOGICS_SHIFT_REG) || ((cached_type == TYPE_EXTEND) || ((cached_type == TYPE_MOV_SHIFT) || ((cached_type == TYPE_MOV_SHIFT_REG) || ((cached_type == TYPE_MVN_SHIFT) || (cached_type == TYPE_MVN_SHIFT_REG))))))))))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_FMP626)))) && (((cached_type = get_attr_type (insn)) == TYPE_SMULWY) || ((cached_type == TYPE_SMLAWY) || ((cached_type == TYPE_SMULXY) || (cached_type == TYPE_SMLAXY)))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_FMP626)))) && (((cached_type = get_attr_type (insn)) == TYPE_MUL) || (cached_type == TYPE_MLA)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_FMP626)))) && (((cached_type = get_attr_type (insn)) == TYPE_MULS) || ((cached_type == TYPE_MLAS) || ((cached_type == TYPE_SMULL) || ((cached_type == TYPE_SMLAL) || ((cached_type == TYPE_UMULL) || ((cached_type == TYPE_UMLAL) || ((cached_type == TYPE_SMLALXY) || (cached_type == TYPE_SMLAWX)))))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_FMP626)))) && (((cached_type = get_attr_type (insn)) == TYPE_SMULLS) || ((cached_type == TYPE_SMLALS) || ((cached_type == TYPE_UMULLS) || (cached_type == TYPE_UMLALS)))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_FMP626)))) && (((cached_type = get_attr_type (insn)) == TYPE_LOAD1) || (cached_type == TYPE_LOAD_BYTE)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_FMP626)))) && (((cached_type = get_attr_type (insn)) == TYPE_LOAD2) || (cached_type == TYPE_LOAD3)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_FMP626)))) && ((cached_type = get_attr_type (insn)) == TYPE_LOAD4))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_FA726TE)))) && (((cached_type = get_attr_type (insn)) == TYPE_MOV_IMM) || ((cached_type == TYPE_MOV_REG) || ((cached_type == TYPE_MOV_SHIFT) || ((cached_type == TYPE_MOV_SHIFT_REG) || ((cached_type == TYPE_MVN_IMM) || ((cached_type == TYPE_MVN_REG) || ((cached_type == TYPE_MVN_SHIFT) || (cached_type == TYPE_MVN_SHIFT_REG)))))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_FA726TE)))) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_IMM) || ((cached_type == TYPE_ALUS_IMM) || ((cached_type == TYPE_LOGIC_IMM) || ((cached_type == TYPE_LOGICS_IMM) || ((cached_type == TYPE_ALU_SREG) || ((cached_type == TYPE_ALUS_SREG) || ((cached_type == TYPE_LOGIC_REG) || ((cached_type == TYPE_LOGICS_REG) || ((cached_type == TYPE_ADC_IMM) || ((cached_type == TYPE_ADCS_IMM) || ((cached_type == TYPE_ADC_REG) || ((cached_type == TYPE_ADCS_REG) || ((cached_type == TYPE_ADR) || ((cached_type == TYPE_BFM) || ((cached_type == TYPE_REV) || ((cached_type == TYPE_SHIFT_IMM) || ((cached_type == TYPE_SHIFT_REG) || ((cached_type == TYPE_MRS) || ((cached_type == TYPE_MULTIPLE) || (cached_type == TYPE_NO_INSN)))))))))))))))))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_FA726TE)))) && (((cached_type = get_attr_type (insn)) == TYPE_EXTEND) || ((cached_type == TYPE_ALU_SHIFT_IMM) || ((cached_type == TYPE_ALUS_SHIFT_IMM) || ((cached_type == TYPE_LOGIC_SHIFT_IMM) || (cached_type == TYPE_LOGICS_SHIFT_IMM))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_FA726TE)))) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_SHIFT_REG) || ((cached_type == TYPE_ALUS_SHIFT_REG) || ((cached_type == TYPE_LOGIC_SHIFT_REG) || (cached_type == TYPE_LOGICS_SHIFT_REG)))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_FA726TE)))) && (((cached_type = get_attr_type (insn)) == TYPE_SMLALXY) || ((cached_type == TYPE_MUL) || ((cached_type == TYPE_MLA) || ((cached_type == TYPE_MULS) || ((cached_type == TYPE_MLAS) || ((cached_type == TYPE_UMULL) || ((cached_type == TYPE_UMLAL) || ((cached_type == TYPE_SMULL) || ((cached_type == TYPE_SMLAL) || ((cached_type == TYPE_UMULLS) || ((cached_type == TYPE_UMLALS) || ((cached_type == TYPE_SMULLS) || ((cached_type == TYPE_SMLALS) || ((cached_type == TYPE_SMLAWX) || ((cached_type == TYPE_SMULXY) || (cached_type == TYPE_SMLAXY)))))))))))))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_FA726TE)))) && (((cached_type = get_attr_type (insn)) == TYPE_LOAD1) || (cached_type == TYPE_LOAD_BYTE)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_FA726TE)))) && (((cached_type = get_attr_type (insn)) == TYPE_LOAD2) || (cached_type == TYPE_LOAD3)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_FA726TE)))) && ((cached_type = get_attr_type (insn)) == TYPE_LOAD4))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA5)))) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_IMM) || ((cached_type == TYPE_ALUS_IMM) || ((cached_type == TYPE_LOGIC_IMM) || ((cached_type == TYPE_LOGICS_IMM) || ((cached_type == TYPE_ALU_SREG) || ((cached_type == TYPE_ALUS_SREG) || ((cached_type == TYPE_LOGIC_REG) || ((cached_type == TYPE_LOGICS_REG) || ((cached_type == TYPE_ADC_IMM) || ((cached_type == TYPE_ADCS_IMM) || ((cached_type == TYPE_ADC_REG) || ((cached_type == TYPE_ADCS_REG) || ((cached_type == TYPE_ADR) || ((cached_type == TYPE_BFM) || ((cached_type == TYPE_CLZ) || ((cached_type == TYPE_RBIT) || ((cached_type == TYPE_REV) || ((cached_type == TYPE_ALU_DSP_REG) || ((cached_type == TYPE_SHIFT_IMM) || ((cached_type == TYPE_SHIFT_REG) || ((cached_type == TYPE_MOV_IMM) || ((cached_type == TYPE_MOV_REG) || ((cached_type == TYPE_MVN_IMM) || ((cached_type == TYPE_MVN_REG) || ((cached_type == TYPE_MRS) || ((cached_type == TYPE_MULTIPLE) || (cached_type == TYPE_NO_INSN))))))))))))))))))))))))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA5)))) && (((cached_type = get_attr_type (insn)) == TYPE_EXTEND) || ((cached_type == TYPE_ALU_SHIFT_IMM) || ((cached_type == TYPE_ALUS_SHIFT_IMM) || ((cached_type == TYPE_LOGIC_SHIFT_IMM) || ((cached_type == TYPE_LOGICS_SHIFT_IMM) || ((cached_type == TYPE_ALU_SHIFT_REG) || ((cached_type == TYPE_ALUS_SHIFT_REG) || ((cached_type == TYPE_LOGIC_SHIFT_REG) || ((cached_type == TYPE_LOGICS_SHIFT_REG) || ((cached_type == TYPE_MOV_SHIFT) || ((cached_type == TYPE_MOV_SHIFT_REG) || ((cached_type == TYPE_MVN_SHIFT) || (cached_type == TYPE_MVN_SHIFT_REG))))))))))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA5)))) && ((cached_type = get_attr_type (insn)) == TYPE_F_LOADS))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA5)))) && ((cached_type = get_attr_type (insn)) == TYPE_F_LOADD))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA7)))) && ((((cached_type = get_attr_type (insn)) == TYPE_ADR) || ((cached_type == TYPE_ALU_IMM) || ((cached_type == TYPE_ALUS_IMM) || ((cached_type == TYPE_LOGIC_IMM) || ((cached_type == TYPE_LOGICS_IMM) || ((cached_type == TYPE_MOV_IMM) || ((cached_type == TYPE_MVN_IMM) || (cached_type == TYPE_EXTEND)))))))) || (((cached_type == TYPE_MOV_REG) || ((cached_type == TYPE_MOV_SHIFT) || (cached_type == TYPE_MOV_SHIFT_REG))) && (! (get_attr_length (insn) == 8)))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA7)))) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_SREG) || ((cached_type == TYPE_ALUS_SREG) || ((cached_type == TYPE_LOGIC_REG) || ((cached_type == TYPE_LOGICS_REG) || ((cached_type == TYPE_ADC_IMM) || ((cached_type == TYPE_ADCS_IMM) || ((cached_type == TYPE_ADC_REG) || ((cached_type == TYPE_ADCS_REG) || ((cached_type == TYPE_BFM) || ((cached_type == TYPE_CLZ) || ((cached_type == TYPE_RBIT) || ((cached_type == TYPE_REV) || ((cached_type == TYPE_ALU_DSP_REG) || ((cached_type == TYPE_SHIFT_IMM) || ((cached_type == TYPE_SHIFT_REG) || ((cached_type == TYPE_MOV_REG) || (cached_type == TYPE_MVN_REG))))))))))))))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA7)))) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_SHIFT_IMM) || ((cached_type == TYPE_ALUS_SHIFT_IMM) || ((cached_type == TYPE_LOGIC_SHIFT_IMM) || ((cached_type == TYPE_LOGICS_SHIFT_IMM) || ((cached_type == TYPE_ALU_SHIFT_REG) || ((cached_type == TYPE_ALUS_SHIFT_REG) || ((cached_type == TYPE_LOGIC_SHIFT_REG) || ((cached_type == TYPE_LOGICS_SHIFT_REG) || ((cached_type == TYPE_MOV_SHIFT) || ((cached_type == TYPE_MOV_SHIFT_REG) || ((cached_type == TYPE_MVN_SHIFT) || ((cached_type == TYPE_MVN_SHIFT_REG) || ((cached_type == TYPE_MRS) || ((cached_type == TYPE_MULTIPLE) || (cached_type == TYPE_NO_INSN))))))))))))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA7)))) && (((cached_mul32 = get_attr_mul32 (insn)) == MUL32_YES) || ((cached_mul64 = get_attr_mul64 (insn)) == MUL64_YES)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA7)))) && (((cached_type = get_attr_type (insn)) == TYPE_FMACS) || (cached_type == TYPE_FFMAS)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA7)))) && (get_attr_cortex_a7_neon_type (insn) == CORTEX_A7_NEON_TYPE_NEON_MLA))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA7)))) && ((cached_type = get_attr_type (insn)) == TYPE_FMACD))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA7)))) && ((cached_type = get_attr_type (insn)) == TYPE_F_LOADS))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA7)))) && ((cached_type = get_attr_type (insn)) == TYPE_F_LOADD))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_IMM) || ((cached_type == TYPE_ALUS_IMM) || ((cached_type == TYPE_LOGIC_IMM) || ((cached_type == TYPE_LOGICS_IMM) || ((cached_type == TYPE_ALU_SREG) || ((cached_type == TYPE_ALUS_SREG) || ((cached_type == TYPE_LOGIC_REG) || ((cached_type == TYPE_LOGICS_REG) || ((cached_type == TYPE_ADC_IMM) || ((cached_type == TYPE_ADCS_IMM) || ((cached_type == TYPE_ADC_REG) || ((cached_type == TYPE_ADCS_REG) || ((cached_type == TYPE_ADR) || ((cached_type == TYPE_BFM) || ((cached_type == TYPE_CLZ) || ((cached_type == TYPE_RBIT) || ((cached_type == TYPE_REV) || ((cached_type == TYPE_ALU_DSP_REG) || ((cached_type == TYPE_SHIFT_IMM) || ((cached_type == TYPE_SHIFT_REG) || ((cached_type == TYPE_MULTIPLE) || (cached_type == TYPE_NO_INSN)))))))))))))))))))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_SHIFT_IMM) || ((cached_type == TYPE_ALUS_SHIFT_IMM) || ((cached_type == TYPE_LOGIC_SHIFT_IMM) || ((cached_type == TYPE_LOGICS_SHIFT_IMM) || (cached_type == TYPE_EXTEND))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_SHIFT_REG) || ((cached_type == TYPE_ALUS_SHIFT_REG) || ((cached_type == TYPE_LOGIC_SHIFT_REG) || (cached_type == TYPE_LOGICS_SHIFT_REG)))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && (((cached_type = get_attr_type (insn)) == TYPE_MOV_IMM) || ((cached_type == TYPE_MOV_REG) || ((cached_type == TYPE_MOV_SHIFT) || ((cached_type == TYPE_MOV_SHIFT_REG) || ((cached_type == TYPE_MVN_IMM) || ((cached_type == TYPE_MVN_REG) || ((cached_type == TYPE_MVN_SHIFT) || ((cached_type == TYPE_MVN_SHIFT_REG) || (cached_type == TYPE_MRS))))))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && (((cached_type = get_attr_type (insn)) == TYPE_MUL) || ((cached_type == TYPE_SMULXY) || (cached_type == TYPE_SMMUL))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && (((cached_type = get_attr_type (insn)) == TYPE_MLA) || ((cached_type == TYPE_SMLAXY) || ((cached_type == TYPE_SMLAWY) || ((cached_type == TYPE_SMMLA) || ((cached_type == TYPE_SMLAD) || (cached_type == TYPE_SMLSD)))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && (((cached_type = get_attr_type (insn)) == TYPE_SMULL) || ((cached_type == TYPE_UMULL) || ((cached_type == TYPE_SMLAL) || ((cached_type == TYPE_UMLAL) || ((cached_type == TYPE_UMAAL) || (cached_type == TYPE_SMLALXY)))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && (((cached_type = get_attr_type (insn)) == TYPE_SMULWY) || ((cached_type == TYPE_SMUAD) || (cached_type == TYPE_SMUSD))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && (((cached_type = get_attr_type (insn)) == TYPE_SMLALD) || (cached_type == TYPE_SMLSLD)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && (((cached_type = get_attr_type (insn)) == TYPE_LOAD1) || ((cached_type == TYPE_LOAD2) || (cached_type == TYPE_LOAD_BYTE))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && (((cached_type = get_attr_type (insn)) == TYPE_LOAD3) || (cached_type == TYPE_LOAD4)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_INT_1))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_INT_2))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_INT_3))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_INT_4))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_INT_5))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_VQNEG_VQABS))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_VABA))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_VABA_QQQ))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_BIT_OPS_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_MUL_DDD_8_16_QDD_16_8_LONG_32_16_LONG))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_MUL_QQQ_8_16_32_DDD_32))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_MUL_QDD_64_32_LONG_QQD_16_DDD_32_SCALAR_64_32_LONG_SCALAR))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_MLA_DDD_8_16_QDD_16_8_LONG_32_16_LONG))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_MLA_QQQ_8_16))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_MLA_DDD_32_QQD_16_DDD_32_SCALAR_QDD_64_32_LONG_SCALAR_QDD_64_32_LONG))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_MLA_QQQ_32_QQD_32_SCALAR))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_MUL_DDD_16_SCALAR_32_16_LONG_SCALAR))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_MUL_QQD_32_SCALAR))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_MLA_DDD_16_SCALAR_QDD_32_16_LONG_SCALAR))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_SHIFT_1))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_SHIFT_2))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_SHIFT_3))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_VQSHL_VRSHL_VQRSHL_QQQ))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_VSRA_VRSRA))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_FP_VSUM))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_FP_VMUL_DDD))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_FP_VMUL_QQD))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_FP_VMLA_DDD))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_FP_VMLA_QQQ))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_FP_VMLA_DDD_SCALAR))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_FP_VMLA_QQQ_SCALAR))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_FP_VRECPS_VRSQRTS_DDD))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && (((cached_type = get_attr_type (insn)) == TYPE_NEON_FP_RECPS_S_Q) || (cached_type == TYPE_NEON_FP_RSQRTS_S_Q)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_BP_SIMPLE))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_BP_2CYCLE))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_BP_3CYCLE))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_LDR))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_VLD1_1_2_REGS))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_VLD1_3_4_REGS))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_VLD2_2_REGS_VLD1_VLD2_ALL_LANES))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_VLD2_4_REGS))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_VLD3_VLD4))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_VLD1_VLD2_LANE))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_VLD3_VLD4_LANE))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_MCR))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA8)))) && ((cached_cortex_a8_neon_type = get_attr_cortex_a8_neon_type (insn)) == CORTEX_A8_NEON_TYPE_NEON_MCR_2_MCRR))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_IMM) || ((cached_type == TYPE_ALUS_IMM) || ((cached_type == TYPE_LOGIC_IMM) || ((cached_type == TYPE_LOGICS_IMM) || ((cached_type == TYPE_ALU_SREG) || ((cached_type == TYPE_ALUS_SREG) || ((cached_type == TYPE_LOGIC_REG) || ((cached_type == TYPE_LOGICS_REG) || ((cached_type == TYPE_ADC_IMM) || ((cached_type == TYPE_ADCS_IMM) || ((cached_type == TYPE_ADC_REG) || ((cached_type == TYPE_ADCS_REG) || ((cached_type == TYPE_ADR) || ((cached_type == TYPE_BFM) || ((cached_type == TYPE_CLZ) || ((cached_type == TYPE_RBIT) || ((cached_type == TYPE_REV) || ((cached_type == TYPE_ALU_DSP_REG) || ((cached_type == TYPE_SHIFT_IMM) || ((cached_type == TYPE_SHIFT_REG) || ((cached_type == TYPE_MOV_IMM) || ((cached_type == TYPE_MOV_REG) || ((cached_type == TYPE_MVN_IMM) || ((cached_type == TYPE_MVN_REG) || ((cached_type == TYPE_MOV_SHIFT_REG) || ((cached_type == TYPE_MOV_SHIFT) || ((cached_type == TYPE_MRS) || ((cached_type == TYPE_MULTIPLE) || (cached_type == TYPE_NO_INSN))))))))))))))))))))))))))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_SHIFT_IMM) || ((cached_type == TYPE_ALUS_SHIFT_IMM) || ((cached_type == TYPE_LOGIC_SHIFT_IMM) || ((cached_type == TYPE_LOGICS_SHIFT_IMM) || ((cached_type == TYPE_ALU_SHIFT_REG) || ((cached_type == TYPE_ALUS_SHIFT_REG) || ((cached_type == TYPE_LOGIC_SHIFT_REG) || ((cached_type == TYPE_LOGICS_SHIFT_REG) || ((cached_type == TYPE_EXTEND) || ((cached_type == TYPE_MVN_SHIFT) || (cached_type == TYPE_MVN_SHIFT_REG))))))))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && (((cached_type = get_attr_type (insn)) == TYPE_LOAD1) || ((cached_type == TYPE_LOAD2) || ((cached_type == TYPE_LOAD_BYTE) || ((cached_type == TYPE_F_LOADS) || (cached_type == TYPE_F_LOADD))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && (((cached_type = get_attr_type (insn)) == TYPE_LOAD3) || (cached_type == TYPE_LOAD4)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && (((cached_type = get_attr_type (insn)) == TYPE_FMOV) || ((cached_type == TYPE_FCONSTS) || ((cached_type == TYPE_FCONSTD) || ((cached_type == TYPE_FFARITHS) || ((cached_type == TYPE_FFARITHD) || ((cached_type == TYPE_F_MCR) || ((cached_type == TYPE_F_MCRR) || ((cached_type == TYPE_F_MRC) || ((cached_type == TYPE_F_MRRC) || (cached_type == TYPE_F_FLAG)))))))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_INT_1))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_INT_2))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_INT_3))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_INT_4))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_INT_5))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_VQNEG_VQABS))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_VMOV))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_VABA))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_VABA_QQQ))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_BIT_OPS_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_MUL_DDD_8_16_QDD_16_8_LONG_32_16_LONG))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_MUL_QQQ_8_16_32_DDD_32))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_MUL_QDD_64_32_LONG_QQD_16_DDD_32_SCALAR_64_32_LONG_SCALAR))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_MLA_DDD_8_16_QDD_16_8_LONG_32_16_LONG))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_MLA_QQQ_8_16))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_MLA_DDD_32_QQD_16_DDD_32_SCALAR_QDD_64_32_LONG_SCALAR_QDD_64_32_LONG))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_MLA_QQQ_32_QQD_32_SCALAR))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_MUL_DDD_16_SCALAR_32_16_LONG_SCALAR))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_MUL_QQD_32_SCALAR))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_MLA_DDD_16_SCALAR_QDD_32_16_LONG_SCALAR))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_SHIFT_1))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_SHIFT_2))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_SHIFT_3))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_VQSHL_VRSHL_VQRSHL_QQQ))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_VSRA_VRSRA))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_FP_VSUM))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_FP_VMUL_DDD))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_FP_VMUL_QQD))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_FP_VMLA_DDD))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_FP_VMLA_QQQ))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_FP_VMLA_DDD_SCALAR))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_FP_VMLA_QQQ_SCALAR))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_FP_VRECPS_VRSQRTS_DDD))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_FP_VRECPS_VRSQRTS_QQQ))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_BP_SIMPLE))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_BP_2CYCLE))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_BP_3CYCLE))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_LDR))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_VLD1_1_2_REGS))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_VLD1_3_4_REGS))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_VLD2_2_REGS_VLD1_VLD2_ALL_LANES))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_VLD2_4_REGS))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_VLD3_VLD4))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_VLD1_VLD2_LANE))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_VLD3_VLD4_LANE))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_VLD3_VLD4_ALL_LANES))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_MCR))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA9)))) && ((cached_cortex_a9_neon_type = get_attr_cortex_a9_neon_type (insn)) == CORTEX_A9_NEON_TYPE_NEON_MCR_2_MCRR))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_IMM) || ((cached_type == TYPE_ALUS_IMM) || ((cached_type == TYPE_LOGIC_IMM) || ((cached_type == TYPE_LOGICS_IMM) || ((cached_type == TYPE_ALU_SREG) || ((cached_type == TYPE_ALUS_SREG) || ((cached_type == TYPE_LOGIC_REG) || ((cached_type == TYPE_LOGICS_REG) || ((cached_type == TYPE_ADC_IMM) || ((cached_type == TYPE_ADCS_IMM) || ((cached_type == TYPE_ADC_REG) || ((cached_type == TYPE_ADCS_REG) || ((cached_type == TYPE_ADR) || ((cached_type == TYPE_BFM) || ((cached_type == TYPE_CLZ) || ((cached_type == TYPE_RBIT) || ((cached_type == TYPE_REV) || ((cached_type == TYPE_ALU_DSP_REG) || ((cached_type == TYPE_SHIFT_IMM) || ((cached_type == TYPE_SHIFT_REG) || ((cached_type == TYPE_MOV_IMM) || ((cached_type == TYPE_MOV_REG) || ((cached_type == TYPE_MVN_IMM) || ((cached_type == TYPE_MVN_REG) || ((cached_type == TYPE_MRS) || ((cached_type == TYPE_MULTIPLE) || (cached_type == TYPE_NO_INSN))))))))))))))))))))))))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && (((cached_type = get_attr_type (insn)) == TYPE_EXTEND) || ((cached_type == TYPE_ALU_SHIFT_IMM) || ((cached_type == TYPE_ALUS_SHIFT_IMM) || ((cached_type == TYPE_CRC) || ((cached_type == TYPE_LOGIC_SHIFT_IMM) || ((cached_type == TYPE_LOGICS_SHIFT_IMM) || ((cached_type == TYPE_MOV_SHIFT) || (cached_type == TYPE_MVN_SHIFT)))))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_SHIFT_REG) || ((cached_type == TYPE_ALUS_SHIFT_REG) || ((cached_type == TYPE_LOGIC_SHIFT_REG) || ((cached_type == TYPE_LOGICS_SHIFT_REG) || ((cached_type == TYPE_MOV_SHIFT_REG) || (cached_type == TYPE_MVN_SHIFT_REG)))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_ABD))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_ABD_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_ARITH_ACC))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_ARITH_ACC_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_ARITH_BASIC))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_ARITH_COMPLEX))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_MULTIPLY))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_MULTIPLY_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_MLA))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_MLA_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_SAT_MLA_LONG))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_SHIFT_ACC))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_SHIFT_IMM_BASIC))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_SHIFT_IMM_COMPLEX))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_SHIFT_REG_BASIC))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_SHIFT_REG_BASIC_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_SHIFT_REG_COMPLEX))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_SHIFT_REG_COMPLEX_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_FP_NEGABS))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_FP_ARITH))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_FP_ARITH_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_FP_CVT_INT))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_FP_CVT_INT_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_FP_CVT16))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_FP_MUL))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_FP_MUL_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_FP_MLA))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_FP_MLA_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_FP_RECPE_RSQRTE))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_FP_RECPE_RSQRTE_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_BITOPS))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_BITOPS_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_FROM_GP))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_FROM_GP_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_TBL3_TBL4))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_ZIP_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_TO_GP))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_LOAD_A))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_LOAD_B))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_LOAD_C))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_LOAD_D))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_LOAD_E))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_LOAD_F))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_STORE_A))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_STORE_B))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_STORE_C))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_STORE_D))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_STORE_E))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_STORE_F))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_STORE_G))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_cortex_a15_neon_type = get_attr_cortex_a15_neon_type (insn)) == CORTEX_A15_NEON_TYPE_NEON_STORE_H))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && (((cached_type = get_attr_type (insn)) == TYPE_FCONSTS) || (cached_type == TYPE_FCONSTD)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_type = get_attr_type (insn)) == TYPE_FADDS))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_type = get_attr_type (insn)) == TYPE_FADDD))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_type = get_attr_type (insn)) == TYPE_FMULS))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_type = get_attr_type (insn)) == TYPE_FMULD))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && (((cached_type = get_attr_type (insn)) == TYPE_FMACS) || (cached_type == TYPE_FFMAS)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && (((cached_type = get_attr_type (insn)) == TYPE_FMACD) || (cached_type == TYPE_FFMAD)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && (((cached_type = get_attr_type (insn)) == TYPE_F_CVT) || ((cached_type == TYPE_F_CVTF2I) || (cached_type == TYPE_F_CVTI2F))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_type = get_attr_type (insn)) == TYPE_FCMPD))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_type = get_attr_type (insn)) == TYPE_FCMPS))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_type = get_attr_type (insn)) == TYPE_FFARITHD))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_type = get_attr_type (insn)) == TYPE_FMOV))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && (((cached_type = get_attr_type (insn)) == TYPE_F_MCR) || (cached_type == TYPE_F_MCRR)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && ((cached_type = get_attr_type (insn)) == TYPE_FFARITHS))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && (((cached_type = get_attr_type (insn)) == TYPE_FDIVS) || (cached_type == TYPE_FSQRTS)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA15)))) && (((cached_type = get_attr_type (insn)) == TYPE_FDIVD) || (cached_type == TYPE_FSQRTD)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA17)))) && (((cached_type = get_attr_type (insn)) == TYPE_MUL) || ((cached_type == TYPE_MULS) || ((cached_type == TYPE_SMMUL) || (cached_type == TYPE_SMMULR)))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA17)))) && (((cached_type = get_attr_type (insn)) == TYPE_MLA) || ((cached_type == TYPE_MLAS) || (cached_type == TYPE_SMMLA))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA17)))) && (((cached_type = get_attr_type (insn)) == TYPE_SMLAD) || ((cached_type == TYPE_SMLADX) || ((cached_type == TYPE_SMLSD) || ((cached_type == TYPE_SMLSDX) || ((cached_type == TYPE_SMUAD) || ((cached_type == TYPE_SMUADX) || ((cached_type == TYPE_SMUSD) || (cached_type == TYPE_SMUSDX)))))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA17)))) && (((cached_type = get_attr_type (insn)) == TYPE_SMLAL) || ((cached_type == TYPE_SMLALS) || ((cached_type == TYPE_UMAAL) || ((cached_type == TYPE_UMLAL) || (cached_type == TYPE_UMLALS))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA17)))) && (((cached_type = get_attr_type (insn)) == TYPE_SMLALD) || ((cached_type == TYPE_SMLALXY) || (cached_type == TYPE_SMLSLD))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA17)))) && (((cached_type = get_attr_type (insn)) == TYPE_SMULL) || ((cached_type == TYPE_SMULLS) || ((cached_type == TYPE_UMULL) || (cached_type == TYPE_UMULLS)))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA53)))) && (((cached_type = get_attr_type (insn)) == TYPE_ADR) || ((cached_type == TYPE_SHIFT_IMM) || ((cached_type == TYPE_MOV_IMM) || ((cached_type == TYPE_MVN_IMM) || (cached_type == TYPE_MOV_SHIFT))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA53)))) && (((cached_type = get_attr_type (insn)) == TYPE_SHIFT_REG) || (cached_type == TYPE_MOV_SHIFT_REG)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA53)))) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_IMM) || ((cached_type == TYPE_ALUS_IMM) || ((cached_type == TYPE_LOGIC_IMM) || ((cached_type == TYPE_LOGICS_IMM) || ((cached_type == TYPE_ALU_SREG) || ((cached_type == TYPE_ALUS_SREG) || ((cached_type == TYPE_LOGIC_REG) || ((cached_type == TYPE_LOGICS_REG) || ((cached_type == TYPE_ADC_IMM) || ((cached_type == TYPE_ADCS_IMM) || ((cached_type == TYPE_ADC_REG) || ((cached_type == TYPE_ADCS_REG) || ((cached_type == TYPE_CSEL) || ((cached_type == TYPE_CLZ) || ((cached_type == TYPE_RBIT) || ((cached_type == TYPE_REV) || ((cached_type == TYPE_ALU_DSP_REG) || ((cached_type == TYPE_MOV_REG) || ((cached_type == TYPE_MVN_REG) || ((cached_type == TYPE_MRS) || ((cached_type == TYPE_MULTIPLE) || (cached_type == TYPE_NO_INSN)))))))))))))))))))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA53)))) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_SHIFT_IMM) || ((cached_type == TYPE_ALUS_SHIFT_IMM) || ((cached_type == TYPE_CRC) || ((cached_type == TYPE_LOGIC_SHIFT_IMM) || ((cached_type == TYPE_LOGICS_SHIFT_IMM) || ((cached_type == TYPE_ALU_EXT) || ((cached_type == TYPE_ALUS_EXT) || ((cached_type == TYPE_BFM) || ((cached_type == TYPE_EXTEND) || (cached_type == TYPE_MVN_SHIFT)))))))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA53)))) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_SHIFT_REG) || ((cached_type == TYPE_ALUS_SHIFT_REG) || ((cached_type == TYPE_LOGIC_SHIFT_REG) || ((cached_type == TYPE_LOGICS_SHIFT_REG) || (cached_type == TYPE_MVN_SHIFT_REG))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA53)))) && ((cached_type = get_attr_type (insn)) == TYPE_ROTATE_IMM))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA53)))) && (((cached_mul32 = get_attr_mul32 (insn)) == MUL32_YES) || ((cached_mul64 = get_attr_mul64 (insn)) == MUL64_YES)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA53)))) && (((cached_type = get_attr_type (insn)) == TYPE_LOAD_BYTE) || ((cached_type == TYPE_LOAD1) || (cached_type == TYPE_LOAD_ACQ))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA53)))) && ((cached_type = get_attr_type (insn)) == TYPE_LOAD2))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA53)))) && (((cached_type = get_attr_type (insn)) == TYPE_LOAD3) || (cached_type == TYPE_LOAD4)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA53)))) && (((cached_type = get_attr_type (insn)) == TYPE_FFARITHS) || ((cached_type == TYPE_FADDS) || ((cached_type == TYPE_FFARITHD) || ((cached_type == TYPE_FADDD) || ((cached_type == TYPE_FMOV) || ((cached_type == TYPE_F_CVT) || ((cached_type == TYPE_FCMPS) || ((cached_type == TYPE_FCMPD) || ((cached_type == TYPE_FCCMPS) || ((cached_type == TYPE_FCCMPD) || ((cached_type == TYPE_FCSEL) || ((cached_type == TYPE_F_RINTS) || ((cached_type == TYPE_F_RINTD) || ((cached_type == TYPE_F_MINMAXS) || (cached_type == TYPE_F_MINMAXD))))))))))))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA53)))) && (((cached_type = get_attr_type (insn)) == TYPE_FMULS) || (cached_type == TYPE_FMULD)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA53)))) && (((cached_type = get_attr_type (insn)) == TYPE_FMACS) || ((cached_type == TYPE_FMACD) || ((cached_type == TYPE_FFMAS) || (cached_type == TYPE_FFMAD)))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA53)))) && (((cached_type = get_attr_type (insn)) == TYPE_F_MCR) || ((cached_type == TYPE_F_MCRR) || ((cached_type == TYPE_F_CVTI2F) || ((cached_type == TYPE_NEON_FROM_GP) || (cached_type == TYPE_NEON_FROM_GP_Q))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA53)))) && ((((cached_type = get_attr_type (insn)) == TYPE_F_LOADS) || (cached_type == TYPE_F_LOADD)) || ((cached_cortex_a53_advsimd_type = get_attr_cortex_a53_advsimd_type (insn)) == CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_64)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA53)))) && (((cached_cortex_a53_advsimd_type = get_attr_cortex_a53_advsimd_type (insn)) == CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_128) || (cached_cortex_a53_advsimd_type == CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_LOTS)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA53)))) && ((cached_type = get_attr_type (insn)) == TYPE_CRYPTO_AESE))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_IMM) || ((cached_type == TYPE_ALUS_IMM) || ((cached_type == TYPE_LOGIC_IMM) || ((cached_type == TYPE_LOGICS_IMM) || ((cached_type == TYPE_ALU_SREG) || ((cached_type == TYPE_ALUS_SREG) || ((cached_type == TYPE_LOGIC_REG) || ((cached_type == TYPE_LOGICS_REG) || ((cached_type == TYPE_ADC_IMM) || ((cached_type == TYPE_ADCS_IMM) || ((cached_type == TYPE_ADC_REG) || ((cached_type == TYPE_ADCS_REG) || ((cached_type == TYPE_ADR) || ((cached_type == TYPE_BFM) || ((cached_type == TYPE_CLZ) || ((cached_type == TYPE_CSEL) || ((cached_type == TYPE_RBIT) || ((cached_type == TYPE_REV) || ((cached_type == TYPE_ALU_DSP_REG) || ((cached_type == TYPE_ROTATE_IMM) || ((cached_type == TYPE_SHIFT_IMM) || ((cached_type == TYPE_SHIFT_REG) || ((cached_type == TYPE_MOV_IMM) || ((cached_type == TYPE_MOV_REG) || ((cached_type == TYPE_MVN_IMM) || ((cached_type == TYPE_MVN_REG) || ((cached_type == TYPE_MRS) || ((cached_type == TYPE_MULTIPLE) || (cached_type == TYPE_NO_INSN))))))))))))))))))))))))))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && (((cached_type = get_attr_type (insn)) == TYPE_EXTEND) || ((cached_type == TYPE_ALU_SHIFT_IMM) || ((cached_type == TYPE_ALUS_SHIFT_IMM) || ((cached_type == TYPE_CRC) || ((cached_type == TYPE_LOGIC_SHIFT_IMM) || ((cached_type == TYPE_LOGICS_SHIFT_IMM) || ((cached_type == TYPE_MOV_SHIFT) || (cached_type == TYPE_MVN_SHIFT)))))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_SHIFT_REG) || ((cached_type == TYPE_ALUS_SHIFT_REG) || ((cached_type == TYPE_LOGIC_SHIFT_REG) || ((cached_type == TYPE_LOGICS_SHIFT_REG) || ((cached_type == TYPE_MOV_SHIFT_REG) || (cached_type == TYPE_MVN_SHIFT_REG)))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && (((cached_mul32 = get_attr_mul32 (insn)) == MUL32_YES) || ((cached_mul64 = get_attr_mul64 (insn)) == MUL64_YES)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && (((cached_type = get_attr_type (insn)) == TYPE_UDIV) || (cached_type == TYPE_SDIV)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_type = get_attr_type (insn)) == TYPE_BLOCK))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_type = get_attr_type (insn)) == TYPE_BRANCH))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && (((cached_type = get_attr_type (insn)) == TYPE_LOAD_BYTE) || ((cached_type == TYPE_LOAD1) || (cached_type == TYPE_LOAD2))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && (((cached_type = get_attr_type (insn)) == TYPE_LOAD3) || (cached_type == TYPE_LOAD4)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && (((cached_type = get_attr_type (insn)) == TYPE_STORE1) || (cached_type == TYPE_STORE2)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && (((cached_type = get_attr_type (insn)) == TYPE_STORE3) || (cached_type == TYPE_STORE4)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_ABD))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_ABD_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_ARITH_ACC))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_ARITH_ACC_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_ARITH_BASIC))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_ARITH_COMPLEX))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_MULTIPLY))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_MULTIPLY_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_MLA))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_MLA_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_SAT_MLA_LONG))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_SHIFT_ACC))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_SHIFT_IMM_BASIC))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_SHIFT_IMM_COMPLEX))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_SHIFT_REG_BASIC))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_SHIFT_REG_BASIC_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_SHIFT_REG_COMPLEX))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_SHIFT_REG_COMPLEX_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_FP_NEGABS))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_FP_ARITH))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_FP_ARITH_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_FP_REDUCTIONS_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_FP_CVT_INT))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_FP_CVT_INT_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_FP_CVT16))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_FP_MUL))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_FP_MUL_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_FP_MLA))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_FP_MLA_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_FP_RECPE_RSQRTE))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_FP_RECPE_RSQRTE_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_FP_RECPS_RSQRTS))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_FP_RECPS_RSQRTS_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_BITOPS))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_BITOPS_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_FROM_GP))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_FROM_GP_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_TBL3_TBL4))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_ZIP_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_TO_GP))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_LOAD_A))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_LOAD_B))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_LOAD_C))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_LOAD_D))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_LOAD_E))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_LOAD_F))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_STORE_A))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_STORE_B))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_cortex_a57_neon_type = get_attr_cortex_a57_neon_type (insn)) == CORTEX_A57_NEON_TYPE_NEON_STORE_COMPLEX))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && (((cached_type = get_attr_type (insn)) == TYPE_FCONSTS) || (cached_type == TYPE_FCONSTD)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && (((cached_type = get_attr_type (insn)) == TYPE_FADDS) || (cached_type == TYPE_FADDD)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && (((cached_type = get_attr_type (insn)) == TYPE_FMULS) || (cached_type == TYPE_FMULD)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && (((cached_type = get_attr_type (insn)) == TYPE_FMACS) || ((cached_type == TYPE_FFMAS) || ((cached_type == TYPE_FMACD) || (cached_type == TYPE_FFMAD)))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && (((cached_type = get_attr_type (insn)) == TYPE_F_CVT) || ((cached_type == TYPE_F_CVTF2I) || (cached_type == TYPE_F_CVTI2F))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && (((cached_type = get_attr_type (insn)) == TYPE_FCMPS) || ((cached_type == TYPE_FCMPD) || ((cached_type == TYPE_FCCMPS) || (cached_type == TYPE_FCCMPD)))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && (((cached_type = get_attr_type (insn)) == TYPE_FFARITHS) || (cached_type == TYPE_FFARITHD)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && (((cached_type = get_attr_type (insn)) == TYPE_FMOV) || (cached_type == TYPE_FCSEL)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && (((cached_type = get_attr_type (insn)) == TYPE_FDIVS) || ((cached_type == TYPE_FSQRTS) || ((cached_type == TYPE_NEON_FP_DIV_S) || (cached_type == TYPE_NEON_FP_SQRT_S)))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && (((cached_type = get_attr_type (insn)) == TYPE_FDIVD) || ((cached_type == TYPE_FSQRTD) || ((cached_type == TYPE_NEON_FP_DIV_D) || (cached_type == TYPE_NEON_FP_SQRT_D)))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && (((cached_type = get_attr_type (insn)) == TYPE_FDIVD) || ((cached_type == TYPE_FSQRTD) || ((cached_type == TYPE_NEON_FP_DIV_S_Q) || ((cached_type == TYPE_NEON_FP_DIV_D_Q) || ((cached_type == TYPE_NEON_FP_SQRT_S_Q) || (cached_type == TYPE_NEON_FP_SQRT_D_Q)))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && (((cached_type = get_attr_type (insn)) == TYPE_CRYPTO_AESE) || ((cached_type == TYPE_CRYPTO_AESMC) || ((cached_type == TYPE_CRYPTO_SHA1_FAST) || (cached_type == TYPE_CRYPTO_SHA256_FAST)))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && (((cached_type = get_attr_type (insn)) == TYPE_CRYPTO_SHA1_SLOW) || (cached_type == TYPE_CRYPTO_SHA256_SLOW)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_type = get_attr_type (insn)) == TYPE_CRYPTO_SHA1_XOR))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXA57)))) && ((cached_type = get_attr_type (insn)) == TYPE_CALL))
        {
	  return 1;
        }
      else if ((((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4)))) || ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4F)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR5))))))) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_IMM) || ((cached_type == TYPE_ALUS_IMM) || ((cached_type == TYPE_LOGIC_IMM) || ((cached_type == TYPE_LOGICS_IMM) || ((cached_type == TYPE_ALU_SREG) || ((cached_type == TYPE_ALUS_SREG) || ((cached_type == TYPE_LOGIC_REG) || ((cached_type == TYPE_LOGICS_REG) || ((cached_type == TYPE_ADC_IMM) || ((cached_type == TYPE_ADCS_IMM) || ((cached_type == TYPE_ADC_REG) || ((cached_type == TYPE_ADCS_REG) || ((cached_type == TYPE_ADR) || ((cached_type == TYPE_BFM) || ((cached_type == TYPE_CLZ) || ((cached_type == TYPE_RBIT) || ((cached_type == TYPE_REV) || ((cached_type == TYPE_SHIFT_IMM) || ((cached_type == TYPE_SHIFT_REG) || ((cached_type == TYPE_MVN_IMM) || (cached_type == TYPE_MVN_REG))))))))))))))))))))))
        {
	  return 1;
        }
      else if ((((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4)))) || ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4F)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR5))))))) && (((cached_type = get_attr_type (insn)) == TYPE_MOV_IMM) || (cached_type == TYPE_MOV_REG)))
        {
	  return 1;
        }
      else if ((((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4)))) || ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4F)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR5))))))) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_SHIFT_IMM) || ((cached_type == TYPE_ALUS_SHIFT_IMM) || ((cached_type == TYPE_LOGIC_SHIFT_IMM) || ((cached_type == TYPE_LOGICS_SHIFT_IMM) || ((cached_type == TYPE_EXTEND) || ((cached_type == TYPE_MOV_SHIFT) || (cached_type == TYPE_MVN_SHIFT))))))))
        {
	  return 1;
        }
      else if ((((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4)))) || ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4F)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR5))))))) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_SHIFT_REG) || ((cached_type == TYPE_ALUS_SHIFT_REG) || ((cached_type == TYPE_LOGIC_SHIFT_REG) || ((cached_type == TYPE_LOGICS_SHIFT_REG) || ((cached_type == TYPE_MOV_SHIFT_REG) || ((cached_type == TYPE_MVN_SHIFT_REG) || ((cached_type == TYPE_MRS) || ((cached_type == TYPE_MULTIPLE) || (cached_type == TYPE_NO_INSN))))))))))
        {
	  return 1;
        }
      else if ((((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4)))) || ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4F)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR5))))))) && (((cached_type = get_attr_type (insn)) == TYPE_MUL) || (cached_type == TYPE_SMMUL)))
        {
	  return 1;
        }
      else if ((((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4)))) || ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4F)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR5))))))) && (((cached_type = get_attr_type (insn)) == TYPE_SMULXY) || ((cached_type == TYPE_SMULWY) || ((cached_type == TYPE_SMUAD) || (cached_type == TYPE_SMUSD)))))
        {
	  return 1;
        }
      else if ((((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4)))) || ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4F)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR5))))))) && (((cached_type = get_attr_type (insn)) == TYPE_MLA) || (cached_type == TYPE_SMMLA)))
        {
	  return 1;
        }
      else if ((((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4)))) || ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4F)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR5))))))) && (((cached_type = get_attr_type (insn)) == TYPE_SMLAXY) || ((cached_type == TYPE_SMLAWY) || ((cached_type == TYPE_SMLAD) || (cached_type == TYPE_SMLSD)))))
        {
	  return 1;
        }
      else if ((((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4)))) || ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4F)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR5))))))) && (((cached_type = get_attr_type (insn)) == TYPE_SMLALD) || (cached_type == TYPE_SMLSLD)))
        {
	  return 1;
        }
      else if ((((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4)))) || ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4F)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR5))))))) && (((cached_type = get_attr_type (insn)) == TYPE_SMULL) || ((cached_type == TYPE_UMULL) || ((cached_type == TYPE_UMLAL) || (cached_type == TYPE_UMAAL)))))
        {
	  return 1;
        }
      else if ((((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4)))) || ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4F)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR5))))))) && (((cached_type = get_attr_type (insn)) == TYPE_LOAD1) || (cached_type == TYPE_LOAD2)))
        {
	  return 1;
        }
      else if ((((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4)))) || ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4F)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR5))))))) && (((cached_type = get_attr_type (insn)) == TYPE_LOAD3) || (cached_type == TYPE_LOAD4)))
        {
	  return 1;
        }
      else if ((((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4)))) || ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4F)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR5))))))) && ((cached_type = get_attr_type (insn)) == TYPE_FMOV))
        {
	  return 1;
        }
      else if ((((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4)))) || ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4F)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR5))))))) && (((cached_type = get_attr_type (insn)) == TYPE_FFARITHS) || ((cached_type == TYPE_FCONSTS) || (cached_type == TYPE_FCMPS))))
        {
	  return 1;
        }
      else if ((((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4)))) || ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4F)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR5))))))) && (((cached_type = get_attr_type (insn)) == TYPE_FADDS) || (cached_type == TYPE_FMULS)))
        {
	  return 1;
        }
      else if ((((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4)))) || ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4F)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR5))))))) && (((cached_type = get_attr_type (insn)) == TYPE_FMACS) || (cached_type == TYPE_FFMAS)))
        {
	  return 1;
        }
      else if ((((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4)))) || ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4F)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR5))))))) && (((cached_type = get_attr_type (insn)) == TYPE_FDIVS) || (cached_type == TYPE_FSQRTS)))
        {
	  return 1;
        }
      else if ((((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4)))) || ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR4F)))) || (((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXR5))))))) && (((cached_type = get_attr_type (insn)) == TYPE_F_MCR) || (cached_type == TYPE_F_MCRR)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXM4)))) && ((((cached_type = get_attr_type (insn)) == TYPE_ALU_IMM) || ((cached_type == TYPE_ALUS_IMM) || ((cached_type == TYPE_LOGIC_IMM) || ((cached_type == TYPE_LOGICS_IMM) || ((cached_type == TYPE_ALU_SREG) || ((cached_type == TYPE_ALUS_SREG) || ((cached_type == TYPE_LOGIC_REG) || ((cached_type == TYPE_LOGICS_REG) || ((cached_type == TYPE_ADC_IMM) || ((cached_type == TYPE_ADCS_IMM) || ((cached_type == TYPE_ADC_REG) || ((cached_type == TYPE_ADCS_REG) || ((cached_type == TYPE_ADR) || ((cached_type == TYPE_BFM) || ((cached_type == TYPE_CLZ) || ((cached_type == TYPE_RBIT) || ((cached_type == TYPE_REV) || ((cached_type == TYPE_ALU_DSP_REG) || ((cached_type == TYPE_SHIFT_IMM) || ((cached_type == TYPE_SHIFT_REG) || ((cached_type == TYPE_EXTEND) || ((cached_type == TYPE_ALU_SHIFT_IMM) || ((cached_type == TYPE_ALUS_SHIFT_IMM) || ((cached_type == TYPE_LOGIC_SHIFT_IMM) || ((cached_type == TYPE_LOGICS_SHIFT_IMM) || ((cached_type == TYPE_ALU_SHIFT_REG) || ((cached_type == TYPE_ALUS_SHIFT_REG) || ((cached_type == TYPE_LOGIC_SHIFT_REG) || ((cached_type == TYPE_LOGICS_SHIFT_REG) || ((cached_type == TYPE_MOV_IMM) || ((cached_type == TYPE_MOV_REG) || ((cached_type == TYPE_MOV_SHIFT) || ((cached_type == TYPE_MOV_SHIFT_REG) || ((cached_type == TYPE_MVN_IMM) || ((cached_type == TYPE_MVN_REG) || ((cached_type == TYPE_MVN_SHIFT) || ((cached_type == TYPE_MVN_SHIFT_REG) || ((cached_type == TYPE_MRS) || ((cached_type == TYPE_MULTIPLE) || (cached_type == TYPE_NO_INSN)))))))))))))))))))))))))))))))))))))))) || (((cached_mul32 = get_attr_mul32 (insn)) == MUL32_YES) || ((cached_mul64 = get_attr_mul64 (insn)) == MUL64_YES))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXM4)))) && (((cached_type = get_attr_type (insn)) == TYPE_LOAD_BYTE) || (cached_type == TYPE_LOAD1)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXM4)))) && (((cached_type = get_attr_type (insn)) == TYPE_FDIVS) || (cached_type == TYPE_FSQRTS)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXM4)))) && ((cached_type = get_attr_type (insn)) == TYPE_FMULS))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXM4)))) && (((cached_type = get_attr_type (insn)) == TYPE_FMACS) || (cached_type == TYPE_FFMAS)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXM4)))) && ((cached_type = get_attr_type (insn)) == TYPE_FADDS))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_CORTEXM4)))) && (((cached_type = get_attr_type (insn)) == TYPE_F_CVT) || ((cached_type == TYPE_F_CVTF2I) || (cached_type == TYPE_F_CVTI2F))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_type = get_attr_type (insn)) == TYPE_BRANCH))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_type = get_attr_type (insn)) == TYPE_CALL))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((! ((cached_predicated = get_attr_predicated (insn)) == PREDICATED_YES)) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_IMM) || ((cached_type == TYPE_ALUS_IMM) || ((cached_type == TYPE_LOGIC_IMM) || ((cached_type == TYPE_LOGICS_IMM) || ((cached_type == TYPE_ALU_SREG) || ((cached_type == TYPE_ALUS_SREG) || ((cached_type == TYPE_LOGIC_REG) || ((cached_type == TYPE_LOGICS_REG) || ((cached_type == TYPE_ADC_IMM) || ((cached_type == TYPE_ADCS_IMM) || ((cached_type == TYPE_ADC_REG) || ((cached_type == TYPE_ADCS_REG) || ((cached_type == TYPE_ADR) || ((cached_type == TYPE_BFM) || ((cached_type == TYPE_CLZ) || ((cached_type == TYPE_RBIT) || ((cached_type == TYPE_REV) || ((cached_type == TYPE_CSEL) || ((cached_type == TYPE_ALU_DSP_REG) || ((cached_type == TYPE_SHIFT_IMM) || ((cached_type == TYPE_SHIFT_REG) || ((cached_type == TYPE_ROTATE_IMM) || ((cached_type == TYPE_EXTEND) || ((cached_type == TYPE_MOV_IMM) || ((cached_type == TYPE_MOV_REG) || ((cached_type == TYPE_MVN_IMM) || ((cached_type == TYPE_MVN_REG) || ((cached_type == TYPE_MRS) || (cached_type == TYPE_MULTIPLE)))))))))))))))))))))))))))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_predicated = get_attr_predicated (insn)) == PREDICATED_YES) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_IMM) || ((cached_type == TYPE_ALUS_IMM) || ((cached_type == TYPE_LOGIC_IMM) || ((cached_type == TYPE_LOGICS_IMM) || ((cached_type == TYPE_ALU_SREG) || ((cached_type == TYPE_ALUS_SREG) || ((cached_type == TYPE_LOGIC_REG) || ((cached_type == TYPE_LOGICS_REG) || ((cached_type == TYPE_ADC_IMM) || ((cached_type == TYPE_ADCS_IMM) || ((cached_type == TYPE_ADC_REG) || ((cached_type == TYPE_ADCS_REG) || ((cached_type == TYPE_ADR) || ((cached_type == TYPE_BFM) || ((cached_type == TYPE_CLZ) || ((cached_type == TYPE_RBIT) || ((cached_type == TYPE_REV) || ((cached_type == TYPE_ALU_DSP_REG) || ((cached_type == TYPE_SHIFT_IMM) || ((cached_type == TYPE_SHIFT_REG) || ((cached_type == TYPE_ROTATE_IMM) || ((cached_type == TYPE_EXTEND) || ((cached_type == TYPE_MOV_IMM) || ((cached_type == TYPE_MOV_REG) || ((cached_type == TYPE_MVN_IMM) || ((cached_type == TYPE_MVN_REG) || ((cached_type == TYPE_MRS) || (cached_type == TYPE_MULTIPLE))))))))))))))))))))))))))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_EXT) || ((cached_type == TYPE_ALUS_EXT) || ((cached_type == TYPE_ALU_SHIFT_IMM) || ((cached_type == TYPE_ALUS_SHIFT_IMM) || ((cached_type == TYPE_LOGIC_SHIFT_IMM) || ((cached_type == TYPE_LOGICS_SHIFT_IMM) || ((cached_type == TYPE_MOV_SHIFT) || (cached_type == TYPE_MVN_SHIFT)))))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((! ((cached_predicated = get_attr_predicated (insn)) == PREDICATED_YES)) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_SHIFT_REG) || ((cached_type == TYPE_ALUS_SHIFT_REG) || ((cached_type == TYPE_LOGIC_SHIFT_REG) || ((cached_type == TYPE_LOGICS_SHIFT_REG) || ((cached_type == TYPE_MOV_SHIFT_REG) || (cached_type == TYPE_MVN_SHIFT_REG))))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_predicated = get_attr_predicated (insn)) == PREDICATED_YES) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_SHIFT_REG) || ((cached_type == TYPE_ALUS_SHIFT_REG) || ((cached_type == TYPE_LOGIC_SHIFT_REG) || ((cached_type == TYPE_LOGICS_SHIFT_REG) || ((cached_type == TYPE_MOV_SHIFT_REG) || (cached_type == TYPE_MVN_SHIFT_REG))))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_mul32 = get_attr_mul32 (insn)) == MUL32_YES))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_mul64 = get_attr_mul64 (insn)) == MUL64_YES))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_type = get_attr_type (insn)) == TYPE_UDIV) || (cached_type == TYPE_SDIV)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_type = get_attr_type (insn)) == TYPE_LOAD_BYTE) || ((cached_type == TYPE_LOAD1) || (cached_type == TYPE_LOAD2))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_type = get_attr_type (insn)) == TYPE_LOAD3) || (cached_type == TYPE_LOAD4)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_type = get_attr_type (insn)) == TYPE_STORE1) || (cached_type == TYPE_STORE2)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_type = get_attr_type (insn)) == TYPE_STORE3) || (cached_type == TYPE_STORE4)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_ARITH_SIMPLE))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_ARITH_BASIC))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_ARITH_COMPLEX))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_MULTIPLY) || ((cached_exynos_m1_neon_type == EXYNOS_M1_NEON_TYPE_NEON_MLA) || (cached_exynos_m1_neon_type == EXYNOS_M1_NEON_TYPE_NEON_SAT_MLA_LONG))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_SHIFT_ACC))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_SHIFT_IMM_BASIC) || (cached_exynos_m1_neon_type == EXYNOS_M1_NEON_TYPE_NEON_SHIFT_REG_BASIC)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_SHIFT_IMM_COMPLEX) || (cached_exynos_m1_neon_type == EXYNOS_M1_NEON_TYPE_NEON_SHIFT_REG_COMPLEX)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_FP_UNARY))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_FP_ADD))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_FP_ABD))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_FP_COMPARE))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_FP_REDUC_MINMAX))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_FP_REDUC_ADD))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_FP_ROUND))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_FP_CVT))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_FP_MUL))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_FP_MLA))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_FP_ESTIMATE))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_FP_ESTIMATEX))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_FP_STEP))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_BITOPS))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_BITOPS_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_BITINS))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_TBL))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_FROM_GP))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_TO_GP))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_type = get_attr_type (insn)) == TYPE_F_LOADS) || ((cached_type == TYPE_F_LOADD) || (cached_type == TYPE_NEON_LDP))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_type = get_attr_type (insn)) == TYPE_NEON_LDP_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_LOAD1_1) || (cached_exynos_m1_neon_type == EXYNOS_M1_NEON_TYPE_NEON_LOAD1_ALL)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_LOAD1_2))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_LOAD1_3))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_LOAD1_4))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_LOAD1_ONE))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_LOAD2_2))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_LOAD2_ONE))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_LOAD2_ALL))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_LOAD3_3))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_LOAD3_ONE))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_LOAD3_ALL))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_LOAD4_4))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_LOAD4_ONE))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_LOAD4_ALL))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_type = get_attr_type (insn)) == TYPE_F_STORES) || ((cached_type == TYPE_F_STORED) || (cached_type == TYPE_NEON_STP))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_type = get_attr_type (insn)) == TYPE_NEON_STP_Q))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_STORE1_1))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_STORE1_2))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_STORE1_3))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_STORE1_4))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_STORE1_ONE))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_STORE2_2) || (cached_exynos_m1_neon_type == EXYNOS_M1_NEON_TYPE_NEON_STORE2_ONE)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_STORE3_3) || (cached_exynos_m1_neon_type == EXYNOS_M1_NEON_TYPE_NEON_STORE3_ONE)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_exynos_m1_neon_type = get_attr_exynos_m1_neon_type (insn)) == EXYNOS_M1_NEON_TYPE_NEON_STORE4_4) || (cached_exynos_m1_neon_type == EXYNOS_M1_NEON_TYPE_NEON_STORE4_ONE)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_type = get_attr_type (insn)) == TYPE_FCONSTS) || (cached_type == TYPE_FCONSTD)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_type = get_attr_type (insn)) == TYPE_FADDS) || (cached_type == TYPE_FADDD)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_type = get_attr_type (insn)) == TYPE_FMULS) || (cached_type == TYPE_FMULD)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_type = get_attr_type (insn)) == TYPE_FMACS) || ((cached_type == TYPE_FFMAS) || ((cached_type == TYPE_FMACD) || (cached_type == TYPE_FFMAD)))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_type = get_attr_type (insn)) == TYPE_F_CVT) || ((cached_type == TYPE_F_RINTS) || (cached_type == TYPE_F_RINTD))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_type = get_attr_type (insn)) == TYPE_F_CVTF2I))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_type = get_attr_type (insn)) == TYPE_F_CVTI2F))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_type = get_attr_type (insn)) == TYPE_FCMPS) || (cached_type == TYPE_FCMPD)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_type = get_attr_type (insn)) == TYPE_FCCMPS) || (cached_type == TYPE_FCCMPD)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_type = get_attr_type (insn)) == TYPE_FCSEL))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_type = get_attr_type (insn)) == TYPE_FFARITHS) || (cached_type == TYPE_FFARITHD)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_type = get_attr_type (insn)) == TYPE_FMOV))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_type = get_attr_type (insn)) == TYPE_FDIVS) || ((cached_type == TYPE_NEON_FP_DIV_S) || ((cached_type == TYPE_NEON_FP_DIV_S_Q) || ((cached_type == TYPE_FSQRTS) || ((cached_type == TYPE_NEON_FP_SQRT_S) || (cached_type == TYPE_NEON_FP_SQRT_S_Q)))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_type = get_attr_type (insn)) == TYPE_FDIVD) || ((cached_type == TYPE_NEON_FP_DIV_D) || ((cached_type == TYPE_NEON_FP_DIV_D_Q) || ((cached_type == TYPE_FSQRTD) || ((cached_type == TYPE_NEON_FP_SQRT_D) || (cached_type == TYPE_NEON_FP_SQRT_D_Q)))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_type = get_attr_type (insn)) == TYPE_F_MINMAXS) || (cached_type == TYPE_F_MINMAXD)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_type = get_attr_type (insn)) == TYPE_CRYPTO_AESE) || ((cached_type == TYPE_CRYPTO_AESMC) || ((cached_type == TYPE_CRYPTO_SHA1_XOR) || ((cached_type == TYPE_CRYPTO_SHA1_FAST) || (cached_type == TYPE_CRYPTO_SHA256_FAST))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_type = get_attr_type (insn)) == TYPE_CRYPTO_SHA1_SLOW) || (cached_type == TYPE_CRYPTO_SHA256_SLOW)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && (((cached_type = get_attr_type (insn)) == TYPE_NEON_MUL_B_LONG) || ((cached_type == TYPE_NEON_MUL_H_LONG) || (cached_type == TYPE_NEON_MUL_S_LONG))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_type = get_attr_type (insn)) == TYPE_NEON_MUL_D_LONG))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_EXYNOSM1)))) && ((cached_type = get_attr_type (insn)) == TYPE_CRC))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_MARVELL_PJ4)))) && ((((cached_type = get_attr_type (insn)) == TYPE_ALU_SHIFT_IMM) || ((cached_type == TYPE_LOGIC_SHIFT_IMM) || ((cached_type == TYPE_ALUS_SHIFT_IMM) || ((cached_type == TYPE_LOGICS_SHIFT_IMM) || ((cached_type == TYPE_ALU_SHIFT_REG) || ((cached_type == TYPE_LOGIC_SHIFT_REG) || ((cached_type == TYPE_ALUS_SHIFT_REG) || ((cached_type == TYPE_LOGICS_SHIFT_REG) || ((cached_type == TYPE_EXTEND) || ((cached_type == TYPE_MOV_SHIFT) || ((cached_type == TYPE_MVN_SHIFT) || ((cached_type == TYPE_MOV_SHIFT_REG) || (cached_type == TYPE_MVN_SHIFT_REG))))))))))))) && ((! ((cached_conds = get_attr_conds (insn)) == CONDS_SET)) && (get_attr_shift (insn) == 1))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_MARVELL_PJ4)))) && ((! ((cached_conds = get_attr_conds (insn)) == CONDS_SET)) && (((cached_type = get_attr_type (insn)) == TYPE_ALU_SHIFT_IMM) || ((cached_type == TYPE_LOGIC_SHIFT_IMM) || ((cached_type == TYPE_ALUS_SHIFT_IMM) || ((cached_type == TYPE_LOGICS_SHIFT_IMM) || ((cached_type == TYPE_ALU_SHIFT_REG) || ((cached_type == TYPE_LOGIC_SHIFT_REG) || ((cached_type == TYPE_ALUS_SHIFT_REG) || ((cached_type == TYPE_LOGICS_SHIFT_REG) || ((cached_type == TYPE_EXTEND) || ((cached_type == TYPE_MOV_SHIFT) || ((cached_type == TYPE_MVN_SHIFT) || ((cached_type == TYPE_MOV_SHIFT_REG) || (cached_type == TYPE_MVN_SHIFT_REG)))))))))))))))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_MARVELL_PJ4)))) && (((cached_type = get_attr_type (insn)) == TYPE_LOAD_BYTE) || (cached_type == TYPE_LOAD1)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_MARVELL_PJ4)))) && ((cached_type = get_attr_type (insn)) == TYPE_LOAD2))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_MARVELL_PJ4)))) && (((cached_type = get_attr_type (insn)) == TYPE_LOAD3) || (cached_type == TYPE_LOAD4)))
        {
	  return 1;
        }
      else if ((((
#line 40 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm-tune.md"
(((enum attr_tune) arm_tune))) == (
(TUNE_MARVELL_PJ4)))) && (((cached_type = get_attr_type (insn)) == TYPE_FMACS) || (cached_type == TYPE_FMACD)))
        {
	  return 1;
        }
      else
        {
	  return 0;
        }

    }
}

int
num_delay_slots (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  switch (recog_memoized (insn))
    {
    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
    default:
      return 0;

    }
}

int
get_attr_arm_neg_pool_range (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  switch (recog_memoized (insn))
    {
    case 410:  /* *iwmmxt_arm_movdi */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7))
        {
	  return 0;
        }
      else if (which_alternative == 3)
        {
	  return 1008 /* 0x3f0 */;
        }
      else if (((1 << which_alternative) & 0x1ff0))
        {
	  return 0;
        }
      else if (which_alternative == 13)
        {
	  return 1008 /* 0x3f0 */;
        }
      else
        {
	  return 0;
        }

    case 195:  /* *movdf_soft_insn */
    case 180:  /* *arm_movdi */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7))
        {
	  return 0;
        }
      else if (which_alternative == 3)
        {
	  return 1004 /* 0x3ec */;
        }
      else
        {
	  return 0;
        }

    case 194:  /* *arm_movsf_soft_insn */
    case 3699:  /* *p *arm_movsf_soft_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 0;
        }
      else if (which_alternative == 1)
        {
	  return 4084 /* 0xff4 */;
        }
      else
        {
	  return 0;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
    default:
      return 0;

    }
}

int
get_attr_arm_pool_range (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  switch (recog_memoized (insn))
    {
    case 920:  /* *neon_movti */
    case 919:  /* *neon_movv2di */
    case 918:  /* *neon_movv4sf */
    case 917:  /* *neon_movv4si */
    case 916:  /* *neon_movv8hf */
    case 915:  /* *neon_movv8hi */
    case 914:  /* *neon_movv16qi */
    case 913:  /* *neon_movdi */
    case 912:  /* *neon_movv2sf */
    case 911:  /* *neon_movv2si */
    case 910:  /* *neon_movv4hf */
    case 909:  /* *neon_movv4hi */
    case 908:  /* *neon_movv8qi */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7))
        {
	  return 0;
        }
      else if (which_alternative == 3)
        {
	  return 1020 /* 0x3fc */;
        }
      else if (((1 << which_alternative) & 0x70))
        {
	  return 0;
        }
      else if (which_alternative == 7)
        {
	  return 1020 /* 0x3fc */;
        }
      else
        {
	  return 0;
        }

    case 4010:  /* *p *movdi_vfp_cortexa8 */
    case 633:  /* *movdi_vfp_cortexa8 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0xf))
        {
	  return 0;
        }
      else if (which_alternative == 4)
        {
	  return 1018 /* 0x3fa */;
        }
      else if (which_alternative == 5)
        {
	  return 4094 /* 0xffe */;
        }
      else if (((1 << which_alternative) & 0x3c0))
        {
	  return 0;
        }
      else if (which_alternative == 10)
        {
	  return 1018 /* 0x3fa */;
        }
      else
        {
	  return 0;
        }

    case 632:  /* *movdi_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0xf))
        {
	  return 0;
        }
      else if (which_alternative == 4)
        {
	  return 1020 /* 0x3fc */;
        }
      else if (which_alternative == 5)
        {
	  return 4096 /* 0x1000 */;
        }
      else if (((1 << which_alternative) & 0x3c0))
        {
	  return 0;
        }
      else if (which_alternative == 10)
        {
	  return 1020 /* 0x3fc */;
        }
      else
        {
	  return 0;
        }

    case 410:  /* *iwmmxt_arm_movdi */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7))
        {
	  return 0;
        }
      else if (which_alternative == 3)
        {
	  return 1020 /* 0x3fc */;
        }
      else if (((1 << which_alternative) & 0x1ff0))
        {
	  return 0;
        }
      else if (which_alternative == 13)
        {
	  return 1020 /* 0x3fc */;
        }
      else
        {
	  return 0;
        }

    case 195:  /* *movdf_soft_insn */
    case 180:  /* *arm_movdi */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7))
        {
	  return 0;
        }
      else if (which_alternative == 3)
        {
	  return 1020 /* 0x3fc */;
        }
      else
        {
	  return 0;
        }

    case 194:  /* *arm_movsf_soft_insn */
    case 3699:  /* *p *arm_movsf_soft_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 0;
        }
      else if (which_alternative == 1)
        {
	  return 4096 /* 0x1000 */;
        }
      else
        {
	  return 0;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
    default:
      return 0;

    }
}

enum attr_arch_enabled
get_attr_arch_enabled (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  enum attr_arch cached_arch ATTRIBUTE_UNUSED;

  switch (recog_memoized (insn))
    {
    case 1232:  /* lshrdi3_neon */
    case 1231:  /* ashrdi3_neon */
    case 1226:  /* ashldi3_neon */
      extract_constrain_insn_cached (insn);
      if ((((1 << which_alternative) & 0xc)) || (((!((1 << which_alternative) & 0xf)) && ((
#line 168 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_NEON)) && (! (
#line 169 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_PREFER_NEON_64BITS))))) || ((((1 << which_alternative) & 0x3)) && ((
#line 168 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_NEON)) && (
#line 169 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_PREFER_NEON_64BITS))))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 1094:  /* orndi3_neon */
      extract_constrain_insn_cached (insn);
      if ((which_alternative == 0) || (((which_alternative == 1) && (
#line 132 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_ARM))) || ((!((1 << which_alternative) & 0x3)) && (
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2)))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 998:  /* subdi3_neon */
      extract_constrain_insn_cached (insn);
      if ((((1 << which_alternative) & 0xe)) || (((which_alternative == 4) && ((
#line 168 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_NEON)) && (! (
#line 169 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_PREFER_NEON_64BITS))))) || ((which_alternative == 0) && ((
#line 168 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_NEON)) && (
#line 169 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_PREFER_NEON_64BITS))))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 984:  /* adddi3_neon */
      extract_constrain_insn_cached (insn);
      if ((!((1 << which_alternative) & 0x9)) || (((which_alternative == 3) && ((
#line 168 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_NEON)) && (! (
#line 169 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_PREFER_NEON_64BITS))))) || ((which_alternative == 0) && ((
#line 168 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_NEON)) && (
#line 169 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_PREFER_NEON_64BITS))))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 809:  /* *thumb1_movhi_insn */
      extract_constrain_insn_cached (insn);
      if (((((1 << which_alternative) & 0x3f)) && (
#line 81 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB1))) || ((which_alternative == 6) && (
#line 164 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB1 && arm_arch8))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 808:  /* *thumb1_movsi_insn */
      extract_constrain_insn_cached (insn);
      if (((which_alternative != 2) && (
#line 81 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB1))) || ((which_alternative == 2) && (
#line 164 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB1 && arm_arch8))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 807:  /* *thumb1_movdi_insn */
      extract_constrain_insn_cached (insn);
      if (((which_alternative != 3) && (
#line 81 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB1))) || ((which_alternative == 3) && (
#line 164 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB1 && arm_arch8))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 4060:  /* *p *sqrtdf2_vfp */
    case 4059:  /* *p *sqrtsf2_vfp */
    case 4024:  /* *p *divdf3_vfp */
    case 4023:  /* *p *divsf3_vfp */
    case 715:  /* *sqrtdf2_vfp */
    case 714:  /* *sqrtsf2_vfp */
    case 666:  /* *divdf3_vfp */
    case 665:  /* *divsf3_vfp */
      extract_constrain_insn_cached (insn);
      if ((which_alternative != 1) || (
#line 182 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_arch6 || TARGET_VFP3)))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 4014:  /* *p *movdf_vfp */
    case 640:  /* *thumb2_movdf_vfp */
    case 639:  /* *movdf_vfp */
      extract_constrain_insn_cached (insn);
      if ((which_alternative != 3) || ((which_alternative == 3) && (
#line 168 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_NEON))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 4010:  /* *p *movdi_vfp_cortexa8 */
    case 633:  /* *movdi_vfp_cortexa8 */
    case 632:  /* *movdi_vfp */
      extract_constrain_insn_cached (insn);
      if ((!((1 << which_alternative) & 0x31)) || (((which_alternative == 4) && (
#line 132 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_ARM))) || ((((1 << which_alternative) & 0x21)) && (
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2)))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 3913:  /* *p ashldi3_di */
    case 3912:  /* *p ashlv2si3_di */
    case 3911:  /* *p ashlv4hi3_di */
    case 3910:  /* *p lshrdi3_di */
    case 3909:  /* *p lshrv2si3_di */
    case 3908:  /* *p lshrv4hi3_di */
    case 3907:  /* *p ashrdi3_di */
    case 3906:  /* *p ashrv2si3_di */
    case 3905:  /* *p ashrv4hi3_di */
    case 3904:  /* *p rordi3_di */
    case 3903:  /* *p rorv2si3_di */
    case 3902:  /* *p rorv4hi3_di */
    case 3901:  /* *p ashldi3_iwmmxt */
    case 3900:  /* *p ashlv2si3_iwmmxt */
    case 3899:  /* *p ashlv4hi3_iwmmxt */
    case 3898:  /* *p lshrdi3_iwmmxt */
    case 3897:  /* *p lshrv2si3_iwmmxt */
    case 3896:  /* *p lshrv4hi3_iwmmxt */
    case 3895:  /* *p ashrdi3_iwmmxt */
    case 3894:  /* *p ashrv2si3_iwmmxt */
    case 3893:  /* *p ashrv4hi3_iwmmxt */
    case 3892:  /* *p rordi3 */
    case 3891:  /* *p rorv2si3 */
    case 3890:  /* *p rorv4hi3 */
    case 535:  /* ashldi3_di */
    case 534:  /* ashlv2si3_di */
    case 533:  /* ashlv4hi3_di */
    case 532:  /* lshrdi3_di */
    case 531:  /* lshrv2si3_di */
    case 530:  /* lshrv4hi3_di */
    case 529:  /* ashrdi3_di */
    case 528:  /* ashrv2si3_di */
    case 527:  /* ashrv4hi3_di */
    case 526:  /* rordi3_di */
    case 525:  /* rorv2si3_di */
    case 524:  /* rorv4hi3_di */
    case 523:  /* ashldi3_iwmmxt */
    case 522:  /* ashlv2si3_iwmmxt */
    case 521:  /* ashlv4hi3_iwmmxt */
    case 520:  /* lshrdi3_iwmmxt */
    case 519:  /* lshrv2si3_iwmmxt */
    case 518:  /* lshrv4hi3_iwmmxt */
    case 517:  /* ashrdi3_iwmmxt */
    case 516:  /* ashrv2si3_iwmmxt */
    case 515:  /* ashrv4hi3_iwmmxt */
    case 514:  /* rordi3 */
    case 513:  /* rorv2si3 */
    case 512:  /* rorv4hi3 */
      extract_constrain_insn_cached (insn);
      if ((which_alternative != 1) || (
#line 178 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_REALLY_IWMMXT2)))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 3728:  /* *p *arm_rev */
    case 332:  /* arm_rev16si2_alt */
    case 331:  /* arm_rev16si2 */
    case 330:  /* *arm_rev16 */
    case 329:  /* *arm_revsh */
    case 328:  /* *arm_rev */
      extract_constrain_insn_cached (insn);
      if (((which_alternative == 0) && (
#line 81 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB1))) || (((which_alternative == 1) && (
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2))) || ((which_alternative == 2) && (
#line 148 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_32BIT)))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 298:  /* *if_move_neg */
    case 296:  /* *if_neg_move */
      extract_constrain_insn_cached (insn);
      if (((which_alternative == 0) && (
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2))) || ((which_alternative == 1) && (
#line 148 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_32BIT))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 262:  /* *cmp_ior */
    case 261:  /* *cmp_and */
    case 260:  /* *cmp_ite1 */
    case 259:  /* *cmp_ite0 */
      extract_constrain_insn_cached (insn);
      if ((!((1 << which_alternative) & 0x1f)) || ((((1 << which_alternative) & 0x1f)) && (
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 3717:  /* *p *and_shiftsi */
    case 3716:  /* *p *eor_shiftsi */
    case 3715:  /* *p *orr_shiftsi */
    case 3714:  /* *p *rsb_shiftsi */
    case 3713:  /* *p *add_shiftsi */
    case 247:  /* *and_shiftsi */
    case 246:  /* *eor_shiftsi */
    case 245:  /* *orr_shiftsi */
    case 244:  /* *rsb_shiftsi */
    case 243:  /* *add_shiftsi */
      extract_constrain_insn_cached (insn);
      if (((which_alternative != 1) && (
#line 132 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_ARM))) || ((which_alternative == 1) && (
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 3712:  /* *p *and_multsi */
    case 3711:  /* *p *eor_multsi */
    case 3710:  /* *p *orr_multsi */
    case 3709:  /* *p *rsb_multsi */
    case 3708:  /* *p *add_multsi */
    case 242:  /* *and_multsi */
    case 241:  /* *eor_multsi */
    case 240:  /* *orr_multsi */
    case 239:  /* *rsb_multsi */
    case 238:  /* *add_multsi */
      extract_constrain_insn_cached (insn);
      if (((which_alternative == 0) && (
#line 132 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_ARM))) || ((which_alternative == 1) && (
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 201:  /* *arm_cmpdi_unsigned */
      extract_constrain_insn_cached (insn);
      if (((which_alternative == 3) && (
#line 132 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_ARM))) || ((((1 << which_alternative) & 0x7)) && (
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 252:  /* *sub_shiftsi_compare0_scratch */
    case 251:  /* *sub_shiftsi_compare0 */
    case 198:  /* *cmpsi_shiftsi_swp */
    case 197:  /* *cmpsi_shiftsi */
      extract_constrain_insn_cached (insn);
      if (((which_alternative != 0) && (
#line 132 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_ARM))) || ((which_alternative == 0) && (
#line 148 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_32BIT))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 3697:  /* *p *arm_movqi_insn */
    case 192:  /* *arm_movqi_insn */
      extract_constrain_insn_cached (insn);
      if ((!((1 << which_alternative) & 0x69)) || ((((1 << which_alternative) & 0x69)) && (
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 4006:  /* *p *arm_movhi_fp16 */
    case 4004:  /* *p *arm_movhi_vfp */
    case 3695:  /* *p *movhi_insn_arch4 */
    case 628:  /* *arm_movhi_fp16 */
    case 626:  /* *arm_movhi_vfp */
    case 190:  /* *movhi_insn_arch4 */
      extract_constrain_insn_cached (insn);
      if ((which_alternative != 2) || ((which_alternative == 2) && (
#line 160 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_32BIT && arm_arch6 && arm_arch_thumb2))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 183:  /* pic_load_addr_unified */
      extract_constrain_insn_cached (insn);
      if (((which_alternative == 0) && (
#line 132 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_ARM))) || (((which_alternative == 2) && (
#line 81 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB1))) || ((which_alternative == 1) && (
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2)))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 4007:  /* *p *thumb2_movhi_fp16 */
    case 4005:  /* *p *thumb2_movhi_vfp */
    case 3692:  /* *p *arm_movsi_insn */
    case 629:  /* *thumb2_movhi_fp16 */
    case 627:  /* *thumb2_movhi_vfp */
    case 182:  /* *arm_movsi_insn */
      extract_constrain_insn_cached (insn);
      if ((which_alternative != 3) || ((which_alternative == 3) && (
#line 160 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_32BIT && arm_arch6 && arm_arch_thumb2))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 3677:  /* *p extendsidi2 */
    case 3676:  /* *p extendhidi2 */
    case 3675:  /* *p extendqidi2 */
    case 165:  /* extendsidi2 */
    case 164:  /* extendhidi2 */
    case 163:  /* extendqidi2 */
      extract_constrain_insn_cached (insn);
      if ((which_alternative == 1) || (((which_alternative == 2) && (
#line 132 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_ARM))) || (((which_alternative == 3) && (
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB))) || (((which_alternative == 4) && ((
#line 168 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_NEON)) && (! (
#line 169 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_PREFER_NEON_64BITS))))) || ((which_alternative == 0) && ((
#line 168 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_NEON)) && (
#line 169 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_PREFER_NEON_64BITS))))))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 3674:  /* *p zero_extendsidi2 */
    case 3673:  /* *p zero_extendhidi2 */
    case 3672:  /* *p zero_extendqidi2 */
    case 3670:  /* *p one_cmpldi2 */
    case 162:  /* zero_extendsidi2 */
    case 161:  /* zero_extendhidi2 */
    case 160:  /* zero_extendqidi2 */
    case 156:  /* one_cmpldi2 */
      extract_constrain_insn_cached (insn);
      if ((((1 << which_alternative) & 0x6)) || (((which_alternative == 3) && ((
#line 168 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_NEON)) && (! (
#line 169 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_PREFER_NEON_64BITS))))) || ((which_alternative == 0) && ((
#line 168 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_NEON)) && (
#line 169 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_PREFER_NEON_64BITS))))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 3727:  /* *p *arm_movtas_ze */
    case 3691:  /* *p *arm_movt */
    case 3666:  /* *p udivsi3 */
    case 3665:  /* *p divsi3 */
    case 327:  /* *arm_movtas_ze */
    case 181:  /* *arm_movt */
    case 146:  /* udivsi3 */
    case 145:  /* divsi3 */
      extract_constrain_insn_cached (insn);
      if (((which_alternative == 0) && (
#line 148 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_32BIT))) || ((which_alternative == 1) && (
#line 164 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB1 && arm_arch8))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 3718:  /* *p *sub_shiftsi */
    case 3657:  /* *p *not_shiftsi */
    case 250:  /* *sub_shiftsi */
    case 249:  /* *arith_shiftsi_compare0_scratch */
    case 248:  /* *arith_shiftsi_compare0 */
    case 137:  /* *not_shiftsi_compare0_scratch */
    case 136:  /* *not_shiftsi_compare0 */
    case 135:  /* *not_shiftsi */
      extract_constrain_insn_cached (insn);
      if (((which_alternative == 1) && (
#line 132 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_ARM))) || ((which_alternative == 0) && (
#line 148 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_32BIT))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 108:  /* *xordi3_insn */
      extract_constrain_insn_cached (insn);
      if ((((1 << which_alternative) & 0x1e)) || (((which_alternative == 5) && ((
#line 168 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_NEON)) && (! (
#line 169 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_PREFER_NEON_64BITS))))) || ((which_alternative == 0) && ((
#line 168 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_NEON)) && (
#line 169 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_PREFER_NEON_64BITS))))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 3640:  /* *p *iorsi3_insn */
    case 105:  /* *iorsi3_insn */
      extract_constrain_insn_cached (insn);
      if (((((1 << which_alternative) & 0x6)) && (
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2))) || ((!((1 << which_alternative) & 0x6)) && (
#line 148 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_32BIT))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 102:  /* *iordi3_insn */
    case 79:  /* *anddi3_insn */
      extract_constrain_insn_cached (insn);
      if ((((1 << which_alternative) & 0x3c)) || (((!((1 << which_alternative) & 0x3f)) && ((
#line 168 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_NEON)) && (! (
#line 169 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_PREFER_NEON_64BITS))))) || ((((1 << which_alternative) & 0x3)) && ((
#line 168 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_NEON)) && (
#line 169 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_PREFER_NEON_64BITS))))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 3598:  /* *p *arm_subsi3_insn */
    case 41:  /* *arm_subsi3_insn */
      extract_constrain_insn_cached (insn);
      if ((!((1 << which_alternative) & 0xf)) || ((((1 << which_alternative) & 0xf)) && (
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 3595:  /* *p *subsi3_carryin */
    case 29:  /* *subsi3_carryin */
      extract_constrain_insn_cached (insn);
      if ((which_alternative != 1) || (
#line 132 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_ARM)))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 3700:  /* *p *arm_cmpsi_insn */
    case 3656:  /* *p *arm_shiftsi3 */
    case 3600:  /* *p *arm_mulsi3_v6 */
    case 3588:  /* *p *compare_addsi2_op1 */
    case 3587:  /* *p *compare_addsi2_op0 */
    case 196:  /* *arm_cmpsi_insn */
    case 132:  /* *arm_shiftsi3 */
    case 45:  /* *arm_mulsi3_v6 */
    case 18:  /* *compare_addsi2_op1 */
    case 17:  /* *compare_addsi2_op0 */
      extract_constrain_insn_cached (insn);
      if ((!((1 << which_alternative) & 0x3)) || ((((1 << which_alternative) & 0x3)) && (
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 3671:  /* *p *arm_one_cmplsi2 */
    case 3667:  /* *p *arm_negsi2 */
    case 3662:  /* *p unaligned_storehi */
    case 3661:  /* *p unaligned_storesi */
    case 3660:  /* *p unaligned_loadhiu */
    case 3659:  /* *p unaligned_loadhis */
    case 3658:  /* *p unaligned_loadsi */
    case 3592:  /* *p *addsi3_carryin_alt2_geu */
    case 3591:  /* *p *addsi3_carryin_alt2_ltu */
    case 3590:  /* *p *addsi3_carryin_geu */
    case 3589:  /* *p *addsi3_carryin_ltu */
    case 3586:  /* *p *compare_negsi_si */
    case 157:  /* *arm_one_cmplsi2 */
    case 152:  /* *negdi_extendsidi */
    case 150:  /* *arm_negsi2 */
    case 142:  /* unaligned_storehi */
    case 141:  /* unaligned_storesi */
    case 140:  /* unaligned_loadhiu */
    case 139:  /* unaligned_loadhis */
    case 138:  /* unaligned_loadsi */
    case 22:  /* *addsi3_carryin_alt2_geu */
    case 21:  /* *addsi3_carryin_alt2_ltu */
    case 20:  /* *addsi3_carryin_geu */
    case 19:  /* *addsi3_carryin_ltu */
    case 13:  /* *compare_negsi_si */
      extract_constrain_insn_cached (insn);
      if ((which_alternative != 0) || ((which_alternative == 0) && (
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case 3584:  /* *p *arm_addsi3 */
    case 4:  /* *arm_addsi3 */
      extract_constrain_insn_cached (insn);
      if ((!((1 << which_alternative) & 0x398f)) || (((which_alternative == 11) && (
#line 132 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_ARM))) || ((((1 << which_alternative) & 0x318f)) && (
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2)))))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
      extract_constrain_insn_cached (insn);
      if ((cached_arch = get_attr_arch (insn)) == ARCH_ANY)
        {
	  return ARCH_ENABLED_YES;
        }
      else if ((cached_arch == ARCH_A) && (
#line 132 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_ARM)))
        {
	  return ARCH_ENABLED_YES;
        }
      else if ((cached_arch == ARCH_T) && (
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
        {
	  return ARCH_ENABLED_YES;
        }
      else if ((cached_arch == ARCH_T1) && (
#line 81 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB1)))
        {
	  return ARCH_ENABLED_YES;
        }
      else if ((cached_arch == ARCH_T2) && (
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2)))
        {
	  return ARCH_ENABLED_YES;
        }
      else if ((cached_arch == ARCH_32) && (
#line 148 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_32BIT)))
        {
	  return ARCH_ENABLED_YES;
        }
      else if ((cached_arch == ARCH_V6) && (
#line 152 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_32BIT && arm_arch6)))
        {
	  return ARCH_ENABLED_YES;
        }
      else if ((cached_arch == ARCH_NOV6) && (
#line 156 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_32BIT && !arm_arch6)))
        {
	  return ARCH_ENABLED_YES;
        }
      else if ((cached_arch == ARCH_V6T2) && (
#line 160 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_32BIT && arm_arch6 && arm_arch_thumb2)))
        {
	  return ARCH_ENABLED_YES;
        }
      else if ((cached_arch == ARCH_V8MB) && (
#line 164 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB1 && arm_arch8)))
        {
	  return ARCH_ENABLED_YES;
        }
      else if ((cached_arch == ARCH_AVOID_NEON_FOR_64BITS) && ((
#line 168 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_NEON)) && (! (
#line 169 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_PREFER_NEON_64BITS)))))
        {
	  return ARCH_ENABLED_YES;
        }
      else if ((cached_arch == ARCH_NEON_FOR_64BITS) && ((
#line 168 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_NEON)) && (
#line 169 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_PREFER_NEON_64BITS))))
        {
	  return ARCH_ENABLED_YES;
        }
      else if ((cached_arch == ARCH_IWMMXT2) && (
#line 178 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_REALLY_IWMMXT2)))
        {
	  return ARCH_ENABLED_YES;
        }
      else if ((cached_arch == ARCH_ARMV6_OR_VFPV3) && (
#line 182 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_arch6 || TARGET_VFP3)))
        {
	  return ARCH_ENABLED_YES;
        }
      else if ((cached_arch == ARCH_NEON) && (
#line 168 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_NEON)))
        {
	  return ARCH_ENABLED_YES;
        }
      else
        {
	  return ARCH_ENABLED_NO;
        }

    default:
      return ARCH_ENABLED_YES;

    }
}

enum attr_arch
get_attr_arch (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  switch (recog_memoized (insn))
    {
    case 1232:  /* lshrdi3_neon */
    case 1231:  /* ashrdi3_neon */
    case 1226:  /* ashldi3_neon */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return ARCH_NEON_FOR_64BITS;
        }
      else if (((1 << which_alternative) & 0xc))
        {
	  return ARCH_ANY;
        }
      else
        {
	  return ARCH_AVOID_NEON_FOR_64BITS;
        }

    case 1094:  /* orndi3_neon */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return ARCH_ANY;
        }
      else if (which_alternative == 1)
        {
	  return ARCH_A;
        }
      else
        {
	  return ARCH_T2;
        }

    case 998:  /* subdi3_neon */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return ARCH_NEON_FOR_64BITS;
        }
      else if (((1 << which_alternative) & 0xe))
        {
	  return ARCH_ANY;
        }
      else
        {
	  return ARCH_AVOID_NEON_FOR_64BITS;
        }

    case 984:  /* adddi3_neon */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return ARCH_NEON_FOR_64BITS;
        }
      else if (((1 << which_alternative) & 0x6))
        {
	  return ARCH_ANY;
        }
      else if (which_alternative == 3)
        {
	  return ARCH_AVOID_NEON_FOR_64BITS;
        }
      else
        {
	  return ARCH_ANY;
        }

    case 809:  /* *thumb1_movhi_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3f))
        {
	  return ARCH_T1;
        }
      else
        {
	  return ARCH_V8MB;
        }

    case 808:  /* *thumb1_movsi_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return ARCH_T1;
        }
      else if (which_alternative == 2)
        {
	  return ARCH_V8MB;
        }
      else
        {
	  return ARCH_T1;
        }

    case 807:  /* *thumb1_movdi_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7))
        {
	  return ARCH_T1;
        }
      else if (which_alternative == 3)
        {
	  return ARCH_V8MB;
        }
      else
        {
	  return ARCH_T1;
        }

    case 4014:  /* *p *movdf_vfp */
    case 640:  /* *thumb2_movdf_vfp */
    case 639:  /* *movdf_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7))
        {
	  return ARCH_ANY;
        }
      else if (which_alternative == 3)
        {
	  return ARCH_NEON;
        }
      else
        {
	  return ARCH_ANY;
        }

    case 4010:  /* *p *movdi_vfp_cortexa8 */
    case 633:  /* *movdi_vfp_cortexa8 */
    case 632:  /* *movdi_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return ARCH_T2;
        }
      else if (((1 << which_alternative) & 0xe))
        {
	  return ARCH_ANY;
        }
      else if (which_alternative == 4)
        {
	  return ARCH_A;
        }
      else if (which_alternative == 5)
        {
	  return ARCH_T2;
        }
      else
        {
	  return ARCH_ANY;
        }

    case 262:  /* *cmp_ior */
    case 261:  /* *cmp_and */
    case 260:  /* *cmp_ite1 */
    case 259:  /* *cmp_ite0 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x1f))
        {
	  return ARCH_T2;
        }
      else
        {
	  return ARCH_ANY;
        }

    case 201:  /* *arm_cmpdi_unsigned */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7))
        {
	  return ARCH_T2;
        }
      else
        {
	  return ARCH_A;
        }

    case 3697:  /* *p *arm_movqi_insn */
    case 192:  /* *arm_movqi_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return ARCH_T2;
        }
      else if (((1 << which_alternative) & 0x6))
        {
	  return ARCH_ANY;
        }
      else if (which_alternative == 3)
        {
	  return ARCH_T2;
        }
      else if (which_alternative == 4)
        {
	  return ARCH_ANY;
        }
      else if (((1 << which_alternative) & 0x60))
        {
	  return ARCH_T2;
        }
      else
        {
	  return ARCH_ANY;
        }

    case 4006:  /* *p *arm_movhi_fp16 */
    case 4004:  /* *p *arm_movhi_vfp */
    case 3695:  /* *p *movhi_insn_arch4 */
    case 628:  /* *arm_movhi_fp16 */
    case 626:  /* *arm_movhi_vfp */
    case 190:  /* *movhi_insn_arch4 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return ARCH_ANY;
        }
      else if (which_alternative == 2)
        {
	  return ARCH_V6T2;
        }
      else
        {
	  return ARCH_ANY;
        }

    case 4007:  /* *p *thumb2_movhi_fp16 */
    case 4005:  /* *p *thumb2_movhi_vfp */
    case 3692:  /* *p *arm_movsi_insn */
    case 629:  /* *thumb2_movhi_fp16 */
    case 627:  /* *thumb2_movhi_vfp */
    case 182:  /* *arm_movsi_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7))
        {
	  return ARCH_ANY;
        }
      else if (which_alternative == 3)
        {
	  return ARCH_V6T2;
        }
      else
        {
	  return ARCH_ANY;
        }

    case 3674:  /* *p zero_extendsidi2 */
    case 3673:  /* *p zero_extendhidi2 */
    case 3672:  /* *p zero_extendqidi2 */
    case 3670:  /* *p one_cmpldi2 */
    case 162:  /* zero_extendsidi2 */
    case 161:  /* zero_extendhidi2 */
    case 160:  /* zero_extendqidi2 */
    case 156:  /* one_cmpldi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return ARCH_NEON_FOR_64BITS;
        }
      else if (((1 << which_alternative) & 0x6))
        {
	  return ARCH_ANY;
        }
      else
        {
	  return ARCH_AVOID_NEON_FOR_64BITS;
        }

    case 108:  /* *xordi3_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return ARCH_NEON_FOR_64BITS;
        }
      else if (((1 << which_alternative) & 0x1e))
        {
	  return ARCH_ANY;
        }
      else
        {
	  return ARCH_AVOID_NEON_FOR_64BITS;
        }

    case 3640:  /* *p *iorsi3_insn */
    case 105:  /* *iorsi3_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return ARCH_32;
        }
      else if (((1 << which_alternative) & 0x6))
        {
	  return ARCH_T2;
        }
      else
        {
	  return ARCH_32;
        }

    case 102:  /* *iordi3_insn */
    case 79:  /* *anddi3_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return ARCH_NEON_FOR_64BITS;
        }
      else if (((1 << which_alternative) & 0x3c))
        {
	  return ARCH_ANY;
        }
      else
        {
	  return ARCH_AVOID_NEON_FOR_64BITS;
        }

    case 3598:  /* *p *arm_subsi3_insn */
    case 41:  /* *arm_subsi3_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0xf))
        {
	  return ARCH_T2;
        }
      else
        {
	  return ARCH_ANY;
        }

    case 3700:  /* *p *arm_cmpsi_insn */
    case 3656:  /* *p *arm_shiftsi3 */
    case 3600:  /* *p *arm_mulsi3_v6 */
    case 3588:  /* *p *compare_addsi2_op1 */
    case 3587:  /* *p *compare_addsi2_op0 */
    case 196:  /* *arm_cmpsi_insn */
    case 132:  /* *arm_shiftsi3 */
    case 45:  /* *arm_mulsi3_v6 */
    case 18:  /* *compare_addsi2_op1 */
    case 17:  /* *compare_addsi2_op0 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return ARCH_T2;
        }
      else
        {
	  return ARCH_ANY;
        }

    case 3584:  /* *p *arm_addsi3 */
    case 4:  /* *arm_addsi3 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0xf))
        {
	  return ARCH_T2;
        }
      else if (((1 << which_alternative) & 0x70))
        {
	  return ARCH_ANY;
        }
      else if (((1 << which_alternative) & 0x180))
        {
	  return ARCH_T2;
        }
      else if (((1 << which_alternative) & 0x600))
        {
	  return ARCH_ANY;
        }
      else if (which_alternative == 11)
        {
	  return ARCH_A;
        }
      else if (((1 << which_alternative) & 0x3000))
        {
	  return ARCH_T2;
        }
      else
        {
	  return ARCH_ANY;
        }

    case 183:  /* pic_load_addr_unified */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return ARCH_A;
        }
      else if (which_alternative == 1)
        {
	  return ARCH_T2;
        }
      else
        {
	  return ARCH_T1;
        }

    case 296:  /* *if_neg_move */
    case 298:  /* *if_move_neg */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return ARCH_T2;
        }
      else
        {
	  return ARCH_32;
        }

    case 29:  /* *subsi3_carryin */
    case 3595:  /* *p *subsi3_carryin */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return ARCH_ANY;
        }
      else
        {
	  return ARCH_A;
        }

    case 3592:  /* *p *addsi3_carryin_alt2_geu */
    case 3591:  /* *p *addsi3_carryin_alt2_ltu */
    case 3590:  /* *p *addsi3_carryin_geu */
    case 3589:  /* *p *addsi3_carryin_ltu */
    case 22:  /* *addsi3_carryin_alt2_geu */
    case 21:  /* *addsi3_carryin_alt2_ltu */
    case 20:  /* *addsi3_carryin_geu */
    case 19:  /* *addsi3_carryin_ltu */
    case 13:  /* *compare_negsi_si */
    case 138:  /* unaligned_loadsi */
    case 139:  /* unaligned_loadhis */
    case 140:  /* unaligned_loadhiu */
    case 141:  /* unaligned_storesi */
    case 142:  /* unaligned_storehi */
    case 150:  /* *arm_negsi2 */
    case 152:  /* *negdi_extendsidi */
    case 157:  /* *arm_one_cmplsi2 */
    case 3586:  /* *p *compare_negsi_si */
    case 3658:  /* *p unaligned_loadsi */
    case 3659:  /* *p unaligned_loadhis */
    case 3660:  /* *p unaligned_loadhiu */
    case 3661:  /* *p unaligned_storesi */
    case 3662:  /* *p unaligned_storehi */
    case 3667:  /* *p *arm_negsi2 */
    case 3671:  /* *p *arm_one_cmplsi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return ARCH_T2;
        }
      else
        {
	  return ARCH_ANY;
        }

    case 163:  /* extendqidi2 */
    case 164:  /* extendhidi2 */
    case 165:  /* extendsidi2 */
    case 3675:  /* *p extendqidi2 */
    case 3676:  /* *p extendhidi2 */
    case 3677:  /* *p extendsidi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return ARCH_NEON_FOR_64BITS;
        }
      else if (which_alternative == 1)
        {
	  return ARCH_ANY;
        }
      else if (which_alternative == 2)
        {
	  return ARCH_A;
        }
      else if (which_alternative == 3)
        {
	  return ARCH_T;
        }
      else
        {
	  return ARCH_AVOID_NEON_FOR_64BITS;
        }

    case 238:  /* *add_multsi */
    case 239:  /* *rsb_multsi */
    case 240:  /* *orr_multsi */
    case 241:  /* *eor_multsi */
    case 242:  /* *and_multsi */
    case 3708:  /* *p *add_multsi */
    case 3709:  /* *p *rsb_multsi */
    case 3710:  /* *p *orr_multsi */
    case 3711:  /* *p *eor_multsi */
    case 3712:  /* *p *and_multsi */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return ARCH_A;
        }
      else
        {
	  return ARCH_T2;
        }

    case 243:  /* *add_shiftsi */
    case 244:  /* *rsb_shiftsi */
    case 245:  /* *orr_shiftsi */
    case 246:  /* *eor_shiftsi */
    case 247:  /* *and_shiftsi */
    case 3713:  /* *p *add_shiftsi */
    case 3714:  /* *p *rsb_shiftsi */
    case 3715:  /* *p *orr_shiftsi */
    case 3716:  /* *p *eor_shiftsi */
    case 3717:  /* *p *and_shiftsi */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return ARCH_A;
        }
      else if (which_alternative == 1)
        {
	  return ARCH_T2;
        }
      else
        {
	  return ARCH_A;
        }

    case 252:  /* *sub_shiftsi_compare0_scratch */
    case 251:  /* *sub_shiftsi_compare0 */
    case 198:  /* *cmpsi_shiftsi_swp */
    case 197:  /* *cmpsi_shiftsi */
    case 135:  /* *not_shiftsi */
    case 136:  /* *not_shiftsi_compare0 */
    case 137:  /* *not_shiftsi_compare0_scratch */
    case 248:  /* *arith_shiftsi_compare0 */
    case 249:  /* *arith_shiftsi_compare0_scratch */
    case 250:  /* *sub_shiftsi */
    case 3657:  /* *p *not_shiftsi */
    case 3718:  /* *p *sub_shiftsi */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return ARCH_32;
        }
      else
        {
	  return ARCH_A;
        }

    case 145:  /* divsi3 */
    case 146:  /* udivsi3 */
    case 181:  /* *arm_movt */
    case 327:  /* *arm_movtas_ze */
    case 3665:  /* *p divsi3 */
    case 3666:  /* *p udivsi3 */
    case 3691:  /* *p *arm_movt */
    case 3727:  /* *p *arm_movtas_ze */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return ARCH_32;
        }
      else
        {
	  return ARCH_V8MB;
        }

    case 328:  /* *arm_rev */
    case 329:  /* *arm_revsh */
    case 330:  /* *arm_rev16 */
    case 331:  /* arm_rev16si2 */
    case 332:  /* arm_rev16si2_alt */
    case 3728:  /* *p *arm_rev */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return ARCH_T1;
        }
      else if (which_alternative == 1)
        {
	  return ARCH_T2;
        }
      else
        {
	  return ARCH_32;
        }

    case 512:  /* rorv4hi3 */
    case 513:  /* rorv2si3 */
    case 514:  /* rordi3 */
    case 515:  /* ashrv4hi3_iwmmxt */
    case 516:  /* ashrv2si3_iwmmxt */
    case 517:  /* ashrdi3_iwmmxt */
    case 518:  /* lshrv4hi3_iwmmxt */
    case 519:  /* lshrv2si3_iwmmxt */
    case 520:  /* lshrdi3_iwmmxt */
    case 521:  /* ashlv4hi3_iwmmxt */
    case 522:  /* ashlv2si3_iwmmxt */
    case 523:  /* ashldi3_iwmmxt */
    case 524:  /* rorv4hi3_di */
    case 525:  /* rorv2si3_di */
    case 526:  /* rordi3_di */
    case 527:  /* ashrv4hi3_di */
    case 528:  /* ashrv2si3_di */
    case 529:  /* ashrdi3_di */
    case 530:  /* lshrv4hi3_di */
    case 531:  /* lshrv2si3_di */
    case 532:  /* lshrdi3_di */
    case 533:  /* ashlv4hi3_di */
    case 534:  /* ashlv2si3_di */
    case 535:  /* ashldi3_di */
    case 3890:  /* *p rorv4hi3 */
    case 3891:  /* *p rorv2si3 */
    case 3892:  /* *p rordi3 */
    case 3893:  /* *p ashrv4hi3_iwmmxt */
    case 3894:  /* *p ashrv2si3_iwmmxt */
    case 3895:  /* *p ashrdi3_iwmmxt */
    case 3896:  /* *p lshrv4hi3_iwmmxt */
    case 3897:  /* *p lshrv2si3_iwmmxt */
    case 3898:  /* *p lshrdi3_iwmmxt */
    case 3899:  /* *p ashlv4hi3_iwmmxt */
    case 3900:  /* *p ashlv2si3_iwmmxt */
    case 3901:  /* *p ashldi3_iwmmxt */
    case 3902:  /* *p rorv4hi3_di */
    case 3903:  /* *p rorv2si3_di */
    case 3904:  /* *p rordi3_di */
    case 3905:  /* *p ashrv4hi3_di */
    case 3906:  /* *p ashrv2si3_di */
    case 3907:  /* *p ashrdi3_di */
    case 3908:  /* *p lshrv4hi3_di */
    case 3909:  /* *p lshrv2si3_di */
    case 3910:  /* *p lshrdi3_di */
    case 3911:  /* *p ashlv4hi3_di */
    case 3912:  /* *p ashlv2si3_di */
    case 3913:  /* *p ashldi3_di */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return ARCH_ANY;
        }
      else
        {
	  return ARCH_IWMMXT2;
        }

    case 665:  /* *divsf3_vfp */
    case 666:  /* *divdf3_vfp */
    case 714:  /* *sqrtsf2_vfp */
    case 715:  /* *sqrtdf2_vfp */
    case 4023:  /* *p *divsf3_vfp */
    case 4024:  /* *p *divdf3_vfp */
    case 4059:  /* *p *sqrtsf2_vfp */
    case 4060:  /* *p *sqrtdf2_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return ARCH_ANY;
        }
      else
        {
	  return ARCH_ARMV6_OR_VFPV3;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
    default:
      return ARCH_ANY;

    }
}

enum attr_cortex_a57_neon_type
get_attr_cortex_a57_neon_type (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  enum attr_type cached_type ATTRIBUTE_UNUSED;

  switch (recog_memoized (insn))
    {
    case 2546:  /* neon_vabdv2di_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2545:  /* neon_vabdv4sf_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2544:  /* neon_vabdv2sf_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ABD;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH;
        }

    case 2543:  /* neon_vabdv8hf_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2542:  /* neon_vabdv4hf_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ABD;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH;
        }

    case 2541:  /* neon_vabdv4si_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2540:  /* neon_vabdv2si_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ABD;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH;
        }

    case 2539:  /* neon_vabdv8hi_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2538:  /* neon_vabdv4hi_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ABD;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH;
        }

    case 2537:  /* neon_vabdv16qi_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2536:  /* neon_vabdv8qi_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ABD;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH;
        }

    case 2535:  /* neon_vabdv2di_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2534:  /* neon_vabdv4sf_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2533:  /* neon_vabdv2sf_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ABD;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH;
        }

    case 2532:  /* neon_vabdv8hf_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2531:  /* neon_vabdv4hf_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ABD;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH;
        }

    case 2530:  /* neon_vabdv4si_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2529:  /* neon_vabdv2si_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ABD;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH;
        }

    case 2528:  /* neon_vabdv8hi_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2527:  /* neon_vabdv4hi_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ABD;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH;
        }

    case 2526:  /* neon_vabdv16qi_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2525:  /* neon_vabdv8qi_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ABD;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH;
        }

    case 2451:  /* neon_vld4_dupdi */
    case 2395:  /* neon_vld3_dupdi */
      if (! ((1) > (1)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_E;
        }

    case 2450:  /* neon_vld4_dupv2sf */
    case 2449:  /* neon_vld4_dupv2si */
    case 2394:  /* neon_vld3_dupv2sf */
    case 2393:  /* neon_vld3_dupv2si */
      if (! ((2) > (1)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_E;
        }

    case 2448:  /* neon_vld4_dupv4hf */
    case 2447:  /* neon_vld4_dupv4hi */
    case 2392:  /* neon_vld3_dupv4hf */
    case 2391:  /* neon_vld3_dupv4hi */
      if (! ((4) > (1)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_E;
        }

    case 2446:  /* neon_vld4_dupv8qi */
    case 2390:  /* neon_vld3_dupv8qi */
      if (! ((8) > (1)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_E;
        }

    case 2426:  /* neon_vld4di */
    case 2370:  /* neon_vld3di */
      if ((64) == (64))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_B;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_D;
        }

    case 2425:  /* neon_vld4v2sf */
    case 2424:  /* neon_vld4v2si */
    case 2369:  /* neon_vld3v2sf */
    case 2368:  /* neon_vld3v2si */
      if ((32) == (64))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_B;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_D;
        }

    case 2423:  /* neon_vld4v4hf */
    case 2422:  /* neon_vld4v4hi */
    case 2367:  /* neon_vld3v4hf */
    case 2366:  /* neon_vld3v4hi */
      if ((16) == (64))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_B;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_D;
        }

    case 2421:  /* neon_vld4v8qi */
    case 2365:  /* neon_vld3v8qi */
      if ((8) == (64))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_B;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_D;
        }

    case 2350:  /* neon_vst2di */
      if ((64) == (64))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_STORE_B;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_STORE_COMPLEX;
        }

    case 2349:  /* neon_vst2v2sf */
    case 2348:  /* neon_vst2v2si */
      if ((32) == (64))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_STORE_B;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_STORE_COMPLEX;
        }

    case 2347:  /* neon_vst2v4hf */
    case 2346:  /* neon_vst2v4hi */
      if ((16) == (64))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_STORE_B;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_STORE_COMPLEX;
        }

    case 2345:  /* neon_vst2v8qi */
      if ((8) == (64))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_STORE_B;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_STORE_COMPLEX;
        }

    case 2344:  /* neon_vld2_dupdi */
      if (! ((1) > (1)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_C;
        }

    case 2343:  /* neon_vld2_dupv2sf */
    case 2342:  /* neon_vld2_dupv2si */
      if (! ((2) > (1)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_C;
        }

    case 2341:  /* neon_vld2_dupv4hf */
    case 2340:  /* neon_vld2_dupv4hi */
      if (! ((4) > (1)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_C;
        }

    case 2339:  /* neon_vld2_dupv8qi */
      if (! ((8) > (1)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_C;
        }

    case 2324:  /* neon_vld2di */
      if ((64) == (64))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_C;
        }

    case 2323:  /* neon_vld2v2sf */
    case 2322:  /* neon_vld2v2si */
      if ((32) == (64))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_C;
        }

    case 2321:  /* neon_vld2v4hf */
    case 2320:  /* neon_vld2v4hi */
      if ((16) == (64))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_C;
        }

    case 2319:  /* neon_vld2v8qi */
      if ((8) == (64))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_C;
        }

    case 1812:  /* neon_vdup_nv4sf */
    case 1811:  /* neon_vdup_nv4si */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_BITOPS;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FROM_GP_Q;
        }

    case 1810:  /* neon_vdup_nv2sf */
    case 1809:  /* neon_vdup_nv2si */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_BITOPS;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FROM_GP;
        }

    case 1556:  /* neon_vcltv8hf_fp16insn */
    case 1555:  /* neon_vclev8hf_fp16insn */
    case 1554:  /* neon_vcgev8hf_fp16insn */
    case 1553:  /* neon_vcgtv8hf_fp16insn */
    case 1552:  /* neon_vceqv8hf_fp16insn */
    case 1541:  /* neon_vcltv4sf_insn */
    case 1540:  /* neon_vclev4sf_insn */
    case 1539:  /* neon_vcgev4sf_insn */
    case 1538:  /* neon_vcgtv4sf_insn */
    case 1537:  /* neon_vceqv4sf_insn */
    case 1531:  /* neon_vcltv4si_insn */
    case 1530:  /* neon_vclev4si_insn */
    case 1529:  /* neon_vcgev4si_insn */
    case 1528:  /* neon_vcgtv4si_insn */
    case 1527:  /* neon_vceqv4si_insn */
    case 1521:  /* neon_vcltv8hi_insn */
    case 1520:  /* neon_vclev8hi_insn */
    case 1519:  /* neon_vcgev8hi_insn */
    case 1518:  /* neon_vcgtv8hi_insn */
    case 1517:  /* neon_vceqv8hi_insn */
    case 1511:  /* neon_vcltv16qi_insn */
    case 1510:  /* neon_vclev16qi_insn */
    case 1509:  /* neon_vcgev16qi_insn */
    case 1508:  /* neon_vcgtv16qi_insn */
    case 1507:  /* neon_vceqv16qi_insn */
      if (((cached_type = get_attr_type (insn)) == TYPE_NEON_COMPARE_Q) || (cached_type == TYPE_NEON_COMPARE_ZERO_Q))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ARITH_COMPLEX;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_UNKNOWN;
        }

    case 1561:  /* neon_vcltv4hf_fp16insn */
    case 1560:  /* neon_vclev4hf_fp16insn */
    case 1559:  /* neon_vcgev4hf_fp16insn */
    case 1558:  /* neon_vcgtv4hf_fp16insn */
    case 1557:  /* neon_vceqv4hf_fp16insn */
    case 1536:  /* neon_vcltv2sf_insn */
    case 1535:  /* neon_vclev2sf_insn */
    case 1534:  /* neon_vcgev2sf_insn */
    case 1533:  /* neon_vcgtv2sf_insn */
    case 1532:  /* neon_vceqv2sf_insn */
    case 1526:  /* neon_vcltv2si_insn */
    case 1525:  /* neon_vclev2si_insn */
    case 1524:  /* neon_vcgev2si_insn */
    case 1523:  /* neon_vcgtv2si_insn */
    case 1522:  /* neon_vceqv2si_insn */
    case 1516:  /* neon_vcltv4hi_insn */
    case 1515:  /* neon_vclev4hi_insn */
    case 1514:  /* neon_vcgev4hi_insn */
    case 1513:  /* neon_vcgtv4hi_insn */
    case 1512:  /* neon_vceqv4hi_insn */
    case 1506:  /* neon_vcltv8qi_insn */
    case 1505:  /* neon_vclev8qi_insn */
    case 1504:  /* neon_vcgev8qi_insn */
    case 1503:  /* neon_vcgtv8qi_insn */
    case 1502:  /* neon_vceqv8qi_insn */
      if (((cached_type = get_attr_type (insn)) == TYPE_NEON_COMPARE) || (cached_type == TYPE_NEON_COMPARE_ZERO))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ARITH_COMPLEX;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_UNKNOWN;
        }

    case 1225:  /* ashldi3_neon_noclobber */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_SHIFT_IMM_BASIC;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_SHIFT_REG_BASIC;
        }

    case 1224:  /* neon_load_count */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FROM_GP;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_A;
        }

    case 1197:  /* vashlv4si3 */
    case 1195:  /* vashlv8hi3 */
    case 1193:  /* vashlv16qi3 */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_SHIFT_IMM_BASIC;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_SHIFT_REG_BASIC_Q;
        }

    case 1196:  /* vashlv2si3 */
    case 1194:  /* vashlv4hi3 */
    case 1192:  /* vashlv8qi3 */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_SHIFT_IMM_BASIC;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_SHIFT_REG_BASIC;
        }

    case 1191:  /* *smaxv4sf3_neon */
    case 1183:  /* *sminv4sf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ARITH_COMPLEX;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 1306:  /* neon_vpsmaxv2sf */
    case 1302:  /* neon_vpsminv2sf */
    case 1190:  /* *smaxv2sf3_neon */
    case 1182:  /* *sminv2sf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ARITH_COMPLEX;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH;
        }

    case 1189:  /* *smaxv4si3_neon */
    case 1187:  /* *smaxv8hi3_neon */
    case 1185:  /* *smaxv16qi3_neon */
    case 1181:  /* *sminv4si3_neon */
    case 1179:  /* *sminv8hi3_neon */
    case 1177:  /* *sminv16qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ARITH_COMPLEX;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 1305:  /* neon_vpsmaxv2si */
    case 1304:  /* neon_vpsmaxv4hi */
    case 1303:  /* neon_vpsmaxv8qi */
    case 1301:  /* neon_vpsminv2si */
    case 1300:  /* neon_vpsminv4hi */
    case 1299:  /* neon_vpsminv8qi */
    case 1188:  /* *smaxv2si3_neon */
    case 1186:  /* *smaxv4hi3_neon */
    case 1184:  /* *smaxv8qi3_neon */
    case 1180:  /* *sminv2si3_neon */
    case 1178:  /* *sminv4hi3_neon */
    case 1176:  /* *sminv8qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ARITH_COMPLEX;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH;
        }

    case 1144:  /* negv4sf2 */
    case 1143:  /* negv2sf2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_NEGABS;
        }

    case 1142:  /* negv4si2 */
    case 1141:  /* negv2si2 */
    case 1140:  /* negv8hi2 */
    case 1139:  /* negv4hi2 */
    case 1138:  /* negv16qi2 */
    case 1137:  /* negv8qi2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_NEGABS;
        }

    case 1136:  /* absv4sf2 */
    case 1135:  /* absv2sf2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ARITH_COMPLEX;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_NEGABS;
        }

    case 1134:  /* absv4si2 */
    case 1133:  /* absv2si2 */
    case 1132:  /* absv8hi2 */
    case 1131:  /* absv4hi2 */
    case 1130:  /* absv16qi2 */
    case 1129:  /* absv8qi2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ARITH_COMPLEX;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_NEGABS;
        }

    case 1106:  /* bicdi3_neon */
    case 1094:  /* orndi3_neon */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_UNKNOWN;
        }

    case 1965:  /* neon_vmls_lanev4sf */
    case 1953:  /* neon_vmla_lanev4sf */
    case 1416:  /* neon_vmlsv4sf_unspec */
    case 1402:  /* neon_vmlav4sf_unspec */
    case 1024:  /* mulv4sf3negv4sfaddv4sf_neon */
    case 1014:  /* mulv4sf3addv4sf_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_MLA_Q;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_MLA_Q;
        }

    case 1962:  /* neon_vmls_lanev2sf */
    case 1950:  /* neon_vmla_lanev2sf */
    case 1415:  /* neon_vmlsv2sf_unspec */
    case 1401:  /* neon_vmlav2sf_unspec */
    case 1023:  /* mulv2sf3negv2sfaddv2sf_neon */
    case 1013:  /* mulv2sf3addv2sf_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_MLA;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_MLA;
        }

    case 1964:  /* neon_vmls_lanev4si */
    case 1963:  /* neon_vmls_lanev8hi */
    case 1952:  /* neon_vmla_lanev4si */
    case 1951:  /* neon_vmla_lanev8hi */
    case 1414:  /* neon_vmlsv4si_unspec */
    case 1412:  /* neon_vmlsv8hi_unspec */
    case 1410:  /* neon_vmlsv16qi_unspec */
    case 1400:  /* neon_vmlav4si_unspec */
    case 1398:  /* neon_vmlav8hi_unspec */
    case 1396:  /* neon_vmlav16qi_unspec */
    case 1022:  /* mulv4si3negv4siaddv4si_neon */
    case 1020:  /* mulv8hi3negv8hiaddv8hi_neon */
    case 1018:  /* mulv16qi3negv16qiaddv16qi_neon */
    case 1012:  /* mulv4si3addv4si_neon */
    case 1010:  /* mulv8hi3addv8hi_neon */
    case 1008:  /* mulv16qi3addv16qi_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_MLA_Q;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_MLA_Q;
        }

    case 1961:  /* neon_vmls_lanev2si */
    case 1960:  /* neon_vmls_lanev4hi */
    case 1949:  /* neon_vmla_lanev2si */
    case 1948:  /* neon_vmla_lanev4hi */
    case 1413:  /* neon_vmlsv2si_unspec */
    case 1411:  /* neon_vmlsv4hi_unspec */
    case 1409:  /* neon_vmlsv8qi_unspec */
    case 1399:  /* neon_vmlav2si_unspec */
    case 1397:  /* neon_vmlav4hi_unspec */
    case 1395:  /* neon_vmlav8qi_unspec */
    case 1021:  /* mulv2si3negv2siaddv2si_neon */
    case 1019:  /* mulv4hi3negv4hiaddv4hi_neon */
    case 1017:  /* mulv8qi3negv8qiaddv8qi_neon */
    case 1011:  /* mulv2si3addv2si_neon */
    case 1009:  /* mulv4hi3addv4hi_neon */
    case 1007:  /* mulv8qi3addv8qi_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_MLA;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_MLA;
        }

    case 1923:  /* neon_vmul_lanev4sf */
    case 1392:  /* neon_vmulfv4sf */
    case 1006:  /* *mulv4sf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_MULTIPLY_Q;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_MUL_Q;
        }

    case 1920:  /* neon_vmul_lanev2sf */
    case 1391:  /* neon_vmulfv2sf */
    case 1005:  /* *mulv2sf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_MULTIPLY;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_MUL;
        }

    case 1922:  /* neon_vmul_lanev4si */
    case 1921:  /* neon_vmul_lanev8hi */
    case 1390:  /* neon_vmulpv16qi */
    case 1004:  /* *mulv4si3_neon */
    case 1002:  /* *mulv8hi3_neon */
    case 1000:  /* *mulv16qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_MULTIPLY_Q;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_MUL_Q;
        }

    case 1919:  /* neon_vmul_lanev2si */
    case 1918:  /* neon_vmul_lanev4hi */
    case 1389:  /* neon_vmulpv8qi */
    case 1003:  /* *mulv2si3_neon */
    case 1001:  /* *mulv4hi3_neon */
    case 999:  /* *mulv8qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_MULTIPLY;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_MUL;
        }

    case 998:  /* subdi3_neon */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0xe))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_UNKNOWN;
        }

    case 984:  /* adddi3_neon */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x9))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_UNKNOWN;
        }

    case 1455:  /* neon_vsubv4sf_unspec */
    case 1330:  /* neon_vaddv4sf_unspec */
    case 994:  /* *subv4sf3_neon */
    case 992:  /* *subv8hf3_neon */
    case 982:  /* addv8hf3_fp16 */
    case 980:  /* *addv4sf3_neon */
    case 978:  /* *addv8hf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 1454:  /* neon_vsubv2sf_unspec */
    case 1329:  /* neon_vaddv2sf_unspec */
    case 1297:  /* neon_vpadd_internalv2sf */
    case 993:  /* *subv2sf3_neon */
    case 991:  /* *subv4hf3_neon */
    case 983:  /* addv4hf3_fp16 */
    case 979:  /* *addv2sf3_neon */
    case 977:  /* *addv4hf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH;
        }

    case 995:  /* *subv2di3_neon */
    case 990:  /* *subv4si3_neon */
    case 988:  /* *subv8hi3_neon */
    case 986:  /* *subv16qi3_neon */
    case 981:  /* *addv2di3_neon */
    case 976:  /* *addv4si3_neon */
    case 974:  /* *addv8hi3_neon */
    case 972:  /* *addv16qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 1296:  /* neon_vpadd_internalv2si */
    case 1295:  /* neon_vpadd_internalv4hi */
    case 1294:  /* neon_vpadd_internalv8qi */
    case 989:  /* *subv2si3_neon */
    case 987:  /* *subv4hi3_neon */
    case 985:  /* *subv8qi3_neon */
    case 975:  /* *addv2si3_neon */
    case 973:  /* *addv4hi3_neon */
    case 971:  /* *addv8qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH;
        }

    case 970:  /* vec_extractv2di */
    case 969:  /* vec_extractv4sf */
    case 968:  /* vec_extractv4si */
    case 967:  /* vec_extractv8hf */
    case 966:  /* vec_extractv8hi */
    case 965:  /* vec_extractv16qi */
    case 964:  /* vec_extractv2sf */
    case 963:  /* vec_extractv2si */
    case 962:  /* vec_extractv4hf */
    case 961:  /* vec_extractv4hi */
    case 960:  /* vec_extractv8qi */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_TO_GP;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_STORE_COMPLEX;
        }

    case 959:  /* vec_setv2di_internal */
    case 958:  /* vec_setv4sf_internal */
    case 957:  /* vec_setv4si_internal */
    case 956:  /* vec_setv8hf_internal */
    case 955:  /* vec_setv8hi_internal */
    case 954:  /* vec_setv16qi_internal */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FROM_GP_Q;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_C;
        }

    case 953:  /* vec_setv2sf_internal */
    case 952:  /* vec_setv2si_internal */
    case 951:  /* vec_setv4hf_internal */
    case 950:  /* vec_setv4hi_internal */
    case 949:  /* vec_setv8qi_internal */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FROM_GP;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_C;
        }

    case 924:  /* *neon_movxi */
    case 923:  /* *neon_movci */
    case 922:  /* *neon_movoi */
    case 921:  /* *neon_movei */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_BITOPS;
        }
      else if (!((1 << which_alternative) & 0x3))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_C;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_NEON_STORE_COMPLEX;
        }

    case 920:  /* *neon_movti */
    case 919:  /* *neon_movv2di */
    case 918:  /* *neon_movv4sf */
    case 917:  /* *neon_movv4si */
    case 916:  /* *neon_movv8hf */
    case 915:  /* *neon_movv8hi */
    case 914:  /* *neon_movv16qi */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x5))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_BITOPS;
        }
      else if (which_alternative == 5)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FROM_GP_Q;
        }
      else if (which_alternative == 4)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_TO_GP;
        }
      else if (which_alternative == 7)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_B;
        }
      else if (which_alternative == 3)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_C;
        }
      else if (!((1 << which_alternative) & 0xfd))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_STORE_COMPLEX;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_UNKNOWN;
        }

    case 913:  /* *neon_movdi */
    case 912:  /* *neon_movv2sf */
    case 911:  /* *neon_movv2si */
    case 910:  /* *neon_movv4hf */
    case 909:  /* *neon_movv4hi */
    case 908:  /* *neon_movv8qi */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x5))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_BITOPS;
        }
      else if (which_alternative == 5)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FROM_GP;
        }
      else if (which_alternative == 4)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_TO_GP;
        }
      else if (((1 << which_alternative) & 0x88))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_A;
        }
      else if (which_alternative == 1)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_STORE_A;
        }
      else if (!((1 << which_alternative) & 0xff))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_STORE_B;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_UNKNOWN;
        }

    case 644:  /* *thumb2_movdfcc_vfp */
    case 643:  /* *movdfcc_vfp */
    case 642:  /* *thumb2_movsfcc_vfp */
    case 641:  /* *movsfcc_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x38))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FROM_GP;
        }
      else if (!((1 << which_alternative) & 0x3f))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_TO_GP;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_UNKNOWN;
        }

    case 4014:  /* *p *movdf_vfp */
    case 640:  /* *thumb2_movdf_vfp */
    case 639:  /* *movdf_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 3)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_BITOPS;
        }
      else if (which_alternative == 0)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FROM_GP;
        }
      else if (which_alternative == 1)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_TO_GP;
        }
      else if (which_alternative == 4)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_A;
        }
      else if (which_alternative == 5)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_STORE_A;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_UNKNOWN;
        }

    case 4013:  /* *p *thumb2_movsf_vfp */
    case 4012:  /* *p *movsf_vfp */
    case 638:  /* *thumb2_movsf_vfp */
    case 637:  /* *movsf_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FROM_GP;
        }
      else if (which_alternative == 1)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_TO_GP;
        }
      else if (which_alternative == 3)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_A;
        }
      else if (which_alternative == 4)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_STORE_A;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_UNKNOWN;
        }

    case 636:  /* *movhf_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 4)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FROM_GP;
        }
      else if (which_alternative == 5)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_TO_GP;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_UNKNOWN;
        }

    case 635:  /* *movhf_vfp_neon */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 6)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FROM_GP;
        }
      else if (which_alternative == 7)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_TO_GP;
        }
      else if (which_alternative == 0)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_A;
        }
      else if (which_alternative == 1)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_STORE_A;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_UNKNOWN;
        }

    case 4011:  /* *p *movhf_vfp_fp16 */
    case 634:  /* *movhf_vfp_fp16 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 4)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FROM_GP;
        }
      else if (which_alternative == 5)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_TO_GP;
        }
      else if (which_alternative == 7)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_A;
        }
      else if (which_alternative == 8)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_STORE_A;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_UNKNOWN;
        }

    case 4010:  /* *p *movdi_vfp_cortexa8 */
    case 633:  /* *movdi_vfp_cortexa8 */
    case 632:  /* *movdi_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 7)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FROM_GP;
        }
      else if (which_alternative == 8)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_TO_GP;
        }
      else if (which_alternative == 10)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_A;
        }
      else if (!((1 << which_alternative) & 0x7ff))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_STORE_A;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_UNKNOWN;
        }

    case 4009:  /* *p *thumb2_movsi_vfp */
    case 631:  /* *thumb2_movsi_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 9)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FROM_GP;
        }
      else if (which_alternative == 10)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_TO_GP;
        }
      else if (which_alternative == 12)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_A;
        }
      else if (!((1 << which_alternative) & 0x1fff))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_STORE_A;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_UNKNOWN;
        }

    case 4008:  /* *p *arm_movsi_vfp */
    case 630:  /* *arm_movsi_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 6)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FROM_GP;
        }
      else if (which_alternative == 7)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_TO_GP;
        }
      else if (which_alternative == 9)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_A;
        }
      else if (!((1 << which_alternative) & 0x3ff))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_STORE_A;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_UNKNOWN;
        }

    case 4007:  /* *p *thumb2_movhi_fp16 */
    case 4005:  /* *p *thumb2_movhi_vfp */
    case 629:  /* *thumb2_movhi_fp16 */
    case 627:  /* *thumb2_movhi_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 6)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FROM_GP;
        }
      else if (which_alternative == 7)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_TO_GP;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_UNKNOWN;
        }

    case 4006:  /* *p *arm_movhi_fp16 */
    case 4004:  /* *p *arm_movhi_vfp */
    case 628:  /* *arm_movhi_fp16 */
    case 626:  /* *arm_movhi_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 5)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FROM_GP;
        }
      else if (which_alternative == 6)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_TO_GP;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_UNKNOWN;
        }

    case 411:  /* *iwmmxt_movsi_insn */
    case 410:  /* *iwmmxt_arm_movdi */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 10)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FROM_GP;
        }
      else if (which_alternative == 11)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_TO_GP;
        }
      else if (which_alternative == 13)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_A;
        }
      else if (!((1 << which_alternative) & 0x3fff))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_STORE_A;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_UNKNOWN;
        }

    case 3670:  /* *p one_cmpldi2 */
    case 156:  /* one_cmpldi2 */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0x6))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_BITOPS;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_UNKNOWN;
        }

    case 108:  /* *xordi3_insn */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0x1e))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_UNKNOWN;
        }

    case 102:  /* *iordi3_insn */
    case 79:  /* *anddi3_insn */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0x3c))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_UNKNOWN;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
      if (((cached_type = get_attr_type (insn)) == TYPE_NEON_ABD) || (cached_type == TYPE_NEON_ABD_LONG))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ABD;
        }
      else if (cached_type == TYPE_NEON_ABD_Q)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ABD_Q;
        }
      else if ((cached_type == TYPE_NEON_ARITH_ACC) || ((cached_type == TYPE_NEON_REDUC_ADD_ACC) || (cached_type == TYPE_NEON_REDUC_ADD_ACC_Q)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ARITH_ACC;
        }
      else if (cached_type == TYPE_NEON_ARITH_ACC_Q)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ARITH_ACC_Q;
        }
      else if ((cached_type == TYPE_NEON_ADD) || ((cached_type == TYPE_NEON_ADD_Q) || ((cached_type == TYPE_NEON_ADD_LONG) || ((cached_type == TYPE_NEON_ADD_WIDEN) || ((cached_type == TYPE_NEON_NEG) || ((cached_type == TYPE_NEON_NEG_Q) || ((cached_type == TYPE_NEON_REDUC_ADD) || ((cached_type == TYPE_NEON_REDUC_ADD_Q) || ((cached_type == TYPE_NEON_REDUC_ADD_LONG) || ((cached_type == TYPE_NEON_SUB) || ((cached_type == TYPE_NEON_SUB_Q) || ((cached_type == TYPE_NEON_SUB_LONG) || ((cached_type == TYPE_NEON_SUB_WIDEN) || ((cached_type == TYPE_NEON_LOGIC) || ((cached_type == TYPE_NEON_LOGIC_Q) || ((cached_type == TYPE_NEON_TST) || (cached_type == TYPE_NEON_TST_Q)))))))))))))))))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else if ((cached_type == TYPE_NEON_ABS) || ((cached_type == TYPE_NEON_ABS_Q) || ((cached_type == TYPE_NEON_ADD_HALVE_NARROW_Q) || ((cached_type == TYPE_NEON_ADD_HALVE) || ((cached_type == TYPE_NEON_ADD_HALVE_Q) || ((cached_type == TYPE_NEON_SUB_HALVE) || ((cached_type == TYPE_NEON_SUB_HALVE_Q) || ((cached_type == TYPE_NEON_QABS) || ((cached_type == TYPE_NEON_QABS_Q) || ((cached_type == TYPE_NEON_QADD) || ((cached_type == TYPE_NEON_QADD_Q) || ((cached_type == TYPE_NEON_QNEG) || ((cached_type == TYPE_NEON_QNEG_Q) || ((cached_type == TYPE_NEON_QSUB) || ((cached_type == TYPE_NEON_QSUB_Q) || ((cached_type == TYPE_NEON_SUB_HALVE_NARROW_Q) || ((cached_type == TYPE_NEON_COMPARE) || ((cached_type == TYPE_NEON_COMPARE_Q) || ((cached_type == TYPE_NEON_COMPARE_ZERO) || ((cached_type == TYPE_NEON_COMPARE_ZERO_Q) || ((cached_type == TYPE_NEON_MINMAX) || ((cached_type == TYPE_NEON_MINMAX_Q) || ((cached_type == TYPE_NEON_REDUC_MINMAX) || (cached_type == TYPE_NEON_REDUC_MINMAX_Q))))))))))))))))))))))))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ARITH_COMPLEX;
        }
      else if ((cached_type == TYPE_NEON_MUL_B) || ((cached_type == TYPE_NEON_MUL_H) || ((cached_type == TYPE_NEON_MUL_S) || ((cached_type == TYPE_NEON_MUL_H_SCALAR) || ((cached_type == TYPE_NEON_MUL_S_SCALAR) || ((cached_type == TYPE_NEON_SAT_MUL_B) || ((cached_type == TYPE_NEON_SAT_MUL_H) || ((cached_type == TYPE_NEON_SAT_MUL_S) || ((cached_type == TYPE_NEON_SAT_MUL_H_SCALAR) || ((cached_type == TYPE_NEON_SAT_MUL_S_SCALAR) || ((cached_type == TYPE_NEON_MUL_B_LONG) || ((cached_type == TYPE_NEON_MUL_H_LONG) || ((cached_type == TYPE_NEON_MUL_S_LONG) || ((cached_type == TYPE_NEON_MUL_D_LONG) || ((cached_type == TYPE_NEON_MUL_H_SCALAR_LONG) || ((cached_type == TYPE_NEON_MUL_S_SCALAR_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_B_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_H_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_S_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_H_SCALAR_LONG) || (cached_type == TYPE_NEON_SAT_MUL_S_SCALAR_LONG)))))))))))))))))))))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_MULTIPLY;
        }
      else if ((cached_type == TYPE_NEON_MUL_B_Q) || ((cached_type == TYPE_NEON_MUL_H_Q) || ((cached_type == TYPE_NEON_MUL_S_Q) || ((cached_type == TYPE_NEON_MUL_H_SCALAR_Q) || ((cached_type == TYPE_NEON_MUL_S_SCALAR_Q) || ((cached_type == TYPE_NEON_SAT_MUL_B_Q) || ((cached_type == TYPE_NEON_SAT_MUL_H_Q) || ((cached_type == TYPE_NEON_SAT_MUL_S_Q) || ((cached_type == TYPE_NEON_SAT_MUL_H_SCALAR_Q) || (cached_type == TYPE_NEON_SAT_MUL_S_SCALAR_Q))))))))))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_MULTIPLY_Q;
        }
      else if ((cached_type == TYPE_NEON_MLA_B) || ((cached_type == TYPE_NEON_MLA_H) || ((cached_type == TYPE_NEON_MLA_S) || ((cached_type == TYPE_NEON_MLA_H_SCALAR) || ((cached_type == TYPE_NEON_MLA_S_SCALAR) || ((cached_type == TYPE_NEON_MLA_B_LONG) || ((cached_type == TYPE_NEON_MLA_H_LONG) || ((cached_type == TYPE_NEON_MLA_S_LONG) || ((cached_type == TYPE_NEON_MLA_H_SCALAR_LONG) || (cached_type == TYPE_NEON_MLA_S_SCALAR_LONG))))))))))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_MLA;
        }
      else if ((cached_type == TYPE_NEON_MLA_B_Q) || ((cached_type == TYPE_NEON_MLA_H_Q) || ((cached_type == TYPE_NEON_MLA_S_Q) || ((cached_type == TYPE_NEON_MLA_H_SCALAR_Q) || (cached_type == TYPE_NEON_MLA_S_SCALAR_Q)))))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_MLA_Q;
        }
      else if ((cached_type == TYPE_NEON_SAT_MLA_B_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_H_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_S_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_H_SCALAR_LONG) || (cached_type == TYPE_NEON_SAT_MLA_S_SCALAR_LONG)))))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_SAT_MLA_LONG;
        }
      else if ((cached_type == TYPE_NEON_SHIFT_ACC) || (cached_type == TYPE_NEON_SHIFT_ACC_Q))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_SHIFT_ACC;
        }
      else if ((cached_type == TYPE_NEON_SHIFT_IMM) || ((cached_type == TYPE_NEON_SHIFT_IMM_Q) || ((cached_type == TYPE_NEON_SHIFT_IMM_NARROW_Q) || (cached_type == TYPE_NEON_SHIFT_IMM_LONG))))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_SHIFT_IMM_BASIC;
        }
      else if ((cached_type == TYPE_NEON_SAT_SHIFT_IMM) || ((cached_type == TYPE_NEON_SAT_SHIFT_IMM_Q) || (cached_type == TYPE_NEON_SAT_SHIFT_IMM_NARROW_Q)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_SHIFT_IMM_COMPLEX;
        }
      else if (cached_type == TYPE_NEON_SHIFT_REG)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_SHIFT_REG_BASIC;
        }
      else if (cached_type == TYPE_NEON_SHIFT_REG_Q)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_SHIFT_REG_BASIC_Q;
        }
      else if (cached_type == TYPE_NEON_SAT_SHIFT_REG)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_SHIFT_REG_COMPLEX;
        }
      else if (cached_type == TYPE_NEON_SAT_SHIFT_REG_Q)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_SHIFT_REG_COMPLEX_Q;
        }
      else if ((cached_type == TYPE_NEON_FP_NEG_S) || ((cached_type == TYPE_NEON_FP_NEG_S_Q) || ((cached_type == TYPE_NEON_FP_ABS_S) || ((cached_type == TYPE_NEON_FP_ABS_S_Q) || ((cached_type == TYPE_NEON_FP_NEG_D) || ((cached_type == TYPE_NEON_FP_NEG_D_Q) || ((cached_type == TYPE_NEON_FP_ABS_D) || (cached_type == TYPE_NEON_FP_ABS_D_Q))))))))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_NEGABS;
        }
      else if ((cached_type == TYPE_NEON_FP_ADDSUB_S) || ((cached_type == TYPE_NEON_FP_ABD_S) || ((cached_type == TYPE_NEON_FP_REDUC_ADD_S) || ((cached_type == TYPE_NEON_FP_COMPARE_S) || ((cached_type == TYPE_NEON_FP_MINMAX_S) || ((cached_type == TYPE_NEON_FP_ROUND_S) || ((cached_type == TYPE_NEON_FP_ADDSUB_D) || ((cached_type == TYPE_NEON_FP_ABD_D) || ((cached_type == TYPE_NEON_FP_REDUC_ADD_D) || ((cached_type == TYPE_NEON_FP_COMPARE_D) || ((cached_type == TYPE_NEON_FP_MINMAX_D) || ((cached_type == TYPE_NEON_FP_ROUND_D) || ((cached_type == TYPE_NEON_FP_REDUC_MINMAX_S) || (cached_type == TYPE_NEON_FP_REDUC_MINMAX_D))))))))))))))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH;
        }
      else if ((cached_type == TYPE_NEON_FP_ADDSUB_S_Q) || ((cached_type == TYPE_NEON_FP_ABD_S_Q) || ((cached_type == TYPE_NEON_FP_REDUC_ADD_S_Q) || ((cached_type == TYPE_NEON_FP_COMPARE_S_Q) || ((cached_type == TYPE_NEON_FP_MINMAX_S_Q) || ((cached_type == TYPE_NEON_FP_ROUND_S_Q) || ((cached_type == TYPE_NEON_FP_ADDSUB_D_Q) || ((cached_type == TYPE_NEON_FP_ABD_D_Q) || ((cached_type == TYPE_NEON_FP_REDUC_ADD_D_Q) || ((cached_type == TYPE_NEON_FP_COMPARE_D_Q) || ((cached_type == TYPE_NEON_FP_MINMAX_D_Q) || (cached_type == TYPE_NEON_FP_ROUND_D_Q))))))))))))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH_Q;
        }
      else if ((cached_type == TYPE_NEON_FP_REDUC_MINMAX_S_Q) || (cached_type == TYPE_NEON_FP_REDUC_MINMAX_D_Q))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_REDUCTIONS_Q;
        }
      else if ((cached_type == TYPE_NEON_FP_TO_INT_S) || ((cached_type == TYPE_NEON_INT_TO_FP_S) || ((cached_type == TYPE_NEON_FP_TO_INT_D) || (cached_type == TYPE_NEON_INT_TO_FP_D))))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_CVT_INT;
        }
      else if ((cached_type == TYPE_NEON_FP_TO_INT_S_Q) || ((cached_type == TYPE_NEON_INT_TO_FP_S_Q) || ((cached_type == TYPE_NEON_FP_TO_INT_D_Q) || (cached_type == TYPE_NEON_INT_TO_FP_D_Q))))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_CVT_INT_Q;
        }
      else if ((cached_type == TYPE_NEON_FP_CVT_NARROW_S_Q) || (cached_type == TYPE_NEON_FP_CVT_WIDEN_H))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_CVT16;
        }
      else if ((cached_type == TYPE_NEON_FP_MUL_S) || ((cached_type == TYPE_NEON_FP_MUL_S_SCALAR) || (cached_type == TYPE_NEON_FP_MUL_D)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_MUL;
        }
      else if ((cached_type == TYPE_NEON_FP_MUL_S_Q) || ((cached_type == TYPE_NEON_FP_MUL_S_SCALAR_Q) || ((cached_type == TYPE_NEON_FP_MUL_D_Q) || (cached_type == TYPE_NEON_FP_MUL_D_SCALAR_Q))))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_MUL_Q;
        }
      else if ((cached_type == TYPE_NEON_FP_MLA_S) || ((cached_type == TYPE_NEON_FP_MLA_S_SCALAR) || (cached_type == TYPE_NEON_FP_MLA_D)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_MLA;
        }
      else if ((cached_type == TYPE_NEON_FP_MLA_S_Q) || ((cached_type == TYPE_NEON_FP_MLA_S_SCALAR_Q) || ((cached_type == TYPE_NEON_FP_MLA_D_Q) || (cached_type == TYPE_NEON_FP_MLA_D_SCALAR_Q))))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_MLA_Q;
        }
      else if ((cached_type == TYPE_NEON_FP_RECPE_S) || ((cached_type == TYPE_NEON_FP_RSQRTE_S) || ((cached_type == TYPE_NEON_FP_RECPX_S) || ((cached_type == TYPE_NEON_FP_RECPE_D) || ((cached_type == TYPE_NEON_FP_RSQRTE_D) || (cached_type == TYPE_NEON_FP_RECPX_D))))))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_RECPE_RSQRTE;
        }
      else if ((cached_type == TYPE_NEON_FP_RECPE_S_Q) || ((cached_type == TYPE_NEON_FP_RSQRTE_S_Q) || ((cached_type == TYPE_NEON_FP_RECPX_S_Q) || ((cached_type == TYPE_NEON_FP_RECPE_D_Q) || ((cached_type == TYPE_NEON_FP_RSQRTE_D_Q) || (cached_type == TYPE_NEON_FP_RECPX_D_Q))))))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_RECPE_RSQRTE_Q;
        }
      else if ((cached_type == TYPE_NEON_FP_RECPS_S) || ((cached_type == TYPE_NEON_FP_RSQRTS_S) || ((cached_type == TYPE_NEON_FP_RECPS_D) || (cached_type == TYPE_NEON_FP_RSQRTS_D))))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_RECPS_RSQRTS;
        }
      else if ((cached_type == TYPE_NEON_FP_RECPS_S_Q) || ((cached_type == TYPE_NEON_FP_RSQRTS_S_Q) || ((cached_type == TYPE_NEON_FP_RECPS_D_Q) || (cached_type == TYPE_NEON_FP_RSQRTS_D_Q))))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FP_RECPS_RSQRTS_Q;
        }
      else if ((cached_type == TYPE_NEON_BSL) || ((cached_type == TYPE_NEON_CLS) || ((cached_type == TYPE_NEON_CNT) || ((cached_type == TYPE_NEON_REV) || ((cached_type == TYPE_NEON_PERMUTE) || ((cached_type == TYPE_NEON_RBIT) || ((cached_type == TYPE_NEON_TBL1) || ((cached_type == TYPE_NEON_TBL2) || ((cached_type == TYPE_NEON_ZIP) || ((cached_type == TYPE_NEON_DUP) || ((cached_type == TYPE_NEON_DUP_Q) || ((cached_type == TYPE_NEON_EXT) || ((cached_type == TYPE_NEON_EXT_Q) || ((cached_type == TYPE_NEON_MOVE) || ((cached_type == TYPE_NEON_MOVE_Q) || (cached_type == TYPE_NEON_MOVE_NARROW_Q))))))))))))))))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_BITOPS;
        }
      else if ((cached_type == TYPE_NEON_BSL_Q) || ((cached_type == TYPE_NEON_CLS_Q) || ((cached_type == TYPE_NEON_CNT_Q) || ((cached_type == TYPE_NEON_REV_Q) || ((cached_type == TYPE_NEON_PERMUTE_Q) || (cached_type == TYPE_NEON_RBIT_Q))))))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_BITOPS_Q;
        }
      else if ((cached_type == TYPE_NEON_FROM_GP) || ((cached_type == TYPE_F_MCR) || (cached_type == TYPE_F_MCRR)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FROM_GP;
        }
      else if (cached_type == TYPE_NEON_FROM_GP_Q)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_FROM_GP_Q;
        }
      else if ((cached_type == TYPE_NEON_TBL3) || (cached_type == TYPE_NEON_TBL4))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_TBL3_TBL4;
        }
      else if (cached_type == TYPE_NEON_ZIP_Q)
        {
	  return CORTEX_A57_NEON_TYPE_NEON_ZIP_Q;
        }
      else if ((cached_type == TYPE_NEON_TO_GP) || ((cached_type == TYPE_NEON_TO_GP_Q) || ((cached_type == TYPE_F_MRC) || (cached_type == TYPE_F_MRRC))))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_TO_GP;
        }
      else if ((cached_type == TYPE_F_LOADS) || ((cached_type == TYPE_F_LOADD) || ((cached_type == TYPE_NEON_LOAD1_1REG) || ((cached_type == TYPE_NEON_LOAD1_1REG_Q) || ((cached_type == TYPE_NEON_LOAD1_2REG) || (cached_type == TYPE_NEON_LOAD1_2REG_Q))))))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_A;
        }
      else if ((cached_type == TYPE_NEON_LOAD1_3REG) || ((cached_type == TYPE_NEON_LOAD1_3REG_Q) || ((cached_type == TYPE_NEON_LOAD1_4REG) || (cached_type == TYPE_NEON_LOAD1_4REG_Q))))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_B;
        }
      else if ((cached_type == TYPE_NEON_LDP) || ((cached_type == TYPE_NEON_LDP_Q) || ((cached_type == TYPE_NEON_LOAD1_ONE_LANE) || ((cached_type == TYPE_NEON_LOAD1_ONE_LANE_Q) || ((cached_type == TYPE_NEON_LOAD1_ALL_LANES) || ((cached_type == TYPE_NEON_LOAD1_ALL_LANES_Q) || ((cached_type == TYPE_NEON_LOAD2_2REG) || ((cached_type == TYPE_NEON_LOAD2_2REG_Q) || ((cached_type == TYPE_NEON_LOAD2_ALL_LANES) || (cached_type == TYPE_NEON_LOAD2_ALL_LANES_Q))))))))))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_C;
        }
      else if ((cached_type == TYPE_NEON_LOAD2_4REG) || ((cached_type == TYPE_NEON_LOAD2_4REG_Q) || ((cached_type == TYPE_NEON_LOAD3_3REG) || ((cached_type == TYPE_NEON_LOAD3_3REG_Q) || ((cached_type == TYPE_NEON_LOAD3_ONE_LANE) || ((cached_type == TYPE_NEON_LOAD3_ONE_LANE_Q) || ((cached_type == TYPE_NEON_LOAD4_4REG) || (cached_type == TYPE_NEON_LOAD4_4REG_Q))))))))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_D;
        }
      else if ((cached_type == TYPE_NEON_LOAD2_ONE_LANE) || ((cached_type == TYPE_NEON_LOAD2_ONE_LANE_Q) || ((cached_type == TYPE_NEON_LOAD3_ALL_LANES) || ((cached_type == TYPE_NEON_LOAD3_ALL_LANES_Q) || ((cached_type == TYPE_NEON_LOAD4_ALL_LANES) || (cached_type == TYPE_NEON_LOAD4_ALL_LANES_Q))))))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_E;
        }
      else if ((cached_type == TYPE_NEON_LOAD4_ONE_LANE) || (cached_type == TYPE_NEON_LOAD4_ONE_LANE_Q))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_LOAD_F;
        }
      else if ((cached_type == TYPE_F_STORES) || ((cached_type == TYPE_F_STORED) || (cached_type == TYPE_NEON_STORE1_1REG)))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_STORE_A;
        }
      else if ((cached_type == TYPE_NEON_STORE1_2REG) || (cached_type == TYPE_NEON_STORE1_1REG_Q))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_STORE_B;
        }
      else if ((cached_type == TYPE_NEON_STP) || ((cached_type == TYPE_NEON_STP_Q) || ((cached_type == TYPE_NEON_STORE1_3REG) || ((cached_type == TYPE_NEON_STORE1_3REG_Q) || ((cached_type == TYPE_NEON_STORE3_3REG) || ((cached_type == TYPE_NEON_STORE3_3REG_Q) || ((cached_type == TYPE_NEON_STORE2_4REG) || ((cached_type == TYPE_NEON_STORE2_4REG_Q) || ((cached_type == TYPE_NEON_STORE4_4REG) || ((cached_type == TYPE_NEON_STORE4_4REG_Q) || ((cached_type == TYPE_NEON_STORE2_2REG) || ((cached_type == TYPE_NEON_STORE2_2REG_Q) || ((cached_type == TYPE_NEON_STORE3_ONE_LANE) || ((cached_type == TYPE_NEON_STORE3_ONE_LANE_Q) || ((cached_type == TYPE_NEON_STORE4_ONE_LANE) || ((cached_type == TYPE_NEON_STORE4_ONE_LANE_Q) || ((cached_type == TYPE_NEON_STORE1_4REG) || ((cached_type == TYPE_NEON_STORE1_4REG_Q) || ((cached_type == TYPE_NEON_STORE1_ONE_LANE) || ((cached_type == TYPE_NEON_STORE1_ONE_LANE_Q) || ((cached_type == TYPE_NEON_STORE2_ONE_LANE) || (cached_type == TYPE_NEON_STORE2_ONE_LANE_Q))))))))))))))))))))))
        {
	  return CORTEX_A57_NEON_TYPE_NEON_STORE_COMPLEX;
        }
      else
        {
	  return CORTEX_A57_NEON_TYPE_UNKNOWN;
        }

    case 2476:  /* neon_vst4_lanev4sf */
    case 2475:  /* neon_vst4_lanev4si */
    case 2474:  /* neon_vst4_lanev8hf */
    case 2473:  /* neon_vst4_lanev8hi */
    case 2472:  /* neon_vst4_lanev2sf */
    case 2471:  /* neon_vst4_lanev2si */
    case 2470:  /* neon_vst4_lanev4hf */
    case 2469:  /* neon_vst4_lanev4hi */
    case 2468:  /* neon_vst4_lanev8qi */
    case 2467:  /* neon_vst4qbv4sf */
    case 2466:  /* neon_vst4qbv4si */
    case 2465:  /* neon_vst4qbv8hf */
    case 2464:  /* neon_vst4qbv8hi */
    case 2463:  /* neon_vst4qbv16qi */
    case 2462:  /* neon_vst4qav4sf */
    case 2461:  /* neon_vst4qav4si */
    case 2460:  /* neon_vst4qav8hf */
    case 2459:  /* neon_vst4qav8hi */
    case 2458:  /* neon_vst4qav16qi */
    case 2457:  /* neon_vst4di */
    case 2456:  /* neon_vst4v2sf */
    case 2455:  /* neon_vst4v2si */
    case 2454:  /* neon_vst4v4hf */
    case 2453:  /* neon_vst4v4hi */
    case 2452:  /* neon_vst4v8qi */
    case 2420:  /* neon_vst3_lanev4sf */
    case 2419:  /* neon_vst3_lanev4si */
    case 2418:  /* neon_vst3_lanev8hf */
    case 2417:  /* neon_vst3_lanev8hi */
    case 2416:  /* neon_vst3_lanev2sf */
    case 2415:  /* neon_vst3_lanev2si */
    case 2414:  /* neon_vst3_lanev4hf */
    case 2413:  /* neon_vst3_lanev4hi */
    case 2412:  /* neon_vst3_lanev8qi */
    case 2411:  /* neon_vst3qbv4sf */
    case 2410:  /* neon_vst3qbv4si */
    case 2409:  /* neon_vst3qbv8hf */
    case 2408:  /* neon_vst3qbv8hi */
    case 2407:  /* neon_vst3qbv16qi */
    case 2406:  /* neon_vst3qav4sf */
    case 2405:  /* neon_vst3qav4si */
    case 2404:  /* neon_vst3qav8hf */
    case 2403:  /* neon_vst3qav8hi */
    case 2402:  /* neon_vst3qav16qi */
    case 2401:  /* neon_vst3di */
    case 2400:  /* neon_vst3v2sf */
    case 2399:  /* neon_vst3v2si */
    case 2398:  /* neon_vst3v4hf */
    case 2397:  /* neon_vst3v4hi */
    case 2396:  /* neon_vst3v8qi */
    case 2364:  /* neon_vst2_lanev4sf */
    case 2363:  /* neon_vst2_lanev4si */
    case 2362:  /* neon_vst2_lanev8hf */
    case 2361:  /* neon_vst2_lanev8hi */
    case 2360:  /* neon_vst2_lanev2sf */
    case 2359:  /* neon_vst2_lanev2si */
    case 2358:  /* neon_vst2_lanev4hf */
    case 2357:  /* neon_vst2_lanev4hi */
    case 2356:  /* neon_vst2_lanev8qi */
    case 2355:  /* neon_vst2v4sf */
    case 2354:  /* neon_vst2v4si */
    case 2353:  /* neon_vst2v8hf */
    case 2352:  /* neon_vst2v8hi */
    case 2351:  /* neon_vst2v16qi */
    case 2318:  /* neon_vst1_lanev2di */
    case 2317:  /* neon_vst1_lanev4sf */
    case 2316:  /* neon_vst1_lanev4si */
    case 2315:  /* neon_vst1_lanev8hf */
    case 2314:  /* neon_vst1_lanev8hi */
    case 2313:  /* neon_vst1_lanev16qi */
    case 2312:  /* neon_vst1_lanedi */
    case 2311:  /* neon_vst1_lanev2sf */
    case 2310:  /* neon_vst1_lanev2si */
    case 2309:  /* neon_vst1_lanev4hf */
    case 2308:  /* neon_vst1_lanev4hi */
    case 2307:  /* neon_vst1_lanev8qi */
      return CORTEX_A57_NEON_TYPE_NEON_STORE_COMPLEX;

    case 2306:  /* neon_vst1v2di */
    case 2304:  /* neon_vst1v4sf */
    case 2302:  /* neon_vst1v8hf */
    case 2300:  /* neon_vst1v4si */
    case 2298:  /* neon_vst1v8hi */
    case 2296:  /* neon_vst1v16qi */
    case 942:  /* *movmisalignv2di_neon_store */
    case 941:  /* *movmisalignv4sf_neon_store */
    case 940:  /* *movmisalignv4si_neon_store */
    case 939:  /* *movmisalignv8hf_neon_store */
    case 938:  /* *movmisalignv8hi_neon_store */
    case 937:  /* *movmisalignv16qi_neon_store */
      return CORTEX_A57_NEON_TYPE_NEON_STORE_B;

    case 2305:  /* neon_vst1di */
    case 2303:  /* neon_vst1v2sf */
    case 2301:  /* neon_vst1v4hf */
    case 2299:  /* neon_vst1v2si */
    case 2297:  /* neon_vst1v4hi */
    case 2295:  /* neon_vst1v8qi */
    case 930:  /* *movmisaligndi_neon_store */
    case 929:  /* *movmisalignv2sf_neon_store */
    case 928:  /* *movmisalignv2si_neon_store */
    case 927:  /* *movmisalignv4hf_neon_store */
    case 926:  /* *movmisalignv4hi_neon_store */
    case 925:  /* *movmisalignv8qi_neon_store */
    case 746:  /* *push_multi_vfp */
      return CORTEX_A57_NEON_TYPE_NEON_STORE_A;

    case 2445:  /* neon_vld4_lanev4sf */
    case 2444:  /* neon_vld4_lanev4si */
    case 2443:  /* neon_vld4_lanev8hf */
    case 2442:  /* neon_vld4_lanev8hi */
    case 2441:  /* neon_vld4_lanev2sf */
    case 2440:  /* neon_vld4_lanev2si */
    case 2439:  /* neon_vld4_lanev4hf */
    case 2438:  /* neon_vld4_lanev4hi */
    case 2437:  /* neon_vld4_lanev8qi */
      return CORTEX_A57_NEON_TYPE_NEON_LOAD_F;

    case 2338:  /* neon_vld2_lanev4sf */
    case 2337:  /* neon_vld2_lanev4si */
    case 2336:  /* neon_vld2_lanev8hf */
    case 2335:  /* neon_vld2_lanev8hi */
    case 2334:  /* neon_vld2_lanev2sf */
    case 2333:  /* neon_vld2_lanev2si */
    case 2332:  /* neon_vld2_lanev4hf */
    case 2331:  /* neon_vld2_lanev4hi */
    case 2330:  /* neon_vld2_lanev8qi */
      return CORTEX_A57_NEON_TYPE_NEON_LOAD_E;

    case 2436:  /* neon_vld4qbv4sf */
    case 2435:  /* neon_vld4qbv4si */
    case 2434:  /* neon_vld4qbv8hf */
    case 2433:  /* neon_vld4qbv8hi */
    case 2432:  /* neon_vld4qbv16qi */
    case 2431:  /* neon_vld4qav4sf */
    case 2430:  /* neon_vld4qav4si */
    case 2429:  /* neon_vld4qav8hf */
    case 2428:  /* neon_vld4qav8hi */
    case 2427:  /* neon_vld4qav16qi */
    case 2389:  /* neon_vld3_lanev4sf */
    case 2388:  /* neon_vld3_lanev4si */
    case 2387:  /* neon_vld3_lanev8hf */
    case 2386:  /* neon_vld3_lanev8hi */
    case 2385:  /* neon_vld3_lanev2sf */
    case 2384:  /* neon_vld3_lanev2si */
    case 2383:  /* neon_vld3_lanev4hf */
    case 2382:  /* neon_vld3_lanev4hi */
    case 2381:  /* neon_vld3_lanev8qi */
    case 2380:  /* neon_vld3qbv4sf */
    case 2379:  /* neon_vld3qbv4si */
    case 2378:  /* neon_vld3qbv8hf */
    case 2377:  /* neon_vld3qbv8hi */
    case 2376:  /* neon_vld3qbv16qi */
    case 2375:  /* neon_vld3qav4sf */
    case 2374:  /* neon_vld3qav4si */
    case 2373:  /* neon_vld3qav8hf */
    case 2372:  /* neon_vld3qav8hi */
    case 2371:  /* neon_vld3qav16qi */
      return CORTEX_A57_NEON_TYPE_NEON_LOAD_D;

    case 2329:  /* neon_vld2v4sf */
    case 2328:  /* neon_vld2v4si */
    case 2327:  /* neon_vld2v8hf */
    case 2326:  /* neon_vld2v8hi */
    case 2325:  /* neon_vld2v16qi */
    case 2294:  /* neon_vld1_dupv2di */
    case 2293:  /* neon_vld1_dupv4sf */
    case 2292:  /* neon_vld1_dupv4si */
    case 2291:  /* neon_vld1_dupv8hf */
    case 2290:  /* neon_vld1_dupv8hi */
    case 2289:  /* neon_vld1_dupv16qi */
    case 2288:  /* neon_vld1_dupv2sf */
    case 2287:  /* neon_vld1_dupv2si */
    case 2286:  /* neon_vld1_dupv4hf */
    case 2285:  /* neon_vld1_dupv4hi */
    case 2284:  /* neon_vld1_dupv8qi */
    case 2283:  /* neon_vld1_lanev2di */
    case 2282:  /* neon_vld1_lanev4sf */
    case 2281:  /* neon_vld1_lanev4si */
    case 2280:  /* neon_vld1_lanev8hf */
    case 2279:  /* neon_vld1_lanev8hi */
    case 2278:  /* neon_vld1_lanev16qi */
    case 2277:  /* neon_vld1_lanedi */
    case 2276:  /* neon_vld1_lanev2sf */
    case 2275:  /* neon_vld1_lanev2si */
    case 2274:  /* neon_vld1_lanev4hf */
    case 2273:  /* neon_vld1_lanev4hi */
    case 2272:  /* neon_vld1_lanev8qi */
      return CORTEX_A57_NEON_TYPE_NEON_LOAD_C;

    case 2271:  /* neon_vld1v2di */
    case 2270:  /* neon_vld1di */
    case 2269:  /* neon_vld1v4sf */
    case 2268:  /* neon_vld1v2sf */
    case 2267:  /* neon_vld1v8hf */
    case 2266:  /* neon_vld1v4hf */
    case 2265:  /* neon_vld1v4si */
    case 2264:  /* neon_vld1v2si */
    case 2263:  /* neon_vld1v8hi */
    case 2262:  /* neon_vld1v4hi */
    case 2261:  /* neon_vld1v16qi */
    case 2260:  /* neon_vld1v8qi */
    case 948:  /* *movmisalignv2di_neon_load */
    case 947:  /* *movmisalignv4sf_neon_load */
    case 946:  /* *movmisalignv4si_neon_load */
    case 945:  /* *movmisalignv8hf_neon_load */
    case 944:  /* *movmisalignv8hi_neon_load */
    case 943:  /* *movmisalignv16qi_neon_load */
    case 936:  /* *movmisaligndi_neon_load */
    case 935:  /* *movmisalignv2sf_neon_load */
    case 934:  /* *movmisalignv2si_neon_load */
    case 933:  /* *movmisalignv4hf_neon_load */
    case 932:  /* *movmisalignv4hi_neon_load */
    case 931:  /* *movmisalignv8qi_neon_load */
      return CORTEX_A57_NEON_TYPE_NEON_LOAD_A;

    case 1802:  /* neon_vget_lanev4sf_zext_internal */
    case 1801:  /* neon_vget_lanev4si_zext_internal */
    case 1800:  /* neon_vget_lanev8hf_zext_internal */
    case 1799:  /* neon_vget_lanev8hi_zext_internal */
    case 1798:  /* neon_vget_lanev16qi_zext_internal */
    case 1797:  /* neon_vget_lanev4sf_sext_internal */
    case 1796:  /* neon_vget_lanev4si_sext_internal */
    case 1795:  /* neon_vget_lanev8hf_sext_internal */
    case 1794:  /* neon_vget_lanev8hi_sext_internal */
    case 1793:  /* neon_vget_lanev16qi_sext_internal */
    case 1792:  /* neon_vget_lanev2sf_zext_internal */
    case 1791:  /* neon_vget_lanev2si_zext_internal */
    case 1790:  /* neon_vget_lanev4hi_zext_internal */
    case 1789:  /* neon_vget_lanev8qi_zext_internal */
    case 1788:  /* neon_vget_lanev2sf_sext_internal */
    case 1787:  /* neon_vget_lanev2si_sext_internal */
    case 1786:  /* neon_vget_lanev4hi_sext_internal */
    case 1785:  /* neon_vget_lanev8qi_sext_internal */
      return CORTEX_A57_NEON_TYPE_NEON_TO_GP;

    case 2258:  /* *neon_vuzpv8hf_insn */
    case 2257:  /* *neon_vuzpv4sf_insn */
    case 2255:  /* *neon_vuzpv4si_insn */
    case 2253:  /* *neon_vuzpv8hi_insn */
    case 2251:  /* *neon_vuzpv16qi_insn */
    case 2248:  /* *neon_vzipv8hf_insn */
    case 2247:  /* *neon_vzipv4sf_insn */
    case 2245:  /* *neon_vzipv4si_insn */
    case 2243:  /* *neon_vzipv8hi_insn */
    case 2241:  /* *neon_vzipv16qi_insn */
      return CORTEX_A57_NEON_TYPE_NEON_ZIP_Q;

    case 2229:  /* neon_vtbx4v8qi */
    case 2228:  /* neon_vtbx3v8qi */
    case 2222:  /* neon_vtbl4v8qi */
    case 2221:  /* neon_vtbl3v8qi */
      return CORTEX_A57_NEON_TYPE_NEON_TBL3_TBL4;

    case 1808:  /* neon_vdup_nv8hf */
    case 1806:  /* neon_vdup_nv8hi */
    case 1805:  /* neon_vdup_nv16qi */
      return CORTEX_A57_NEON_TYPE_NEON_FROM_GP_Q;

    case 1807:  /* neon_vdup_nv4hf */
    case 1804:  /* neon_vdup_nv4hi */
    case 1803:  /* neon_vdup_nv8qi */
      return CORTEX_A57_NEON_TYPE_NEON_FROM_GP;

    case 2238:  /* *neon_vtrnv8hf_insn */
    case 2237:  /* *neon_vtrnv4sf_insn */
    case 2235:  /* *neon_vtrnv4si_insn */
    case 2233:  /* *neon_vtrnv8hi_insn */
    case 2231:  /* *neon_vtrnv16qi_insn */
    case 2012:  /* neon_vbslv2di_internal */
    case 2010:  /* neon_vbslv4sf_internal */
    case 2008:  /* neon_vbslv8hf_internal */
    case 2006:  /* neon_vbslv4si_internal */
    case 2004:  /* neon_vbslv8hi_internal */
    case 2002:  /* neon_vbslv16qi_internal */
    case 2000:  /* neon_vrev16v16qi */
    case 1998:  /* neon_vrev32v8hi */
    case 1997:  /* neon_vrev32v16qi */
    case 1994:  /* neon_vrev64v2di */
    case 1993:  /* neon_vrev64v4sf */
    case 1991:  /* neon_vrev64v8hf */
    case 1989:  /* neon_vrev64v4si */
    case 1987:  /* neon_vrev64v8hi */
    case 1985:  /* neon_vrev64v16qi */
    case 1835:  /* *neon_vswpv2di */
    case 1833:  /* *neon_vswpv4sf */
    case 1831:  /* *neon_vswpv8hf */
    case 1829:  /* *neon_vswpv4si */
    case 1827:  /* *neon_vswpv8hi */
    case 1825:  /* *neon_vswpv16qi */
    case 1774:  /* popcountv16qi2 */
    case 1772:  /* clzv4si2 */
    case 1770:  /* clzv8hi2 */
    case 1768:  /* clzv16qi2 */
    case 1766:  /* neon_vclsv4si */
    case 1764:  /* neon_vclsv8hi */
    case 1762:  /* neon_vclsv16qi */
    case 1754:  /* neon_bswapv2di */
    case 1753:  /* neon_bswapv4si */
    case 1751:  /* neon_bswapv8hi */
      return CORTEX_A57_NEON_TYPE_NEON_BITOPS_Q;

    case 2524:  /* neon_vec_pack_trunc_v2di */
    case 2523:  /* neon_vec_pack_trunc_v4si */
    case 2522:  /* neon_vec_pack_trunc_v8hi */
    case 2512:  /* neon_unpacku_v2si */
    case 2511:  /* neon_unpacks_v2si */
    case 2510:  /* neon_unpacku_v4hi */
    case 2509:  /* neon_unpacks_v4hi */
    case 2508:  /* neon_unpacku_v8qi */
    case 2507:  /* neon_unpacks_v8qi */
    case 2259:  /* *neon_vuzpv4hf_insn */
    case 2256:  /* *neon_vuzpv2sf_insn */
    case 2254:  /* *neon_vuzpv2si_insn */
    case 2252:  /* *neon_vuzpv4hi_insn */
    case 2250:  /* *neon_vuzpv8qi_insn */
    case 2249:  /* *neon_vzipv4hf_insn */
    case 2246:  /* *neon_vzipv2sf_insn */
    case 2244:  /* *neon_vzipv2si_insn */
    case 2242:  /* *neon_vzipv4hi_insn */
    case 2240:  /* *neon_vzipv8qi_insn */
    case 2239:  /* *neon_vtrnv4hf_insn */
    case 2236:  /* *neon_vtrnv2sf_insn */
    case 2234:  /* *neon_vtrnv2si_insn */
    case 2232:  /* *neon_vtrnv4hi_insn */
    case 2230:  /* *neon_vtrnv8qi_insn */
    case 2227:  /* neon_vtbx2v8qi */
    case 2226:  /* neon_vtbx1v8qi */
    case 2220:  /* neon_vtbl2v8qi */
    case 2219:  /* neon_vtbl1v8qi */
    case 2011:  /* neon_vbsldi_internal */
    case 2009:  /* neon_vbslv2sf_internal */
    case 2007:  /* neon_vbslv4hf_internal */
    case 2005:  /* neon_vbslv2si_internal */
    case 2003:  /* neon_vbslv4hi_internal */
    case 2001:  /* neon_vbslv8qi_internal */
    case 1999:  /* neon_vrev16v8qi */
    case 1996:  /* neon_vrev32v4hi */
    case 1995:  /* neon_vrev32v8qi */
    case 1992:  /* neon_vrev64v2sf */
    case 1990:  /* neon_vrev64v4hf */
    case 1988:  /* neon_vrev64v2si */
    case 1986:  /* neon_vrev64v4hi */
    case 1984:  /* neon_vrev64v8qi */
    case 1983:  /* neon_vextv2di */
    case 1982:  /* neon_vextdi */
    case 1981:  /* neon_vextv4sf */
    case 1980:  /* neon_vextv2sf */
    case 1979:  /* neon_vextv8hf */
    case 1978:  /* neon_vextv4hf */
    case 1977:  /* neon_vextv4si */
    case 1976:  /* neon_vextv2si */
    case 1975:  /* neon_vextv8hi */
    case 1974:  /* neon_vextv4hi */
    case 1973:  /* neon_vextv16qi */
    case 1972:  /* neon_vextv8qi */
    case 1834:  /* *neon_vswpdi */
    case 1832:  /* *neon_vswpv2sf */
    case 1830:  /* *neon_vswpv4hf */
    case 1828:  /* *neon_vswpv2si */
    case 1826:  /* *neon_vswpv4hi */
    case 1824:  /* *neon_vswpv8qi */
    case 1823:  /* neon_vdup_lanev4hf_internal */
    case 1822:  /* neon_vdup_lanev8hf_internal */
    case 1821:  /* neon_vdup_lanev4sf_internal */
    case 1820:  /* neon_vdup_lanev2sf_internal */
    case 1819:  /* neon_vdup_lanev4si_internal */
    case 1818:  /* neon_vdup_lanev2si_internal */
    case 1817:  /* neon_vdup_lanev8hi_internal */
    case 1816:  /* neon_vdup_lanev4hi_internal */
    case 1815:  /* neon_vdup_lanev16qi_internal */
    case 1814:  /* neon_vdup_lanev8qi_internal */
    case 1773:  /* popcountv8qi2 */
    case 1771:  /* clzv2si2 */
    case 1769:  /* clzv4hi2 */
    case 1767:  /* clzv8qi2 */
    case 1765:  /* neon_vclsv2si */
    case 1763:  /* neon_vclsv4hi */
    case 1761:  /* neon_vclsv8qi */
    case 1752:  /* neon_bswapv2si */
    case 1750:  /* neon_bswapv4hi */
    case 1128:  /* one_cmplv2di2 */
    case 1127:  /* one_cmplv4sf2 */
    case 1126:  /* one_cmplv2sf2 */
    case 1125:  /* one_cmplv8hf2 */
    case 1124:  /* one_cmplv4hf2 */
    case 1123:  /* one_cmplv4si2 */
    case 1122:  /* one_cmplv2si2 */
    case 1121:  /* one_cmplv8hi2 */
    case 1120:  /* one_cmplv4hi2 */
    case 1119:  /* one_cmplv16qi2 */
    case 1118:  /* one_cmplv8qi2 */
      return CORTEX_A57_NEON_TYPE_NEON_BITOPS;

    case 1742:  /* neon_vrsqrtsv8hf */
    case 1741:  /* neon_vrsqrtsv4sf */
    case 1738:  /* neon_vrecpsv8hf */
    case 1737:  /* neon_vrecpsv4sf */
      return CORTEX_A57_NEON_TYPE_NEON_FP_RECPS_RSQRTS_Q;

    case 1743:  /* neon_vrsqrtsv4hf */
    case 1740:  /* neon_vrsqrtsv2sf */
    case 1739:  /* neon_vrecpsv4hf */
    case 1736:  /* neon_vrecpsv2sf */
      return CORTEX_A57_NEON_TYPE_NEON_FP_RECPS_RSQRTS;

    case 1784:  /* neon_vrsqrtev4sf */
    case 1783:  /* neon_vrsqrtev4si */
    case 1780:  /* neon_vrecpev4sf */
    case 1779:  /* neon_vrecpev4si */
    case 1775:  /* neon_vrecpev8hf */
    case 1162:  /* neon_vrsqrtev8hf */
      return CORTEX_A57_NEON_TYPE_NEON_FP_RECPE_RSQRTE_Q;

    case 1782:  /* neon_vrsqrtev2sf */
    case 1781:  /* neon_vrsqrtev2si */
    case 1778:  /* neon_vrecpev2sf */
    case 1777:  /* neon_vrecpev2si */
    case 1776:  /* neon_vrecpev4hf */
    case 1163:  /* neon_vrsqrtev4hf */
      return CORTEX_A57_NEON_TYPE_NEON_FP_RECPE_RSQRTE;

    case 1035:  /* fmsubv8hf4_intrinsic */
    case 1034:  /* fmsubv4sf4_intrinsic */
    case 1032:  /* *fmsubv4sf4 */
    case 1029:  /* fmav8hf4_intrinsic */
    case 1028:  /* fmav4sf4_intrinsic */
    case 1026:  /* fmav4sf4 */
    case 1015:  /* mulv8hf3addv8hf_neon */
      return CORTEX_A57_NEON_TYPE_NEON_FP_MLA_Q;

    case 1036:  /* fmsubv4hf4_intrinsic */
    case 1033:  /* fmsubv2sf4_intrinsic */
    case 1031:  /* *fmsubv2sf4 */
    case 1030:  /* fmav4hf4_intrinsic */
    case 1027:  /* fmav2sf4_intrinsic */
    case 1025:  /* fmav2sf4 */
    case 1016:  /* mulv4hf3addv4hf_neon */
      return CORTEX_A57_NEON_TYPE_NEON_FP_MLA;

    case 1924:  /* neon_vmul_lanev8hf */
      return CORTEX_A57_NEON_TYPE_NEON_FP_MUL_Q;

    case 1925:  /* neon_vmul_lanev4hf */
      return CORTEX_A57_NEON_TYPE_NEON_FP_MUL;

    case 1859:  /* neon_vcvtv4hfv4sf */
    case 1858:  /* neon_vcvtv4sfv4hf */
      return CORTEX_A57_NEON_TYPE_NEON_FP_CVT16;

    case 1891:  /* neon_vcvtpuv8hf */
    case 1890:  /* neon_vcvtpsv8hf */
    case 1889:  /* neon_vcvtnuv8hf */
    case 1888:  /* neon_vcvtnsv8hf */
    case 1887:  /* neon_vcvtmuv8hf */
    case 1886:  /* neon_vcvtmsv8hf */
    case 1885:  /* neon_vcvtauv8hf */
    case 1884:  /* neon_vcvtasv8hf */
    case 1883:  /* neon_vcvtu_nv8hi */
    case 1882:  /* neon_vcvts_nv8hi */
    case 1879:  /* neon_vcvtu_nv4si */
    case 1878:  /* neon_vcvts_nv4si */
    case 1873:  /* neon_vcvtu_nv8hf */
    case 1872:  /* neon_vcvts_nv8hf */
    case 1871:  /* neon_vcvtu_nv4sf */
    case 1870:  /* neon_vcvts_nv4sf */
    case 1865:  /* neon_vcvtuv8hf */
    case 1864:  /* neon_vcvtsv8hf */
    case 1863:  /* neon_vcvtuv8hi */
    case 1862:  /* neon_vcvtsv8hi */
    case 1857:  /* neon_vcvtuv4si */
    case 1856:  /* neon_vcvtsv4si */
    case 1853:  /* neon_vcvtuv4sf */
    case 1852:  /* neon_vcvtsv4sf */
    case 1849:  /* fixuns_truncv4sfv4si2 */
    case 1847:  /* fix_truncv4sfv4si2 */
    case 1845:  /* floatunsv4siv4sf2 */
    case 1843:  /* floatv4siv4sf2 */
    case 1060:  /* neon_vcvtauv4sfv4si */
    case 1059:  /* neon_vcvtmuv4sfv4si */
    case 1058:  /* neon_vcvtpuv4sfv4si */
    case 1057:  /* neon_vcvtav4sfv4si */
    case 1056:  /* neon_vcvtmv4sfv4si */
    case 1055:  /* neon_vcvtpv4sfv4si */
      return CORTEX_A57_NEON_TYPE_NEON_FP_CVT_INT_Q;

    case 1899:  /* neon_vcvtpuv4hf */
    case 1898:  /* neon_vcvtpsv4hf */
    case 1897:  /* neon_vcvtnuv4hf */
    case 1896:  /* neon_vcvtnsv4hf */
    case 1895:  /* neon_vcvtmuv4hf */
    case 1894:  /* neon_vcvtmsv4hf */
    case 1893:  /* neon_vcvtauv4hf */
    case 1892:  /* neon_vcvtasv4hf */
    case 1881:  /* neon_vcvtu_nv4hi */
    case 1880:  /* neon_vcvts_nv4hi */
    case 1877:  /* neon_vcvtu_nv2si */
    case 1876:  /* neon_vcvts_nv2si */
    case 1875:  /* neon_vcvtu_nv4hf */
    case 1874:  /* neon_vcvts_nv4hf */
    case 1869:  /* neon_vcvtu_nv2sf */
    case 1868:  /* neon_vcvts_nv2sf */
    case 1867:  /* neon_vcvtuv4hf */
    case 1866:  /* neon_vcvtsv4hf */
    case 1861:  /* neon_vcvtuv4hi */
    case 1860:  /* neon_vcvtsv4hi */
    case 1855:  /* neon_vcvtuv2si */
    case 1854:  /* neon_vcvtsv2si */
    case 1851:  /* neon_vcvtuv2sf */
    case 1850:  /* neon_vcvtsv2sf */
    case 1848:  /* fixuns_truncv2sfv2si2 */
    case 1846:  /* fix_truncv2sfv2si2 */
    case 1844:  /* floatunsv2siv2sf2 */
    case 1842:  /* floatv2siv2sf2 */
    case 1054:  /* neon_vcvtauv2sfv2si */
    case 1053:  /* neon_vcvtmuv2sfv2si */
    case 1052:  /* neon_vcvtpuv2sfv2si */
    case 1051:  /* neon_vcvtav2sfv2si */
    case 1050:  /* neon_vcvtmv2sfv2si */
    case 1049:  /* neon_vcvtpv2sfv2si */
      return CORTEX_A57_NEON_TYPE_NEON_FP_CVT_INT;

    case 1735:  /* neon_vpminfv4sf */
    case 1734:  /* neon_vpmaxfv4sf */
    case 1282:  /* quad_halves_smaxv4sf */
    case 1281:  /* quad_halves_sminv4sf */
      return CORTEX_A57_NEON_TYPE_NEON_FP_REDUCTIONS_Q;

    case 1695:  /* fminv4sf3 */
    case 1694:  /* fmaxv4sf3 */
    case 1689:  /* neon_vminnmv8hf */
    case 1688:  /* neon_vmaxnmv8hf */
    case 1683:  /* neon_vminfv8hf */
    case 1682:  /* neon_vmaxfv8hf */
    case 1681:  /* neon_vminfv4sf */
    case 1680:  /* neon_vmaxfv4sf */
    case 1629:  /* neon_vabdfv4sf */
    case 1603:  /* neon_vcaltv8hf_fp16insn_unspec */
    case 1602:  /* neon_vcalev8hf_fp16insn_unspec */
    case 1601:  /* neon_vcagtv8hf_fp16insn_unspec */
    case 1600:  /* neon_vcagev8hf_fp16insn_unspec */
    case 1595:  /* neon_vcalev8hf_fp16insn */
    case 1594:  /* neon_vcaltv8hf_fp16insn */
    case 1593:  /* neon_vcagev8hf_fp16insn */
    case 1592:  /* neon_vcagtv8hf_fp16insn */
    case 1591:  /* neon_vcagtv4sf_insn_unspec */
    case 1590:  /* neon_vcagev4sf_insn_unspec */
    case 1587:  /* neon_vcagev4sf_insn */
    case 1586:  /* neon_vcagtv4sf_insn */
    case 1566:  /* neon_vclev8hf_fp16insn_unspec */
    case 1565:  /* neon_vcltv8hf_fp16insn_unspec */
    case 1564:  /* neon_vcgev8hf_fp16insn_unspec */
    case 1563:  /* neon_vcgtv8hf_fp16insn_unspec */
    case 1562:  /* neon_vceqv8hf_fp16insn_unspec */
    case 1551:  /* neon_vclev4sf_insn_unspec */
    case 1550:  /* neon_vcltv4sf_insn_unspec */
    case 1549:  /* neon_vcgev4sf_insn_unspec */
    case 1548:  /* neon_vcgtv4sf_insn_unspec */
    case 1547:  /* neon_vceqv4sf_insn_unspec */
    case 1280:  /* quad_halves_plusv4sf */
    case 1155:  /* neon_vrndxv8hf */
    case 1154:  /* neon_vrndpv8hf */
    case 1153:  /* neon_vrndnv8hf */
    case 1152:  /* neon_vrndmv8hf */
    case 1151:  /* neon_vrndav8hf */
    case 1150:  /* neon_vrndv8hf */
    case 1048:  /* neon_vrintnv4sf */
    case 1047:  /* neon_vrintav4sf */
    case 1046:  /* neon_vrintxv4sf */
    case 1045:  /* neon_vrintmv4sf */
    case 1044:  /* neon_vrintzv4sf */
    case 1043:  /* neon_vrintpv4sf */
      return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH_Q;

    case 1733:  /* neon_vpminfv2sf */
    case 1732:  /* neon_vpmaxfv2sf */
    case 1693:  /* fminv2sf3 */
    case 1692:  /* fmaxv2sf3 */
    case 1691:  /* neon_vminnmv4hf */
    case 1690:  /* neon_vmaxnmv4hf */
    case 1685:  /* neon_vminfv4hf */
    case 1684:  /* neon_vmaxfv4hf */
    case 1679:  /* neon_vminfv2sf */
    case 1678:  /* neon_vmaxfv2sf */
    case 1628:  /* neon_vabdfv2sf */
    case 1607:  /* neon_vcaltv4hf_fp16insn_unspec */
    case 1606:  /* neon_vcalev4hf_fp16insn_unspec */
    case 1605:  /* neon_vcagtv4hf_fp16insn_unspec */
    case 1604:  /* neon_vcagev4hf_fp16insn_unspec */
    case 1599:  /* neon_vcalev4hf_fp16insn */
    case 1598:  /* neon_vcaltv4hf_fp16insn */
    case 1597:  /* neon_vcagev4hf_fp16insn */
    case 1596:  /* neon_vcagtv4hf_fp16insn */
    case 1589:  /* neon_vcagtv2sf_insn_unspec */
    case 1588:  /* neon_vcagev2sf_insn_unspec */
    case 1585:  /* neon_vcagev2sf_insn */
    case 1584:  /* neon_vcagtv2sf_insn */
    case 1571:  /* neon_vclev4hf_fp16insn_unspec */
    case 1570:  /* neon_vcltv4hf_fp16insn_unspec */
    case 1569:  /* neon_vcgev4hf_fp16insn_unspec */
    case 1568:  /* neon_vcgtv4hf_fp16insn_unspec */
    case 1567:  /* neon_vceqv4hf_fp16insn_unspec */
    case 1546:  /* neon_vclev2sf_insn_unspec */
    case 1545:  /* neon_vcltv2sf_insn_unspec */
    case 1544:  /* neon_vcgev2sf_insn_unspec */
    case 1543:  /* neon_vcgtv2sf_insn_unspec */
    case 1542:  /* neon_vceqv2sf_insn_unspec */
    case 1161:  /* neon_vrndxv4hf */
    case 1160:  /* neon_vrndpv4hf */
    case 1159:  /* neon_vrndnv4hf */
    case 1158:  /* neon_vrndmv4hf */
    case 1157:  /* neon_vrndav4hf */
    case 1156:  /* neon_vrndv4hf */
    case 1042:  /* neon_vrintnv2sf */
    case 1041:  /* neon_vrintav2sf */
    case 1040:  /* neon_vrintxv2sf */
    case 1039:  /* neon_vrintmv2sf */
    case 1038:  /* neon_vrintzv2sf */
    case 1037:  /* neon_vrintpv2sf */
    case 657:  /* neon_vrndihf */
    case 656:  /* neon_vrndxhf */
    case 655:  /* neon_vrndphf */
    case 654:  /* neon_vrndnhf */
    case 653:  /* neon_vrndmhf */
    case 652:  /* neon_vrndahf */
    case 651:  /* neon_vrndhf */
      return CORTEX_A57_NEON_TYPE_NEON_FP_ARITH;

    case 2218:  /* neon_vsli_nv2di */
    case 2216:  /* neon_vsli_nv4si */
    case 2214:  /* neon_vsli_nv8hi */
    case 2212:  /* neon_vsli_nv16qi */
    case 2210:  /* neon_vsri_nv2di */
    case 2208:  /* neon_vsri_nv4si */
    case 2206:  /* neon_vsri_nv8hi */
    case 2204:  /* neon_vsri_nv16qi */
    case 1223:  /* ashlv2di3_unsigned */
    case 1222:  /* ashlv4si3_unsigned */
    case 1220:  /* ashlv8hi3_unsigned */
    case 1218:  /* ashlv16qi3_unsigned */
    case 1216:  /* ashlv2di3_signed */
    case 1215:  /* ashlv4si3_signed */
    case 1213:  /* ashlv8hi3_signed */
    case 1211:  /* ashlv16qi3_signed */
      return CORTEX_A57_NEON_TYPE_NEON_SHIFT_REG_BASIC_Q;

    case 2217:  /* neon_vsli_ndi */
    case 2215:  /* neon_vsli_nv2si */
    case 2213:  /* neon_vsli_nv4hi */
    case 2211:  /* neon_vsli_nv8qi */
    case 2209:  /* neon_vsri_ndi */
    case 2207:  /* neon_vsri_nv2si */
    case 2205:  /* neon_vsri_nv4hi */
    case 2203:  /* neon_vsri_nv8qi */
    case 1228:  /* unsigned_shift_di3_neon */
    case 1227:  /* signed_shift_di3_neon */
    case 1221:  /* ashlv2si3_unsigned */
    case 1219:  /* ashlv4hi3_unsigned */
    case 1217:  /* ashlv8qi3_unsigned */
    case 1214:  /* ashlv2si3_signed */
    case 1212:  /* ashlv4hi3_signed */
    case 1210:  /* ashlv8qi3_signed */
      return CORTEX_A57_NEON_TYPE_NEON_SHIFT_REG_BASIC;

    case 2164:  /* neon_vqshlu_nv2di */
    case 2163:  /* neon_vqshlu_ndi */
    case 2162:  /* neon_vqshlu_nv4si */
    case 2161:  /* neon_vqshlu_nv2si */
    case 2160:  /* neon_vqshlu_nv8hi */
    case 2159:  /* neon_vqshlu_nv4hi */
    case 2158:  /* neon_vqshlu_nv16qi */
    case 2157:  /* neon_vqshlu_nv8qi */
    case 2156:  /* neon_vqshl_u_nv2di */
    case 2155:  /* neon_vqshl_s_nv2di */
    case 2154:  /* neon_vqshl_u_ndi */
    case 2153:  /* neon_vqshl_s_ndi */
    case 2152:  /* neon_vqshl_u_nv4si */
    case 2151:  /* neon_vqshl_s_nv4si */
    case 2150:  /* neon_vqshl_u_nv2si */
    case 2149:  /* neon_vqshl_s_nv2si */
    case 2148:  /* neon_vqshl_u_nv8hi */
    case 2147:  /* neon_vqshl_s_nv8hi */
    case 2146:  /* neon_vqshl_u_nv4hi */
    case 2145:  /* neon_vqshl_s_nv4hi */
    case 2144:  /* neon_vqshl_u_nv16qi */
    case 2143:  /* neon_vqshl_s_nv16qi */
    case 2142:  /* neon_vqshl_u_nv8qi */
    case 2141:  /* neon_vqshl_s_nv8qi */
    case 2132:  /* neon_vqrshrun_nv2di */
    case 2131:  /* neon_vqshrun_nv2di */
    case 2130:  /* neon_vqrshrun_nv4si */
    case 2129:  /* neon_vqshrun_nv4si */
    case 2128:  /* neon_vqrshrun_nv8hi */
    case 2127:  /* neon_vqshrun_nv8hi */
    case 2126:  /* neon_vqrshrnu_nv2di */
    case 2125:  /* neon_vqrshrns_nv2di */
    case 2124:  /* neon_vqshrnu_nv2di */
    case 2123:  /* neon_vqshrns_nv2di */
    case 2122:  /* neon_vqrshrnu_nv4si */
    case 2121:  /* neon_vqrshrns_nv4si */
    case 2120:  /* neon_vqshrnu_nv4si */
    case 2119:  /* neon_vqshrns_nv4si */
    case 2118:  /* neon_vqrshrnu_nv8hi */
    case 2117:  /* neon_vqrshrns_nv8hi */
    case 2116:  /* neon_vqshrnu_nv8hi */
    case 2115:  /* neon_vqshrns_nv8hi */
    case 2076:  /* neon_vqrshluv2di */
    case 2075:  /* neon_vqrshlsv2di */
    case 2074:  /* neon_vqshluv2di */
    case 2073:  /* neon_vqshlsv2di */
    case 2072:  /* neon_vqrshludi */
    case 2071:  /* neon_vqrshlsdi */
    case 2070:  /* neon_vqshludi */
    case 2069:  /* neon_vqshlsdi */
    case 2068:  /* neon_vqrshluv4si */
    case 2067:  /* neon_vqrshlsv4si */
    case 2066:  /* neon_vqshluv4si */
    case 2065:  /* neon_vqshlsv4si */
    case 2064:  /* neon_vqrshluv2si */
    case 2063:  /* neon_vqrshlsv2si */
    case 2062:  /* neon_vqshluv2si */
    case 2061:  /* neon_vqshlsv2si */
    case 2060:  /* neon_vqrshluv8hi */
    case 2059:  /* neon_vqrshlsv8hi */
    case 2058:  /* neon_vqshluv8hi */
    case 2057:  /* neon_vqshlsv8hi */
    case 2056:  /* neon_vqrshluv4hi */
    case 2055:  /* neon_vqrshlsv4hi */
    case 2054:  /* neon_vqshluv4hi */
    case 2053:  /* neon_vqshlsv4hi */
    case 2052:  /* neon_vqrshluv16qi */
    case 2051:  /* neon_vqrshlsv16qi */
    case 2050:  /* neon_vqshluv16qi */
    case 2049:  /* neon_vqshlsv16qi */
    case 2048:  /* neon_vqrshluv8qi */
    case 2047:  /* neon_vqrshlsv8qi */
    case 2046:  /* neon_vqshluv8qi */
    case 2045:  /* neon_vqshlsv8qi */
    case 1911:  /* neon_vqmovunv2di */
    case 1910:  /* neon_vqmovunv4si */
    case 1909:  /* neon_vqmovunv8hi */
    case 1908:  /* neon_vqmovnuv2di */
    case 1907:  /* neon_vqmovnsv2di */
    case 1906:  /* neon_vqmovnuv4si */
    case 1905:  /* neon_vqmovnsv4si */
    case 1904:  /* neon_vqmovnuv8hi */
    case 1903:  /* neon_vqmovnsv8hi */
      return CORTEX_A57_NEON_TYPE_NEON_SHIFT_IMM_COMPLEX;

    case 2506:  /* neon_vec_ushiftl_v2si */
    case 2505:  /* neon_vec_sshiftl_v2si */
    case 2504:  /* neon_vec_ushiftl_v4hi */
    case 2503:  /* neon_vec_sshiftl_v4hi */
    case 2502:  /* neon_vec_ushiftl_v8qi */
    case 2501:  /* neon_vec_sshiftl_v8qi */
    case 2488:  /* neon_vec_unpacku_hi_v4si */
    case 2487:  /* neon_vec_unpacks_hi_v4si */
    case 2486:  /* neon_vec_unpacku_hi_v8hi */
    case 2485:  /* neon_vec_unpacks_hi_v8hi */
    case 2484:  /* neon_vec_unpacku_hi_v16qi */
    case 2483:  /* neon_vec_unpacks_hi_v16qi */
    case 2482:  /* neon_vec_unpacku_lo_v4si */
    case 2481:  /* neon_vec_unpacks_lo_v4si */
    case 2480:  /* neon_vec_unpacku_lo_v8hi */
    case 2479:  /* neon_vec_unpacks_lo_v8hi */
    case 2478:  /* neon_vec_unpacku_lo_v16qi */
    case 2477:  /* neon_vec_unpacks_lo_v16qi */
    case 2170:  /* neon_vshllu_nv2si */
    case 2169:  /* neon_vshlls_nv2si */
    case 2168:  /* neon_vshllu_nv4hi */
    case 2167:  /* neon_vshlls_nv4hi */
    case 2166:  /* neon_vshllu_nv8qi */
    case 2165:  /* neon_vshlls_nv8qi */
    case 2140:  /* neon_vshl_nv2di */
    case 2139:  /* neon_vshl_ndi */
    case 2138:  /* neon_vshl_nv4si */
    case 2137:  /* neon_vshl_nv2si */
    case 2136:  /* neon_vshl_nv8hi */
    case 2135:  /* neon_vshl_nv4hi */
    case 2134:  /* neon_vshl_nv16qi */
    case 2133:  /* neon_vshl_nv8qi */
    case 2114:  /* neon_vrshrn_nv2di */
    case 2113:  /* neon_vshrn_nv2di */
    case 2112:  /* neon_vrshrn_nv4si */
    case 2111:  /* neon_vshrn_nv4si */
    case 2110:  /* neon_vrshrn_nv8hi */
    case 2109:  /* neon_vshrn_nv8hi */
    case 2108:  /* neon_vrshru_nv2di */
    case 2107:  /* neon_vrshrs_nv2di */
    case 2106:  /* neon_vshru_nv2di */
    case 2105:  /* neon_vshrs_nv2di */
    case 2104:  /* neon_vrshru_ndi */
    case 2103:  /* neon_vrshrs_ndi */
    case 2102:  /* neon_vshru_ndi */
    case 2101:  /* neon_vshrs_ndi */
    case 2100:  /* neon_vrshru_nv4si */
    case 2099:  /* neon_vrshrs_nv4si */
    case 2098:  /* neon_vshru_nv4si */
    case 2097:  /* neon_vshrs_nv4si */
    case 2096:  /* neon_vrshru_nv2si */
    case 2095:  /* neon_vrshrs_nv2si */
    case 2094:  /* neon_vshru_nv2si */
    case 2093:  /* neon_vshrs_nv2si */
    case 2092:  /* neon_vrshru_nv8hi */
    case 2091:  /* neon_vrshrs_nv8hi */
    case 2090:  /* neon_vshru_nv8hi */
    case 2089:  /* neon_vshrs_nv8hi */
    case 2088:  /* neon_vrshru_nv4hi */
    case 2087:  /* neon_vrshrs_nv4hi */
    case 2086:  /* neon_vshru_nv4hi */
    case 2085:  /* neon_vshrs_nv4hi */
    case 2084:  /* neon_vrshru_nv16qi */
    case 2083:  /* neon_vrshrs_nv16qi */
    case 2082:  /* neon_vshru_nv16qi */
    case 2081:  /* neon_vshrs_nv16qi */
    case 2080:  /* neon_vrshru_nv8qi */
    case 2079:  /* neon_vrshrs_nv8qi */
    case 2078:  /* neon_vshru_nv8qi */
    case 2077:  /* neon_vshrs_nv8qi */
    case 2044:  /* neon_vrshluv2di */
    case 2043:  /* neon_vrshlsv2di */
    case 2042:  /* neon_vshluv2di */
    case 2041:  /* neon_vshlsv2di */
    case 2040:  /* neon_vrshludi */
    case 2039:  /* neon_vrshlsdi */
    case 2038:  /* neon_vshludi */
    case 2037:  /* neon_vshlsdi */
    case 2036:  /* neon_vrshluv4si */
    case 2035:  /* neon_vrshlsv4si */
    case 2034:  /* neon_vshluv4si */
    case 2033:  /* neon_vshlsv4si */
    case 2032:  /* neon_vrshluv2si */
    case 2031:  /* neon_vrshlsv2si */
    case 2030:  /* neon_vshluv2si */
    case 2029:  /* neon_vshlsv2si */
    case 2028:  /* neon_vrshluv8hi */
    case 2027:  /* neon_vrshlsv8hi */
    case 2026:  /* neon_vshluv8hi */
    case 2025:  /* neon_vshlsv8hi */
    case 2024:  /* neon_vrshluv4hi */
    case 2023:  /* neon_vrshlsv4hi */
    case 2022:  /* neon_vshluv4hi */
    case 2021:  /* neon_vshlsv4hi */
    case 2020:  /* neon_vrshluv16qi */
    case 2019:  /* neon_vrshlsv16qi */
    case 2018:  /* neon_vshluv16qi */
    case 2017:  /* neon_vshlsv16qi */
    case 2016:  /* neon_vrshluv8qi */
    case 2015:  /* neon_vrshlsv8qi */
    case 2014:  /* neon_vshluv8qi */
    case 2013:  /* neon_vshlsv8qi */
    case 1917:  /* neon_vmovluv2si */
    case 1916:  /* neon_vmovlsv2si */
    case 1915:  /* neon_vmovluv4hi */
    case 1914:  /* neon_vmovlsv4hi */
    case 1913:  /* neon_vmovluv8qi */
    case 1912:  /* neon_vmovlsv8qi */
    case 1902:  /* neon_vmovnv2di */
    case 1901:  /* neon_vmovnv4si */
    case 1900:  /* neon_vmovnv8hi */
    case 1230:  /* lshrdi3_neon_imm_noclobber */
    case 1229:  /* ashrdi3_neon_imm_noclobber */
    case 1209:  /* vlshrv4si3_imm */
    case 1208:  /* vlshrv2si3_imm */
    case 1207:  /* vlshrv8hi3_imm */
    case 1206:  /* vlshrv4hi3_imm */
    case 1205:  /* vlshrv16qi3_imm */
    case 1204:  /* vlshrv8qi3_imm */
    case 1203:  /* vashrv4si3_imm */
    case 1202:  /* vashrv2si3_imm */
    case 1201:  /* vashrv8hi3_imm */
    case 1200:  /* vashrv4hi3_imm */
    case 1199:  /* vashrv16qi3_imm */
    case 1198:  /* vashrv8qi3_imm */
      return CORTEX_A57_NEON_TYPE_NEON_SHIFT_IMM_BASIC;

    case 2202:  /* neon_vrsrau_nv2di */
    case 2201:  /* neon_vrsras_nv2di */
    case 2200:  /* neon_vsrau_nv2di */
    case 2199:  /* neon_vsras_nv2di */
    case 2198:  /* neon_vrsrau_ndi */
    case 2197:  /* neon_vrsras_ndi */
    case 2196:  /* neon_vsrau_ndi */
    case 2195:  /* neon_vsras_ndi */
    case 2194:  /* neon_vrsrau_nv4si */
    case 2193:  /* neon_vrsras_nv4si */
    case 2192:  /* neon_vsrau_nv4si */
    case 2191:  /* neon_vsras_nv4si */
    case 2190:  /* neon_vrsrau_nv2si */
    case 2189:  /* neon_vrsras_nv2si */
    case 2188:  /* neon_vsrau_nv2si */
    case 2187:  /* neon_vsras_nv2si */
    case 2186:  /* neon_vrsrau_nv8hi */
    case 2185:  /* neon_vrsras_nv8hi */
    case 2184:  /* neon_vsrau_nv8hi */
    case 2183:  /* neon_vsras_nv8hi */
    case 2182:  /* neon_vrsrau_nv4hi */
    case 2181:  /* neon_vrsras_nv4hi */
    case 2180:  /* neon_vsrau_nv4hi */
    case 2179:  /* neon_vsras_nv4hi */
    case 2178:  /* neon_vrsrau_nv16qi */
    case 2177:  /* neon_vrsras_nv16qi */
    case 2176:  /* neon_vsrau_nv16qi */
    case 2175:  /* neon_vsras_nv16qi */
    case 2174:  /* neon_vrsrau_nv8qi */
    case 2173:  /* neon_vrsras_nv8qi */
    case 2172:  /* neon_vsrau_nv8qi */
    case 2171:  /* neon_vsras_nv8qi */
      return CORTEX_A57_NEON_TYPE_NEON_SHIFT_ACC;

    case 1971:  /* neon_vqdmlsl_lanev2si */
    case 1970:  /* neon_vqdmlsl_lanev4hi */
    case 1959:  /* neon_vqdmlal_lanev2si */
    case 1958:  /* neon_vqdmlal_lanev4hi */
    case 1442:  /* neon_vqdmlslv2si */
    case 1441:  /* neon_vqdmlslv4hi */
    case 1440:  /* neon_vqdmlalv2si */
    case 1439:  /* neon_vqdmlalv4hi */
    case 1438:  /* neon_vqrdmlshv4si */
    case 1437:  /* neon_vqrdmlahv4si */
    case 1436:  /* neon_vqrdmlshv8hi */
    case 1435:  /* neon_vqrdmlahv8hi */
    case 1434:  /* neon_vqrdmlshv2si */
    case 1433:  /* neon_vqrdmlahv2si */
    case 1432:  /* neon_vqrdmlshv4hi */
    case 1431:  /* neon_vqrdmlahv4hi */
      return CORTEX_A57_NEON_TYPE_NEON_SAT_MLA_LONG;

    case 1943:  /* neon_vqrdmlsh_lanev4si */
    case 1942:  /* neon_vqrdmlah_lanev4si */
    case 1941:  /* neon_vqrdmlsh_lanev8hi */
    case 1940:  /* neon_vqrdmlah_lanev8hi */
      return CORTEX_A57_NEON_TYPE_NEON_MLA_Q;

    case 1969:  /* neon_vmlslu_lanev2si */
    case 1968:  /* neon_vmlsls_lanev2si */
    case 1967:  /* neon_vmlslu_lanev4hi */
    case 1966:  /* neon_vmlsls_lanev4hi */
    case 1957:  /* neon_vmlalu_lanev2si */
    case 1956:  /* neon_vmlals_lanev2si */
    case 1955:  /* neon_vmlalu_lanev4hi */
    case 1954:  /* neon_vmlals_lanev4hi */
    case 1947:  /* neon_vqrdmlsh_lanev2si */
    case 1946:  /* neon_vqrdmlah_lanev2si */
    case 1945:  /* neon_vqrdmlsh_lanev4hi */
    case 1944:  /* neon_vqrdmlah_lanev4hi */
    case 1422:  /* neon_vmlsluv2si */
    case 1421:  /* neon_vmlslsv2si */
    case 1420:  /* neon_vmlsluv4hi */
    case 1419:  /* neon_vmlslsv4hi */
    case 1418:  /* neon_vmlsluv8qi */
    case 1417:  /* neon_vmlslsv8qi */
    case 1408:  /* neon_vmlaluv2si */
    case 1407:  /* neon_vmlalsv2si */
    case 1406:  /* neon_vmlaluv4hi */
    case 1405:  /* neon_vmlalsv4hi */
    case 1404:  /* neon_vmlaluv8qi */
    case 1403:  /* neon_vmlalsv8qi */
      return CORTEX_A57_NEON_TYPE_NEON_MLA;

    case 1939:  /* neon_vqrdmulh_lanev2si */
    case 1938:  /* neon_vqdmulh_lanev2si */
    case 1937:  /* neon_vqrdmulh_lanev4hi */
    case 1936:  /* neon_vqdmulh_lanev4hi */
    case 1935:  /* neon_vqrdmulh_lanev4si */
    case 1934:  /* neon_vqdmulh_lanev4si */
    case 1933:  /* neon_vqrdmulh_lanev8hi */
    case 1932:  /* neon_vqdmulh_lanev8hi */
    case 1430:  /* neon_vqrdmulhv4si */
    case 1429:  /* neon_vqdmulhv4si */
    case 1428:  /* neon_vqrdmulhv8hi */
    case 1427:  /* neon_vqdmulhv8hi */
    case 1393:  /* neon_vmulfv8hf */
      return CORTEX_A57_NEON_TYPE_NEON_MULTIPLY_Q;

    case 2558:  /* crypto_vmullp64 */
    case 2518:  /* neon_vec_umult_v2si */
    case 2517:  /* neon_vec_smult_v2si */
    case 2516:  /* neon_vec_umult_v4hi */
    case 2515:  /* neon_vec_smult_v4hi */
    case 2514:  /* neon_vec_umult_v8qi */
    case 2513:  /* neon_vec_smult_v8qi */
    case 2500:  /* neon_vec_umult_hi_v4si */
    case 2499:  /* neon_vec_smult_hi_v4si */
    case 2498:  /* neon_vec_umult_hi_v8hi */
    case 2497:  /* neon_vec_smult_hi_v8hi */
    case 2496:  /* neon_vec_umult_hi_v16qi */
    case 2495:  /* neon_vec_smult_hi_v16qi */
    case 2494:  /* neon_vec_umult_lo_v4si */
    case 2493:  /* neon_vec_smult_lo_v4si */
    case 2492:  /* neon_vec_umult_lo_v8hi */
    case 2491:  /* neon_vec_smult_lo_v8hi */
    case 2490:  /* neon_vec_umult_lo_v16qi */
    case 2489:  /* neon_vec_smult_lo_v16qi */
    case 1931:  /* neon_vqdmull_lanev2si */
    case 1930:  /* neon_vqdmull_lanev4hi */
    case 1929:  /* neon_vmullu_lanev2si */
    case 1928:  /* neon_vmulls_lanev2si */
    case 1927:  /* neon_vmullu_lanev4hi */
    case 1926:  /* neon_vmulls_lanev4hi */
    case 1453:  /* neon_vqdmullv2si */
    case 1452:  /* neon_vqdmullv4hi */
    case 1451:  /* neon_vmullpv2si */
    case 1450:  /* neon_vmulluv2si */
    case 1449:  /* neon_vmullsv2si */
    case 1448:  /* neon_vmullpv4hi */
    case 1447:  /* neon_vmulluv4hi */
    case 1446:  /* neon_vmullsv4hi */
    case 1445:  /* neon_vmullpv8qi */
    case 1444:  /* neon_vmulluv8qi */
    case 1443:  /* neon_vmullsv8qi */
    case 1426:  /* neon_vqrdmulhv2si */
    case 1425:  /* neon_vqdmulhv2si */
    case 1424:  /* neon_vqrdmulhv4hi */
    case 1423:  /* neon_vqdmulhv4hi */
    case 1394:  /* neon_vmulfv4hf */
      return CORTEX_A57_NEON_TYPE_NEON_MULTIPLY;

    case 1760:  /* neon_vqnegv4si */
    case 1759:  /* neon_vqnegv2si */
    case 1758:  /* neon_vqnegv8hi */
    case 1757:  /* neon_vqnegv4hi */
    case 1756:  /* neon_vqnegv16qi */
    case 1755:  /* neon_vqnegv8qi */
    case 1749:  /* neon_vqabsv4si */
    case 1748:  /* neon_vqabsv2si */
    case 1747:  /* neon_vqabsv8hi */
    case 1746:  /* neon_vqabsv4hi */
    case 1745:  /* neon_vqabsv16qi */
    case 1744:  /* neon_vqabsv8qi */
    case 1731:  /* neon_vpminuv2si */
    case 1730:  /* neon_vpminsv2si */
    case 1729:  /* neon_vpmaxuv2si */
    case 1728:  /* neon_vpmaxsv2si */
    case 1727:  /* neon_vpminuv4hi */
    case 1726:  /* neon_vpminsv4hi */
    case 1725:  /* neon_vpmaxuv4hi */
    case 1724:  /* neon_vpmaxsv4hi */
    case 1723:  /* neon_vpminuv8qi */
    case 1722:  /* neon_vpminsv8qi */
    case 1721:  /* neon_vpmaxuv8qi */
    case 1720:  /* neon_vpmaxsv8qi */
    case 1687:  /* neon_vpminfv4hf */
    case 1686:  /* neon_vpmaxfv4hf */
    case 1677:  /* neon_vminuv4si */
    case 1676:  /* neon_vminsv4si */
    case 1675:  /* neon_vmaxuv4si */
    case 1674:  /* neon_vmaxsv4si */
    case 1673:  /* neon_vminuv2si */
    case 1672:  /* neon_vminsv2si */
    case 1671:  /* neon_vmaxuv2si */
    case 1670:  /* neon_vmaxsv2si */
    case 1669:  /* neon_vminuv8hi */
    case 1668:  /* neon_vminsv8hi */
    case 1667:  /* neon_vmaxuv8hi */
    case 1666:  /* neon_vmaxsv8hi */
    case 1665:  /* neon_vminuv4hi */
    case 1664:  /* neon_vminsv4hi */
    case 1663:  /* neon_vmaxuv4hi */
    case 1662:  /* neon_vmaxsv4hi */
    case 1661:  /* neon_vminuv16qi */
    case 1660:  /* neon_vminsv16qi */
    case 1659:  /* neon_vmaxuv16qi */
    case 1658:  /* neon_vmaxsv16qi */
    case 1657:  /* neon_vminuv8qi */
    case 1656:  /* neon_vminsv8qi */
    case 1655:  /* neon_vmaxuv8qi */
    case 1654:  /* neon_vmaxsv8qi */
    case 1583:  /* neon_vcgeuv4si */
    case 1582:  /* neon_vcgtuv4si */
    case 1581:  /* neon_vcgeuv2si */
    case 1580:  /* neon_vcgtuv2si */
    case 1579:  /* neon_vcgeuv8hi */
    case 1578:  /* neon_vcgtuv8hi */
    case 1577:  /* neon_vcgeuv4hi */
    case 1576:  /* neon_vcgtuv4hi */
    case 1575:  /* neon_vcgeuv16qi */
    case 1574:  /* neon_vcgtuv16qi */
    case 1573:  /* neon_vcgeuv8qi */
    case 1572:  /* neon_vcgtuv8qi */
    case 1501:  /* neon_vrsubhnv2di */
    case 1500:  /* neon_vsubhnv2di */
    case 1499:  /* neon_vrsubhnv4si */
    case 1498:  /* neon_vsubhnv4si */
    case 1497:  /* neon_vrsubhnv8hi */
    case 1496:  /* neon_vsubhnv8hi */
    case 1495:  /* neon_vhsubuv4si */
    case 1494:  /* neon_vhsubsv4si */
    case 1493:  /* neon_vhsubuv2si */
    case 1492:  /* neon_vhsubsv2si */
    case 1491:  /* neon_vhsubuv8hi */
    case 1490:  /* neon_vhsubsv8hi */
    case 1489:  /* neon_vhsubuv4hi */
    case 1488:  /* neon_vhsubsv4hi */
    case 1487:  /* neon_vhsubuv16qi */
    case 1486:  /* neon_vhsubsv16qi */
    case 1485:  /* neon_vhsubuv8qi */
    case 1484:  /* neon_vhsubsv8qi */
    case 1483:  /* neon_vqsubuv2di */
    case 1482:  /* neon_vqsubsv2di */
    case 1481:  /* neon_vqsubudi */
    case 1480:  /* neon_vqsubsdi */
    case 1479:  /* neon_vqsubuv4si */
    case 1478:  /* neon_vqsubsv4si */
    case 1477:  /* neon_vqsubuv2si */
    case 1476:  /* neon_vqsubsv2si */
    case 1475:  /* neon_vqsubuv8hi */
    case 1474:  /* neon_vqsubsv8hi */
    case 1473:  /* neon_vqsubuv4hi */
    case 1472:  /* neon_vqsubsv4hi */
    case 1471:  /* neon_vqsubuv16qi */
    case 1470:  /* neon_vqsubsv16qi */
    case 1469:  /* neon_vqsubuv8qi */
    case 1468:  /* neon_vqsubsv8qi */
    case 1388:  /* neon_vraddhnv2di */
    case 1387:  /* neon_vaddhnv2di */
    case 1386:  /* neon_vraddhnv4si */
    case 1385:  /* neon_vaddhnv4si */
    case 1384:  /* neon_vraddhnv8hi */
    case 1383:  /* neon_vaddhnv8hi */
    case 1382:  /* neon_vqadduv2di */
    case 1381:  /* neon_vqaddsv2di */
    case 1380:  /* neon_vqaddudi */
    case 1379:  /* neon_vqaddsdi */
    case 1378:  /* neon_vqadduv4si */
    case 1377:  /* neon_vqaddsv4si */
    case 1376:  /* neon_vqadduv2si */
    case 1375:  /* neon_vqaddsv2si */
    case 1374:  /* neon_vqadduv8hi */
    case 1373:  /* neon_vqaddsv8hi */
    case 1372:  /* neon_vqadduv4hi */
    case 1371:  /* neon_vqaddsv4hi */
    case 1370:  /* neon_vqadduv16qi */
    case 1369:  /* neon_vqaddsv16qi */
    case 1368:  /* neon_vqadduv8qi */
    case 1367:  /* neon_vqaddsv8qi */
    case 1366:  /* neon_vhadduv4si */
    case 1365:  /* neon_vhaddsv4si */
    case 1364:  /* neon_vrhadduv4si */
    case 1363:  /* neon_vrhaddsv4si */
    case 1362:  /* neon_vhadduv2si */
    case 1361:  /* neon_vhaddsv2si */
    case 1360:  /* neon_vrhadduv2si */
    case 1359:  /* neon_vrhaddsv2si */
    case 1358:  /* neon_vhadduv8hi */
    case 1357:  /* neon_vhaddsv8hi */
    case 1356:  /* neon_vrhadduv8hi */
    case 1355:  /* neon_vrhaddsv8hi */
    case 1354:  /* neon_vhadduv4hi */
    case 1353:  /* neon_vhaddsv4hi */
    case 1352:  /* neon_vrhadduv4hi */
    case 1351:  /* neon_vrhaddsv4hi */
    case 1350:  /* neon_vhadduv16qi */
    case 1349:  /* neon_vhaddsv16qi */
    case 1348:  /* neon_vrhadduv16qi */
    case 1347:  /* neon_vrhaddsv16qi */
    case 1346:  /* neon_vhadduv8qi */
    case 1345:  /* neon_vhaddsv8qi */
    case 1344:  /* neon_vrhadduv8qi */
    case 1343:  /* neon_vrhaddsv8qi */
    case 1328:  /* *us_subv2sf_neon */
    case 1327:  /* *us_subv2si_neon */
    case 1326:  /* *us_subv4hi_neon */
    case 1325:  /* *us_subv8qi_neon */
    case 1324:  /* *ss_subv2sf_neon */
    case 1323:  /* *ss_subv2si_neon */
    case 1322:  /* *ss_subv4hi_neon */
    case 1321:  /* *ss_subv8qi_neon */
    case 1320:  /* *us_addv2sf_neon */
    case 1319:  /* *us_addv2si_neon */
    case 1318:  /* *us_addv4hi_neon */
    case 1317:  /* *us_addv8qi_neon */
    case 1316:  /* *ss_addv2sf_neon */
    case 1315:  /* *ss_addv2si_neon */
    case 1314:  /* *ss_addv4hi_neon */
    case 1313:  /* *ss_addv8qi_neon */
    case 1312:  /* neon_vpumaxv2si */
    case 1311:  /* neon_vpumaxv4hi */
    case 1310:  /* neon_vpumaxv8qi */
    case 1309:  /* neon_vpuminv2si */
    case 1308:  /* neon_vpuminv4hi */
    case 1307:  /* neon_vpuminv8qi */
    case 1292:  /* quad_halves_umaxv16qi */
    case 1291:  /* quad_halves_uminv16qi */
    case 1290:  /* quad_halves_smaxv16qi */
    case 1289:  /* quad_halves_sminv16qi */
    case 1287:  /* quad_halves_umaxv8hi */
    case 1286:  /* quad_halves_uminv8hi */
    case 1285:  /* quad_halves_smaxv8hi */
    case 1284:  /* quad_halves_sminv8hi */
    case 1279:  /* quad_halves_umaxv4si */
    case 1278:  /* quad_halves_uminv4si */
    case 1277:  /* quad_halves_smaxv4si */
    case 1276:  /* quad_halves_sminv4si */
    case 1175:  /* *umaxv4si3_neon */
    case 1174:  /* *umaxv2si3_neon */
    case 1173:  /* *umaxv8hi3_neon */
    case 1172:  /* *umaxv4hi3_neon */
    case 1171:  /* *umaxv16qi3_neon */
    case 1170:  /* *umaxv8qi3_neon */
    case 1169:  /* *uminv4si3_neon */
    case 1168:  /* *uminv2si3_neon */
    case 1167:  /* *uminv8hi3_neon */
    case 1166:  /* *uminv4hi3_neon */
    case 1165:  /* *uminv16qi3_neon */
    case 1164:  /* *uminv8qi3_neon */
    case 1149:  /* negv4hf2 */
    case 1148:  /* absv4hf2 */
    case 1147:  /* negv8hf2 */
    case 1146:  /* absv8hf2 */
      return CORTEX_A57_NEON_TYPE_NEON_ARITH_COMPLEX;

    case 1707:  /* neon_vpaddluv4si */
    case 1706:  /* neon_vpaddlsv4si */
    case 1705:  /* neon_vpaddluv2si */
    case 1704:  /* neon_vpaddlsv2si */
    case 1703:  /* neon_vpaddluv8hi */
    case 1702:  /* neon_vpaddlsv8hi */
    case 1701:  /* neon_vpaddluv4hi */
    case 1700:  /* neon_vpaddlsv4hi */
    case 1699:  /* neon_vpaddluv16qi */
    case 1698:  /* neon_vpaddlsv16qi */
    case 1697:  /* neon_vpaddluv8qi */
    case 1696:  /* neon_vpaddlsv8qi */
    case 1613:  /* neon_vtstv4si */
    case 1612:  /* neon_vtstv2si */
    case 1611:  /* neon_vtstv8hi */
    case 1610:  /* neon_vtstv4hi */
    case 1609:  /* neon_vtstv16qi */
    case 1608:  /* neon_vtstv8qi */
    case 1467:  /* neon_vsubwuv2si */
    case 1466:  /* neon_vsubwsv2si */
    case 1465:  /* neon_vsubwuv4hi */
    case 1464:  /* neon_vsubwsv4hi */
    case 1463:  /* neon_vsubwuv8qi */
    case 1462:  /* neon_vsubwsv8qi */
    case 1461:  /* neon_vsubluv2si */
    case 1460:  /* neon_vsublsv2si */
    case 1459:  /* neon_vsubluv4hi */
    case 1458:  /* neon_vsublsv4hi */
    case 1457:  /* neon_vsubluv8qi */
    case 1456:  /* neon_vsublsv8qi */
    case 1342:  /* neon_vaddwuv2si */
    case 1341:  /* neon_vaddwsv2si */
    case 1340:  /* neon_vaddwuv4hi */
    case 1339:  /* neon_vaddwsv4hi */
    case 1338:  /* neon_vaddwuv8qi */
    case 1337:  /* neon_vaddwsv8qi */
    case 1336:  /* neon_vaddluv2si */
    case 1335:  /* neon_vaddlsv2si */
    case 1334:  /* neon_vaddluv4hi */
    case 1333:  /* neon_vaddlsv4hi */
    case 1332:  /* neon_vaddluv8qi */
    case 1331:  /* neon_vaddlsv8qi */
    case 1298:  /* neon_vpaddv4hf */
    case 1293:  /* arm_reduc_plus_internal_v2di */
    case 1288:  /* quad_halves_plusv16qi */
    case 1283:  /* quad_halves_plusv8hi */
    case 1275:  /* quad_halves_plusv4si */
    case 1274:  /* widen_usumv2si3 */
    case 1273:  /* widen_usumv4hi3 */
    case 1272:  /* widen_usumv8qi3 */
    case 1271:  /* vec_sel_widen_usum_hiv4siv2si3 */
    case 1270:  /* vec_sel_widen_usum_hiv4siv4hi3 */
    case 1269:  /* vec_sel_widen_usum_hiv4siv8qi3 */
    case 1268:  /* vec_sel_widen_usum_hiv8hiv2si3 */
    case 1267:  /* vec_sel_widen_usum_hiv8hiv4hi3 */
    case 1266:  /* vec_sel_widen_usum_hiv8hiv8qi3 */
    case 1265:  /* vec_sel_widen_usum_hiv16qiv2si3 */
    case 1264:  /* vec_sel_widen_usum_hiv16qiv4hi3 */
    case 1263:  /* vec_sel_widen_usum_hiv16qiv8qi3 */
    case 1262:  /* vec_sel_widen_usum_lov4siv2si3 */
    case 1261:  /* vec_sel_widen_usum_lov4siv4hi3 */
    case 1260:  /* vec_sel_widen_usum_lov4siv8qi3 */
    case 1259:  /* vec_sel_widen_usum_lov8hiv2si3 */
    case 1258:  /* vec_sel_widen_usum_lov8hiv4hi3 */
    case 1257:  /* vec_sel_widen_usum_lov8hiv8qi3 */
    case 1256:  /* vec_sel_widen_usum_lov16qiv2si3 */
    case 1255:  /* vec_sel_widen_usum_lov16qiv4hi3 */
    case 1254:  /* vec_sel_widen_usum_lov16qiv8qi3 */
    case 1253:  /* widen_ssumv2si3 */
    case 1252:  /* widen_ssumv4hi3 */
    case 1251:  /* widen_ssumv8qi3 */
    case 1250:  /* vec_sel_widen_ssum_hiv4siv2si3 */
    case 1249:  /* vec_sel_widen_ssum_hiv4siv4hi3 */
    case 1248:  /* vec_sel_widen_ssum_hiv4siv8qi3 */
    case 1247:  /* vec_sel_widen_ssum_hiv8hiv2si3 */
    case 1246:  /* vec_sel_widen_ssum_hiv8hiv4hi3 */
    case 1245:  /* vec_sel_widen_ssum_hiv8hiv8qi3 */
    case 1244:  /* vec_sel_widen_ssum_hiv16qiv2si3 */
    case 1243:  /* vec_sel_widen_ssum_hiv16qiv4hi3 */
    case 1242:  /* vec_sel_widen_ssum_hiv16qiv8qi3 */
    case 1241:  /* vec_sel_widen_ssum_lov4siv2si3 */
    case 1240:  /* vec_sel_widen_ssum_lov4siv4hi3 */
    case 1239:  /* vec_sel_widen_ssum_lov4siv8qi3 */
    case 1238:  /* vec_sel_widen_ssum_lov8hiv2si3 */
    case 1237:  /* vec_sel_widen_ssum_lov8hiv4hi3 */
    case 1236:  /* vec_sel_widen_ssum_lov8hiv8qi3 */
    case 1235:  /* vec_sel_widen_ssum_lov16qiv2si3 */
    case 1234:  /* vec_sel_widen_ssum_lov16qiv4hi3 */
    case 1233:  /* vec_sel_widen_ssum_lov16qiv8qi3 */
    case 1117:  /* xorv2di3 */
    case 1116:  /* xorv4sf3 */
    case 1115:  /* xorv2sf3 */
    case 1114:  /* xorv8hf3 */
    case 1113:  /* xorv4hf3 */
    case 1112:  /* xorv4si3 */
    case 1111:  /* xorv2si3 */
    case 1110:  /* xorv8hi3 */
    case 1109:  /* xorv4hi3 */
    case 1108:  /* xorv16qi3 */
    case 1107:  /* xorv8qi3 */
    case 1105:  /* bicv2di3_neon */
    case 1104:  /* bicv4sf3_neon */
    case 1103:  /* bicv2sf3_neon */
    case 1102:  /* bicv8hf3_neon */
    case 1101:  /* bicv4hf3_neon */
    case 1100:  /* bicv4si3_neon */
    case 1099:  /* bicv2si3_neon */
    case 1098:  /* bicv8hi3_neon */
    case 1097:  /* bicv4hi3_neon */
    case 1096:  /* bicv16qi3_neon */
    case 1095:  /* bicv8qi3_neon */
    case 1093:  /* ornv2di3_neon */
    case 1092:  /* ornv4sf3_neon */
    case 1091:  /* ornv2sf3_neon */
    case 1090:  /* ornv8hf3_neon */
    case 1089:  /* ornv4hf3_neon */
    case 1088:  /* ornv4si3_neon */
    case 1087:  /* ornv2si3_neon */
    case 1086:  /* ornv8hi3_neon */
    case 1085:  /* ornv4hi3_neon */
    case 1084:  /* ornv16qi3_neon */
    case 1083:  /* ornv8qi3_neon */
    case 1082:  /* andv2di3 */
    case 1081:  /* andv4sf3 */
    case 1080:  /* andv2sf3 */
    case 1079:  /* andv8hf3 */
    case 1078:  /* andv4hf3 */
    case 1077:  /* andv4si3 */
    case 1076:  /* andv2si3 */
    case 1075:  /* andv8hi3 */
    case 1074:  /* andv4hi3 */
    case 1073:  /* andv16qi3 */
    case 1072:  /* andv8qi3 */
    case 1071:  /* iorv2di3 */
    case 1070:  /* iorv4sf3 */
    case 1069:  /* iorv2sf3 */
    case 1068:  /* iorv8hf3 */
    case 1067:  /* iorv4hf3 */
    case 1066:  /* iorv4si3 */
    case 1065:  /* iorv2si3 */
    case 1064:  /* iorv8hi3 */
    case 1063:  /* iorv4hi3 */
    case 1062:  /* iorv16qi3 */
    case 1061:  /* iorv8qi3 */
    case 997:  /* subv4hf3_fp16 */
    case 996:  /* subv8hf3_fp16 */
      return CORTEX_A57_NEON_TYPE_NEON_ARITH_BASIC;

    case 1647:  /* neon_vabauv4si */
    case 1646:  /* neon_vabasv4si */
    case 1643:  /* neon_vabauv8hi */
    case 1642:  /* neon_vabasv8hi */
    case 1639:  /* neon_vabauv16qi */
    case 1638:  /* neon_vabasv16qi */
      return CORTEX_A57_NEON_TYPE_NEON_ARITH_ACC_Q;

    case 1719:  /* neon_vpadaluv4si */
    case 1718:  /* neon_vpadalsv4si */
    case 1717:  /* neon_vpadaluv2si */
    case 1716:  /* neon_vpadalsv2si */
    case 1715:  /* neon_vpadaluv8hi */
    case 1714:  /* neon_vpadalsv8hi */
    case 1713:  /* neon_vpadaluv4hi */
    case 1712:  /* neon_vpadalsv4hi */
    case 1711:  /* neon_vpadaluv16qi */
    case 1710:  /* neon_vpadalsv16qi */
    case 1709:  /* neon_vpadaluv8qi */
    case 1708:  /* neon_vpadalsv8qi */
    case 1653:  /* neon_vabaluv2si */
    case 1652:  /* neon_vabalsv2si */
    case 1651:  /* neon_vabaluv4hi */
    case 1650:  /* neon_vabalsv4hi */
    case 1649:  /* neon_vabaluv8qi */
    case 1648:  /* neon_vabalsv8qi */
    case 1645:  /* neon_vabauv2si */
    case 1644:  /* neon_vabasv2si */
    case 1641:  /* neon_vabauv4hi */
    case 1640:  /* neon_vabasv4hi */
    case 1637:  /* neon_vabauv8qi */
    case 1636:  /* neon_vabasv8qi */
      return CORTEX_A57_NEON_TYPE_NEON_ARITH_ACC;

    case 1626:  /* neon_vabdv8hf */
    case 1625:  /* neon_vabduv4si */
    case 1624:  /* neon_vabdsv4si */
    case 1621:  /* neon_vabduv8hi */
    case 1620:  /* neon_vabdsv8hi */
    case 1617:  /* neon_vabduv16qi */
    case 1616:  /* neon_vabdsv16qi */
      return CORTEX_A57_NEON_TYPE_NEON_ABD_Q;

    case 1635:  /* neon_vabdluv2si */
    case 1634:  /* neon_vabdlsv2si */
    case 1633:  /* neon_vabdluv4hi */
    case 1632:  /* neon_vabdlsv4hi */
    case 1631:  /* neon_vabdluv8qi */
    case 1630:  /* neon_vabdlsv8qi */
    case 1627:  /* neon_vabdv4hf */
    case 1623:  /* neon_vabduv2si */
    case 1622:  /* neon_vabdsv2si */
    case 1619:  /* neon_vabduv4hi */
    case 1618:  /* neon_vabdsv4hi */
    case 1615:  /* neon_vabduv8qi */
    case 1614:  /* neon_vabdsv8qi */
      return CORTEX_A57_NEON_TYPE_NEON_ABD;

    default:
      return CORTEX_A57_NEON_TYPE_UNKNOWN;

    }
}

enum attr_cortex_a53_advsimd_type
get_attr_cortex_a53_advsimd_type (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  enum attr_type cached_type ATTRIBUTE_UNUSED;

  switch (recog_memoized (insn))
    {
    case 2451:  /* neon_vld4_dupdi */
    case 2395:  /* neon_vld3_dupdi */
      if (! ((1) > (1)))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_64;
        }
      else
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_LOTS;
        }

    case 2450:  /* neon_vld4_dupv2sf */
    case 2449:  /* neon_vld4_dupv2si */
    case 2394:  /* neon_vld3_dupv2sf */
    case 2393:  /* neon_vld3_dupv2si */
      if (! ((2) > (1)))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_64;
        }
      else
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_LOTS;
        }

    case 2448:  /* neon_vld4_dupv4hf */
    case 2447:  /* neon_vld4_dupv4hi */
    case 2392:  /* neon_vld3_dupv4hf */
    case 2391:  /* neon_vld3_dupv4hi */
      if (! ((4) > (1)))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_64;
        }
      else
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_LOTS;
        }

    case 2446:  /* neon_vld4_dupv8qi */
    case 2390:  /* neon_vld3_dupv8qi */
      if (! ((8) > (1)))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_64;
        }
      else
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_LOTS;
        }

    case 2344:  /* neon_vld2_dupdi */
      if (! ((1) > (1)))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_64;
        }
      else
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_128;
        }

    case 2343:  /* neon_vld2_dupv2sf */
    case 2342:  /* neon_vld2_dupv2si */
      if (! ((2) > (1)))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_64;
        }
      else
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_128;
        }

    case 2341:  /* neon_vld2_dupv4hf */
    case 2340:  /* neon_vld2_dupv4hi */
      if (! ((4) > (1)))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_64;
        }
      else
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_128;
        }

    case 2339:  /* neon_vld2_dupv8qi */
      if (! ((8) > (1)))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_64;
        }
      else
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_128;
        }

    case 1812:  /* neon_vdup_nv4sf */
    case 1811:  /* neon_vdup_nv4si */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_ALU_Q;
        }
      else
        {
	  return CORTEX_A53_ADVSIMD_TYPE_UNKNOWN;
        }

    case 1810:  /* neon_vdup_nv2sf */
    case 1809:  /* neon_vdup_nv2si */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_ALU;
        }
      else
        {
	  return CORTEX_A53_ADVSIMD_TYPE_UNKNOWN;
        }

    case 1556:  /* neon_vcltv8hf_fp16insn */
    case 1555:  /* neon_vclev8hf_fp16insn */
    case 1554:  /* neon_vcgev8hf_fp16insn */
    case 1553:  /* neon_vcgtv8hf_fp16insn */
    case 1552:  /* neon_vceqv8hf_fp16insn */
    case 1541:  /* neon_vcltv4sf_insn */
    case 1540:  /* neon_vclev4sf_insn */
    case 1539:  /* neon_vcgev4sf_insn */
    case 1538:  /* neon_vcgtv4sf_insn */
    case 1537:  /* neon_vceqv4sf_insn */
    case 1531:  /* neon_vcltv4si_insn */
    case 1530:  /* neon_vclev4si_insn */
    case 1529:  /* neon_vcgev4si_insn */
    case 1528:  /* neon_vcgtv4si_insn */
    case 1527:  /* neon_vceqv4si_insn */
    case 1521:  /* neon_vcltv8hi_insn */
    case 1520:  /* neon_vclev8hi_insn */
    case 1519:  /* neon_vcgev8hi_insn */
    case 1518:  /* neon_vcgtv8hi_insn */
    case 1517:  /* neon_vceqv8hi_insn */
    case 1511:  /* neon_vcltv16qi_insn */
    case 1510:  /* neon_vclev16qi_insn */
    case 1509:  /* neon_vcgev16qi_insn */
    case 1508:  /* neon_vcgtv16qi_insn */
    case 1507:  /* neon_vceqv16qi_insn */
      if (((cached_type = get_attr_type (insn)) == TYPE_NEON_COMPARE_Q) || (cached_type == TYPE_NEON_COMPARE_ZERO_Q))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_ALU_Q;
        }
      else
        {
	  return CORTEX_A53_ADVSIMD_TYPE_UNKNOWN;
        }

    case 1561:  /* neon_vcltv4hf_fp16insn */
    case 1560:  /* neon_vclev4hf_fp16insn */
    case 1559:  /* neon_vcgev4hf_fp16insn */
    case 1558:  /* neon_vcgtv4hf_fp16insn */
    case 1557:  /* neon_vceqv4hf_fp16insn */
    case 1536:  /* neon_vcltv2sf_insn */
    case 1535:  /* neon_vclev2sf_insn */
    case 1534:  /* neon_vcgev2sf_insn */
    case 1533:  /* neon_vcgtv2sf_insn */
    case 1532:  /* neon_vceqv2sf_insn */
    case 1526:  /* neon_vcltv2si_insn */
    case 1525:  /* neon_vclev2si_insn */
    case 1524:  /* neon_vcgev2si_insn */
    case 1523:  /* neon_vcgtv2si_insn */
    case 1522:  /* neon_vceqv2si_insn */
    case 1516:  /* neon_vcltv4hi_insn */
    case 1515:  /* neon_vclev4hi_insn */
    case 1514:  /* neon_vcgev4hi_insn */
    case 1513:  /* neon_vcgtv4hi_insn */
    case 1512:  /* neon_vceqv4hi_insn */
    case 1506:  /* neon_vcltv8qi_insn */
    case 1505:  /* neon_vclev8qi_insn */
    case 1504:  /* neon_vcgev8qi_insn */
    case 1503:  /* neon_vcgtv8qi_insn */
    case 1502:  /* neon_vceqv8qi_insn */
      if (((cached_type = get_attr_type (insn)) == TYPE_NEON_COMPARE) || (cached_type == TYPE_NEON_COMPARE_ZERO))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_ALU;
        }
      else
        {
	  return CORTEX_A53_ADVSIMD_TYPE_UNKNOWN;
        }

    case 1106:  /* bicdi3_neon */
    case 1094:  /* orndi3_neon */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_ALU;
        }
      else
        {
	  return CORTEX_A53_ADVSIMD_TYPE_UNKNOWN;
        }

    case 998:  /* subdi3_neon */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0xe))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_ALU;
        }
      else
        {
	  return CORTEX_A53_ADVSIMD_TYPE_UNKNOWN;
        }

    case 984:  /* adddi3_neon */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x9))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_ALU;
        }
      else
        {
	  return CORTEX_A53_ADVSIMD_TYPE_UNKNOWN;
        }

    case 970:  /* vec_extractv2di */
    case 969:  /* vec_extractv4sf */
    case 968:  /* vec_extractv4si */
    case 967:  /* vec_extractv8hf */
    case 966:  /* vec_extractv8hi */
    case 965:  /* vec_extractv16qi */
    case 964:  /* vec_extractv2sf */
    case 963:  /* vec_extractv2si */
    case 962:  /* vec_extractv4hf */
    case 961:  /* vec_extractv4hi */
    case 960:  /* vec_extractv8qi */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_STORE_64;
        }
      else
        {
	  return CORTEX_A53_ADVSIMD_TYPE_UNKNOWN;
        }

    case 1224:  /* neon_load_count */
    case 959:  /* vec_setv2di_internal */
    case 958:  /* vec_setv4sf_internal */
    case 957:  /* vec_setv4si_internal */
    case 956:  /* vec_setv8hf_internal */
    case 955:  /* vec_setv8hi_internal */
    case 954:  /* vec_setv16qi_internal */
    case 953:  /* vec_setv2sf_internal */
    case 952:  /* vec_setv2si_internal */
    case 951:  /* vec_setv4hf_internal */
    case 950:  /* vec_setv4hi_internal */
    case 949:  /* vec_setv8qi_internal */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_64;
        }
      else
        {
	  return CORTEX_A53_ADVSIMD_TYPE_UNKNOWN;
        }

    case 924:  /* *neon_movxi */
    case 923:  /* *neon_movci */
    case 922:  /* *neon_movoi */
    case 921:  /* *neon_movei */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_ALU_Q;
        }
      else if (!((1 << which_alternative) & 0x3))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_LOTS;
        }
      else
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_STORE_LOTS;
        }

    case 920:  /* *neon_movti */
    case 919:  /* *neon_movv2di */
    case 918:  /* *neon_movv4sf */
    case 917:  /* *neon_movv4si */
    case 916:  /* *neon_movv8hf */
    case 915:  /* *neon_movv8hi */
    case 914:  /* *neon_movv16qi */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x5))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_ALU_Q;
        }
      else if (((1 << which_alternative) & 0x88))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_LOTS;
        }
      else if (!((1 << which_alternative) & 0xfd))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_STORE_LOTS;
        }
      else
        {
	  return CORTEX_A53_ADVSIMD_TYPE_UNKNOWN;
        }

    case 913:  /* *neon_movdi */
    case 912:  /* *neon_movv2sf */
    case 911:  /* *neon_movv2si */
    case 910:  /* *neon_movv4hf */
    case 909:  /* *neon_movv4hi */
    case 908:  /* *neon_movv8qi */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x5))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_ALU;
        }
      else if (which_alternative == 3)
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_64;
        }
      else if (which_alternative == 1)
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_STORE_64;
        }
      else if (which_alternative == 7)
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_128;
        }
      else if (!((1 << which_alternative) & 0xff))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_STORE_128;
        }
      else
        {
	  return CORTEX_A53_ADVSIMD_TYPE_UNKNOWN;
        }

    case 4014:  /* *p *movdf_vfp */
    case 640:  /* *thumb2_movdf_vfp */
    case 639:  /* *movdf_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 3)
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_ALU;
        }
      else
        {
	  return CORTEX_A53_ADVSIMD_TYPE_UNKNOWN;
        }

    case 635:  /* *movhf_vfp_neon */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_64;
        }
      else if (which_alternative == 1)
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_STORE_64;
        }
      else
        {
	  return CORTEX_A53_ADVSIMD_TYPE_UNKNOWN;
        }

    case 4011:  /* *p *movhf_vfp_fp16 */
    case 634:  /* *movhf_vfp_fp16 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 7)
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_64;
        }
      else if (which_alternative == 8)
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_STORE_64;
        }
      else
        {
	  return CORTEX_A53_ADVSIMD_TYPE_UNKNOWN;
        }

    case 3670:  /* *p one_cmpldi2 */
    case 156:  /* one_cmpldi2 */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0x6))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_ALU;
        }
      else
        {
	  return CORTEX_A53_ADVSIMD_TYPE_UNKNOWN;
        }

    case 108:  /* *xordi3_insn */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0x1e))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_ALU;
        }
      else
        {
	  return CORTEX_A53_ADVSIMD_TYPE_UNKNOWN;
        }

    case 102:  /* *iordi3_insn */
    case 79:  /* *anddi3_insn */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0x3c))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_ALU;
        }
      else
        {
	  return CORTEX_A53_ADVSIMD_TYPE_UNKNOWN;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
      if (((cached_type = get_attr_type (insn)) == TYPE_NEON_ADD) || ((cached_type == TYPE_NEON_QADD) || ((cached_type == TYPE_NEON_ADD_HALVE) || ((cached_type == TYPE_NEON_SUB) || ((cached_type == TYPE_NEON_QSUB) || ((cached_type == TYPE_NEON_SUB_HALVE) || ((cached_type == TYPE_NEON_ABS) || ((cached_type == TYPE_NEON_NEG) || ((cached_type == TYPE_NEON_QNEG) || ((cached_type == TYPE_NEON_QABS) || ((cached_type == TYPE_NEON_ABD) || ((cached_type == TYPE_NEON_MINMAX) || ((cached_type == TYPE_NEON_COMPARE) || ((cached_type == TYPE_NEON_COMPARE_ZERO) || ((cached_type == TYPE_NEON_ARITH_ACC) || ((cached_type == TYPE_NEON_REDUC_ADD) || ((cached_type == TYPE_NEON_REDUC_ADD_ACC) || ((cached_type == TYPE_NEON_REDUC_MINMAX) || ((cached_type == TYPE_NEON_LOGIC) || ((cached_type == TYPE_NEON_TST) || ((cached_type == TYPE_NEON_SHIFT_IMM) || ((cached_type == TYPE_NEON_SHIFT_REG) || ((cached_type == TYPE_NEON_SHIFT_ACC) || ((cached_type == TYPE_NEON_SAT_SHIFT_IMM) || ((cached_type == TYPE_NEON_SAT_SHIFT_REG) || ((cached_type == TYPE_NEON_INS) || ((cached_type == TYPE_NEON_MOVE) || ((cached_type == TYPE_NEON_PERMUTE) || ((cached_type == TYPE_NEON_ZIP) || ((cached_type == TYPE_NEON_TBL1) || ((cached_type == TYPE_NEON_TBL2) || ((cached_type == TYPE_NEON_TBL3) || ((cached_type == TYPE_NEON_TBL4) || ((cached_type == TYPE_NEON_BSL) || ((cached_type == TYPE_NEON_CLS) || ((cached_type == TYPE_NEON_CNT) || ((cached_type == TYPE_NEON_DUP) || ((cached_type == TYPE_NEON_EXT) || ((cached_type == TYPE_NEON_RBIT) || ((cached_type == TYPE_NEON_REV) || ((cached_type == TYPE_NEON_FP_ABD_S) || ((cached_type == TYPE_NEON_FP_ABD_D) || ((cached_type == TYPE_NEON_FP_ABS_S) || ((cached_type == TYPE_NEON_FP_ABS_D) || ((cached_type == TYPE_NEON_FP_ADDSUB_S) || ((cached_type == TYPE_NEON_FP_ADDSUB_D) || ((cached_type == TYPE_NEON_FP_COMPARE_S) || ((cached_type == TYPE_NEON_FP_COMPARE_D) || ((cached_type == TYPE_NEON_FP_MINMAX_S) || ((cached_type == TYPE_NEON_FP_MINMAX_D) || ((cached_type == TYPE_NEON_FP_NEG_S) || ((cached_type == TYPE_NEON_FP_NEG_D) || ((cached_type == TYPE_NEON_FP_REDUC_ADD_S) || ((cached_type == TYPE_NEON_FP_REDUC_ADD_D) || ((cached_type == TYPE_NEON_FP_REDUC_MINMAX_S) || ((cached_type == TYPE_NEON_FP_REDUC_MINMAX_D) || ((cached_type == TYPE_NEON_FP_CVT_WIDEN_H) || ((cached_type == TYPE_NEON_FP_TO_INT_S) || ((cached_type == TYPE_NEON_FP_TO_INT_D) || ((cached_type == TYPE_NEON_INT_TO_FP_S) || ((cached_type == TYPE_NEON_INT_TO_FP_D) || ((cached_type == TYPE_NEON_FP_ROUND_S) || ((cached_type == TYPE_NEON_FP_RECPE_S) || ((cached_type == TYPE_NEON_FP_RECPE_D) || ((cached_type == TYPE_NEON_FP_RECPS_S) || ((cached_type == TYPE_NEON_FP_RECPS_D) || ((cached_type == TYPE_NEON_FP_RECPX_S) || ((cached_type == TYPE_NEON_FP_RECPX_D) || ((cached_type == TYPE_NEON_FP_RSQRTE_S) || ((cached_type == TYPE_NEON_FP_RSQRTE_D) || ((cached_type == TYPE_NEON_FP_RSQRTS_S) || (cached_type == TYPE_NEON_FP_RSQRTS_D))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_ALU;
        }
      else if ((cached_type == TYPE_NEON_ADD_Q) || ((cached_type == TYPE_NEON_ADD_WIDEN) || ((cached_type == TYPE_NEON_ADD_LONG) || ((cached_type == TYPE_NEON_QADD_Q) || ((cached_type == TYPE_NEON_ADD_HALVE_Q) || ((cached_type == TYPE_NEON_ADD_HALVE_NARROW_Q) || ((cached_type == TYPE_NEON_SUB_Q) || ((cached_type == TYPE_NEON_SUB_WIDEN) || ((cached_type == TYPE_NEON_SUB_LONG) || ((cached_type == TYPE_NEON_QSUB_Q) || ((cached_type == TYPE_NEON_SUB_HALVE_Q) || ((cached_type == TYPE_NEON_SUB_HALVE_NARROW_Q) || ((cached_type == TYPE_NEON_ABS_Q) || ((cached_type == TYPE_NEON_NEG_Q) || ((cached_type == TYPE_NEON_QNEG_Q) || ((cached_type == TYPE_NEON_QABS_Q) || ((cached_type == TYPE_NEON_ABD_Q) || ((cached_type == TYPE_NEON_ABD_LONG) || ((cached_type == TYPE_NEON_MINMAX_Q) || ((cached_type == TYPE_NEON_COMPARE_Q) || ((cached_type == TYPE_NEON_COMPARE_ZERO_Q) || ((cached_type == TYPE_NEON_ARITH_ACC_Q) || ((cached_type == TYPE_NEON_REDUC_ADD_Q) || ((cached_type == TYPE_NEON_REDUC_ADD_LONG) || ((cached_type == TYPE_NEON_REDUC_ADD_ACC_Q) || ((cached_type == TYPE_NEON_REDUC_MINMAX_Q) || ((cached_type == TYPE_NEON_LOGIC_Q) || ((cached_type == TYPE_NEON_TST_Q) || ((cached_type == TYPE_NEON_SHIFT_IMM_Q) || ((cached_type == TYPE_NEON_SHIFT_IMM_NARROW_Q) || ((cached_type == TYPE_NEON_SHIFT_IMM_LONG) || ((cached_type == TYPE_NEON_SHIFT_REG_Q) || ((cached_type == TYPE_NEON_SHIFT_ACC_Q) || ((cached_type == TYPE_NEON_SAT_SHIFT_IMM_Q) || ((cached_type == TYPE_NEON_SAT_SHIFT_IMM_NARROW_Q) || ((cached_type == TYPE_NEON_SAT_SHIFT_REG_Q) || ((cached_type == TYPE_NEON_INS_Q) || ((cached_type == TYPE_NEON_MOVE_Q) || ((cached_type == TYPE_NEON_MOVE_NARROW_Q) || ((cached_type == TYPE_NEON_PERMUTE_Q) || ((cached_type == TYPE_NEON_ZIP_Q) || ((cached_type == TYPE_NEON_TBL1_Q) || ((cached_type == TYPE_NEON_TBL2_Q) || ((cached_type == TYPE_NEON_TBL3_Q) || ((cached_type == TYPE_NEON_TBL4_Q) || ((cached_type == TYPE_NEON_BSL_Q) || ((cached_type == TYPE_NEON_CLS_Q) || ((cached_type == TYPE_NEON_CNT_Q) || ((cached_type == TYPE_NEON_DUP_Q) || ((cached_type == TYPE_NEON_EXT_Q) || ((cached_type == TYPE_NEON_RBIT_Q) || ((cached_type == TYPE_NEON_REV_Q) || ((cached_type == TYPE_NEON_FP_ABD_S_Q) || ((cached_type == TYPE_NEON_FP_ABD_D_Q) || ((cached_type == TYPE_NEON_FP_ABS_S_Q) || ((cached_type == TYPE_NEON_FP_ABS_D_Q) || ((cached_type == TYPE_NEON_FP_ADDSUB_S_Q) || ((cached_type == TYPE_NEON_FP_ADDSUB_D_Q) || ((cached_type == TYPE_NEON_FP_COMPARE_S_Q) || ((cached_type == TYPE_NEON_FP_COMPARE_D_Q) || ((cached_type == TYPE_NEON_FP_MINMAX_S_Q) || ((cached_type == TYPE_NEON_FP_MINMAX_D_Q) || ((cached_type == TYPE_NEON_FP_CVT_WIDEN_S) || ((cached_type == TYPE_NEON_FP_NEG_S_Q) || ((cached_type == TYPE_NEON_FP_NEG_D_Q) || ((cached_type == TYPE_NEON_FP_REDUC_ADD_S_Q) || ((cached_type == TYPE_NEON_FP_REDUC_ADD_D_Q) || ((cached_type == TYPE_NEON_FP_REDUC_MINMAX_S_Q) || ((cached_type == TYPE_NEON_FP_REDUC_MINMAX_D_Q) || ((cached_type == TYPE_NEON_FP_CVT_NARROW_S_Q) || ((cached_type == TYPE_NEON_FP_CVT_NARROW_D_Q) || ((cached_type == TYPE_NEON_FP_TO_INT_S_Q) || ((cached_type == TYPE_NEON_FP_TO_INT_D_Q) || ((cached_type == TYPE_NEON_INT_TO_FP_S_Q) || ((cached_type == TYPE_NEON_INT_TO_FP_D_Q) || ((cached_type == TYPE_NEON_FP_ROUND_S_Q) || ((cached_type == TYPE_NEON_FP_RECPE_S_Q) || ((cached_type == TYPE_NEON_FP_RECPE_D_Q) || ((cached_type == TYPE_NEON_FP_RECPS_S_Q) || ((cached_type == TYPE_NEON_FP_RECPS_D_Q) || ((cached_type == TYPE_NEON_FP_RECPX_S_Q) || ((cached_type == TYPE_NEON_FP_RECPX_D_Q) || ((cached_type == TYPE_NEON_FP_RSQRTE_S_Q) || ((cached_type == TYPE_NEON_FP_RSQRTE_D_Q) || ((cached_type == TYPE_NEON_FP_RSQRTS_S_Q) || (cached_type == TYPE_NEON_FP_RSQRTS_D_Q))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_ALU_Q;
        }
      else if ((cached_type == TYPE_NEON_MUL_B) || ((cached_type == TYPE_NEON_MUL_H) || ((cached_type == TYPE_NEON_MUL_S) || ((cached_type == TYPE_NEON_MUL_H_SCALAR) || ((cached_type == TYPE_NEON_MUL_S_SCALAR) || ((cached_type == TYPE_NEON_SAT_MUL_B) || ((cached_type == TYPE_NEON_SAT_MUL_H) || ((cached_type == TYPE_NEON_SAT_MUL_S) || ((cached_type == TYPE_NEON_SAT_MUL_H_SCALAR) || ((cached_type == TYPE_NEON_SAT_MUL_S_SCALAR) || ((cached_type == TYPE_NEON_MLA_B) || ((cached_type == TYPE_NEON_MLA_H) || ((cached_type == TYPE_NEON_MLA_S) || ((cached_type == TYPE_NEON_MLA_H_SCALAR) || ((cached_type == TYPE_NEON_MLA_S_SCALAR) || ((cached_type == TYPE_NEON_FP_MUL_S) || ((cached_type == TYPE_NEON_FP_MUL_S_SCALAR) || ((cached_type == TYPE_NEON_FP_MUL_D) || ((cached_type == TYPE_NEON_FP_MLA_S) || ((cached_type == TYPE_NEON_FP_MLA_S_SCALAR) || (cached_type == TYPE_NEON_FP_MLA_D)))))))))))))))))))))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_MUL;
        }
      else if ((cached_type == TYPE_NEON_MUL_B_Q) || ((cached_type == TYPE_NEON_MUL_H_Q) || ((cached_type == TYPE_NEON_MUL_S_Q) || ((cached_type == TYPE_NEON_MUL_B_LONG) || ((cached_type == TYPE_NEON_MUL_H_LONG) || ((cached_type == TYPE_NEON_MUL_S_LONG) || ((cached_type == TYPE_NEON_MUL_D_LONG) || ((cached_type == TYPE_NEON_MUL_H_SCALAR_Q) || ((cached_type == TYPE_NEON_MUL_S_SCALAR_Q) || ((cached_type == TYPE_NEON_MUL_H_SCALAR_LONG) || ((cached_type == TYPE_NEON_MUL_S_SCALAR_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_B_Q) || ((cached_type == TYPE_NEON_SAT_MUL_H_Q) || ((cached_type == TYPE_NEON_SAT_MUL_S_Q) || ((cached_type == TYPE_NEON_SAT_MUL_B_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_H_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_S_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_H_SCALAR_Q) || ((cached_type == TYPE_NEON_SAT_MUL_S_SCALAR_Q) || ((cached_type == TYPE_NEON_SAT_MUL_H_SCALAR_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_S_SCALAR_LONG) || ((cached_type == TYPE_NEON_MLA_B_Q) || ((cached_type == TYPE_NEON_MLA_H_Q) || ((cached_type == TYPE_NEON_MLA_S_Q) || ((cached_type == TYPE_NEON_MLA_B_LONG) || ((cached_type == TYPE_NEON_MLA_H_LONG) || ((cached_type == TYPE_NEON_MLA_S_LONG) || ((cached_type == TYPE_NEON_MLA_H_SCALAR_Q) || ((cached_type == TYPE_NEON_MLA_S_SCALAR_Q) || ((cached_type == TYPE_NEON_MLA_H_SCALAR_LONG) || ((cached_type == TYPE_NEON_MLA_S_SCALAR_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_B_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_H_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_S_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_H_SCALAR_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_S_SCALAR_LONG) || ((cached_type == TYPE_NEON_FP_MUL_S_Q) || ((cached_type == TYPE_NEON_FP_MUL_S_SCALAR_Q) || ((cached_type == TYPE_NEON_FP_MUL_D_Q) || ((cached_type == TYPE_NEON_FP_MUL_D_SCALAR_Q) || ((cached_type == TYPE_NEON_FP_MLA_S_Q) || ((cached_type == TYPE_NEON_FP_MLA_S_SCALAR_Q) || ((cached_type == TYPE_NEON_FP_MLA_D_Q) || (cached_type == TYPE_NEON_FP_MLA_D_SCALAR_Q))))))))))))))))))))))))))))))))))))))))))))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_MUL_Q;
        }
      else if ((cached_type == TYPE_NEON_FP_SQRT_S) || (cached_type == TYPE_NEON_FP_DIV_S))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_DIV_S;
        }
      else if ((cached_type == TYPE_NEON_FP_SQRT_S_Q) || (cached_type == TYPE_NEON_FP_DIV_S_Q))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_DIV_S_Q;
        }
      else if ((cached_type == TYPE_NEON_FP_SQRT_D) || (cached_type == TYPE_NEON_FP_DIV_D))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_DIV_D;
        }
      else if ((cached_type == TYPE_NEON_FP_SQRT_D_Q) || (cached_type == TYPE_NEON_FP_DIV_D_Q))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_DIV_D_Q;
        }
      else if ((cached_type == TYPE_NEON_LDR) || ((cached_type == TYPE_NEON_LOAD1_1REG) || ((cached_type == TYPE_NEON_LOAD1_ALL_LANES) || ((cached_type == TYPE_NEON_LOAD1_ALL_LANES_Q) || ((cached_type == TYPE_NEON_LOAD1_ONE_LANE) || (cached_type == TYPE_NEON_LOAD1_ONE_LANE_Q))))))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_64;
        }
      else if ((cached_type == TYPE_NEON_STR) || ((cached_type == TYPE_NEON_STORE1_1REG) || ((cached_type == TYPE_NEON_STORE1_ONE_LANE) || (cached_type == TYPE_NEON_STORE1_ONE_LANE_Q))))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_STORE_64;
        }
      else if ((cached_type == TYPE_NEON_LOAD1_1REG_Q) || ((cached_type == TYPE_NEON_LOAD1_2REG) || ((cached_type == TYPE_NEON_LOAD2_2REG) || ((cached_type == TYPE_NEON_LOAD2_ALL_LANES) || ((cached_type == TYPE_NEON_LOAD2_ALL_LANES_Q) || ((cached_type == TYPE_NEON_LOAD2_ONE_LANE) || (cached_type == TYPE_NEON_LOAD2_ONE_LANE_Q)))))))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_128;
        }
      else if ((cached_type == TYPE_NEON_STORE1_1REG_Q) || ((cached_type == TYPE_NEON_STORE1_2REG) || ((cached_type == TYPE_NEON_STORE2_2REG) || ((cached_type == TYPE_NEON_STORE2_ONE_LANE) || (cached_type == TYPE_NEON_STORE2_ONE_LANE_Q)))))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_STORE_128;
        }
      else if ((cached_type == TYPE_NEON_LOAD1_2REG_Q) || ((cached_type == TYPE_NEON_LOAD1_3REG) || ((cached_type == TYPE_NEON_LOAD1_3REG_Q) || ((cached_type == TYPE_NEON_LOAD1_4REG) || ((cached_type == TYPE_NEON_LOAD1_4REG_Q) || ((cached_type == TYPE_NEON_LOAD2_2REG_Q) || ((cached_type == TYPE_NEON_LOAD2_4REG) || ((cached_type == TYPE_NEON_LOAD2_4REG_Q) || ((cached_type == TYPE_NEON_LOAD3_3REG) || ((cached_type == TYPE_NEON_LOAD3_3REG_Q) || ((cached_type == TYPE_NEON_LOAD3_ALL_LANES) || ((cached_type == TYPE_NEON_LOAD3_ALL_LANES_Q) || ((cached_type == TYPE_NEON_LOAD3_ONE_LANE) || ((cached_type == TYPE_NEON_LOAD3_ONE_LANE_Q) || ((cached_type == TYPE_NEON_LOAD4_4REG) || ((cached_type == TYPE_NEON_LOAD4_4REG_Q) || ((cached_type == TYPE_NEON_LOAD4_ALL_LANES) || ((cached_type == TYPE_NEON_LOAD4_ALL_LANES_Q) || ((cached_type == TYPE_NEON_LOAD4_ONE_LANE) || ((cached_type == TYPE_NEON_LOAD4_ONE_LANE_Q) || ((cached_type == TYPE_NEON_LDP) || (cached_type == TYPE_NEON_LDP_Q))))))))))))))))))))))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_LOTS;
        }
      else if ((cached_type == TYPE_NEON_STORE1_2REG_Q) || ((cached_type == TYPE_NEON_STORE1_3REG) || ((cached_type == TYPE_NEON_STORE1_3REG_Q) || ((cached_type == TYPE_NEON_STORE1_4REG) || ((cached_type == TYPE_NEON_STORE1_4REG_Q) || ((cached_type == TYPE_NEON_STORE2_2REG_Q) || ((cached_type == TYPE_NEON_STORE2_4REG) || ((cached_type == TYPE_NEON_STORE2_4REG_Q) || ((cached_type == TYPE_NEON_STORE3_3REG) || ((cached_type == TYPE_NEON_STORE3_3REG_Q) || ((cached_type == TYPE_NEON_STORE3_ONE_LANE) || ((cached_type == TYPE_NEON_STORE3_ONE_LANE_Q) || ((cached_type == TYPE_NEON_STORE4_4REG) || ((cached_type == TYPE_NEON_STORE4_4REG_Q) || ((cached_type == TYPE_NEON_STORE4_ONE_LANE) || ((cached_type == TYPE_NEON_STORE4_ONE_LANE_Q) || ((cached_type == TYPE_NEON_STP) || (cached_type == TYPE_NEON_STP_Q))))))))))))))))))
        {
	  return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_STORE_LOTS;
        }
      else
        {
	  return CORTEX_A53_ADVSIMD_TYPE_UNKNOWN;
        }

    case 2476:  /* neon_vst4_lanev4sf */
    case 2475:  /* neon_vst4_lanev4si */
    case 2474:  /* neon_vst4_lanev8hf */
    case 2473:  /* neon_vst4_lanev8hi */
    case 2472:  /* neon_vst4_lanev2sf */
    case 2471:  /* neon_vst4_lanev2si */
    case 2470:  /* neon_vst4_lanev4hf */
    case 2469:  /* neon_vst4_lanev4hi */
    case 2468:  /* neon_vst4_lanev8qi */
    case 2467:  /* neon_vst4qbv4sf */
    case 2466:  /* neon_vst4qbv4si */
    case 2465:  /* neon_vst4qbv8hf */
    case 2464:  /* neon_vst4qbv8hi */
    case 2463:  /* neon_vst4qbv16qi */
    case 2462:  /* neon_vst4qav4sf */
    case 2461:  /* neon_vst4qav4si */
    case 2460:  /* neon_vst4qav8hf */
    case 2459:  /* neon_vst4qav8hi */
    case 2458:  /* neon_vst4qav16qi */
    case 2457:  /* neon_vst4di */
    case 2456:  /* neon_vst4v2sf */
    case 2455:  /* neon_vst4v2si */
    case 2454:  /* neon_vst4v4hf */
    case 2453:  /* neon_vst4v4hi */
    case 2452:  /* neon_vst4v8qi */
    case 2420:  /* neon_vst3_lanev4sf */
    case 2419:  /* neon_vst3_lanev4si */
    case 2418:  /* neon_vst3_lanev8hf */
    case 2417:  /* neon_vst3_lanev8hi */
    case 2416:  /* neon_vst3_lanev2sf */
    case 2415:  /* neon_vst3_lanev2si */
    case 2414:  /* neon_vst3_lanev4hf */
    case 2413:  /* neon_vst3_lanev4hi */
    case 2412:  /* neon_vst3_lanev8qi */
    case 2411:  /* neon_vst3qbv4sf */
    case 2410:  /* neon_vst3qbv4si */
    case 2409:  /* neon_vst3qbv8hf */
    case 2408:  /* neon_vst3qbv8hi */
    case 2407:  /* neon_vst3qbv16qi */
    case 2406:  /* neon_vst3qav4sf */
    case 2405:  /* neon_vst3qav4si */
    case 2404:  /* neon_vst3qav8hf */
    case 2403:  /* neon_vst3qav8hi */
    case 2402:  /* neon_vst3qav16qi */
    case 2401:  /* neon_vst3di */
    case 2400:  /* neon_vst3v2sf */
    case 2399:  /* neon_vst3v2si */
    case 2398:  /* neon_vst3v4hf */
    case 2397:  /* neon_vst3v4hi */
    case 2396:  /* neon_vst3v8qi */
    case 2355:  /* neon_vst2v4sf */
    case 2354:  /* neon_vst2v4si */
    case 2353:  /* neon_vst2v8hf */
    case 2352:  /* neon_vst2v8hi */
    case 2351:  /* neon_vst2v16qi */
      return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_STORE_LOTS;

    case 2445:  /* neon_vld4_lanev4sf */
    case 2444:  /* neon_vld4_lanev4si */
    case 2443:  /* neon_vld4_lanev8hf */
    case 2442:  /* neon_vld4_lanev8hi */
    case 2441:  /* neon_vld4_lanev2sf */
    case 2440:  /* neon_vld4_lanev2si */
    case 2439:  /* neon_vld4_lanev4hf */
    case 2438:  /* neon_vld4_lanev4hi */
    case 2437:  /* neon_vld4_lanev8qi */
    case 2436:  /* neon_vld4qbv4sf */
    case 2435:  /* neon_vld4qbv4si */
    case 2434:  /* neon_vld4qbv8hf */
    case 2433:  /* neon_vld4qbv8hi */
    case 2432:  /* neon_vld4qbv16qi */
    case 2431:  /* neon_vld4qav4sf */
    case 2430:  /* neon_vld4qav4si */
    case 2429:  /* neon_vld4qav8hf */
    case 2428:  /* neon_vld4qav8hi */
    case 2427:  /* neon_vld4qav16qi */
    case 2426:  /* neon_vld4di */
    case 2425:  /* neon_vld4v2sf */
    case 2424:  /* neon_vld4v2si */
    case 2423:  /* neon_vld4v4hf */
    case 2422:  /* neon_vld4v4hi */
    case 2421:  /* neon_vld4v8qi */
    case 2389:  /* neon_vld3_lanev4sf */
    case 2388:  /* neon_vld3_lanev4si */
    case 2387:  /* neon_vld3_lanev8hf */
    case 2386:  /* neon_vld3_lanev8hi */
    case 2385:  /* neon_vld3_lanev2sf */
    case 2384:  /* neon_vld3_lanev2si */
    case 2383:  /* neon_vld3_lanev4hf */
    case 2382:  /* neon_vld3_lanev4hi */
    case 2381:  /* neon_vld3_lanev8qi */
    case 2380:  /* neon_vld3qbv4sf */
    case 2379:  /* neon_vld3qbv4si */
    case 2378:  /* neon_vld3qbv8hf */
    case 2377:  /* neon_vld3qbv8hi */
    case 2376:  /* neon_vld3qbv16qi */
    case 2375:  /* neon_vld3qav4sf */
    case 2374:  /* neon_vld3qav4si */
    case 2373:  /* neon_vld3qav8hf */
    case 2372:  /* neon_vld3qav8hi */
    case 2371:  /* neon_vld3qav16qi */
    case 2370:  /* neon_vld3di */
    case 2369:  /* neon_vld3v2sf */
    case 2368:  /* neon_vld3v2si */
    case 2367:  /* neon_vld3v4hf */
    case 2366:  /* neon_vld3v4hi */
    case 2365:  /* neon_vld3v8qi */
    case 2329:  /* neon_vld2v4sf */
    case 2328:  /* neon_vld2v4si */
    case 2327:  /* neon_vld2v8hf */
    case 2326:  /* neon_vld2v8hi */
    case 2325:  /* neon_vld2v16qi */
      return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_LOTS;

    case 2364:  /* neon_vst2_lanev4sf */
    case 2363:  /* neon_vst2_lanev4si */
    case 2362:  /* neon_vst2_lanev8hf */
    case 2361:  /* neon_vst2_lanev8hi */
    case 2360:  /* neon_vst2_lanev2sf */
    case 2359:  /* neon_vst2_lanev2si */
    case 2358:  /* neon_vst2_lanev4hf */
    case 2357:  /* neon_vst2_lanev4hi */
    case 2356:  /* neon_vst2_lanev8qi */
    case 2350:  /* neon_vst2di */
    case 2349:  /* neon_vst2v2sf */
    case 2348:  /* neon_vst2v2si */
    case 2347:  /* neon_vst2v4hf */
    case 2346:  /* neon_vst2v4hi */
    case 2345:  /* neon_vst2v8qi */
    case 2306:  /* neon_vst1v2di */
    case 2304:  /* neon_vst1v4sf */
    case 2302:  /* neon_vst1v8hf */
    case 2300:  /* neon_vst1v4si */
    case 2298:  /* neon_vst1v8hi */
    case 2296:  /* neon_vst1v16qi */
    case 942:  /* *movmisalignv2di_neon_store */
    case 941:  /* *movmisalignv4sf_neon_store */
    case 940:  /* *movmisalignv4si_neon_store */
    case 939:  /* *movmisalignv8hf_neon_store */
    case 938:  /* *movmisalignv8hi_neon_store */
    case 937:  /* *movmisalignv16qi_neon_store */
      return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_STORE_128;

    case 2338:  /* neon_vld2_lanev4sf */
    case 2337:  /* neon_vld2_lanev4si */
    case 2336:  /* neon_vld2_lanev8hf */
    case 2335:  /* neon_vld2_lanev8hi */
    case 2334:  /* neon_vld2_lanev2sf */
    case 2333:  /* neon_vld2_lanev2si */
    case 2332:  /* neon_vld2_lanev4hf */
    case 2331:  /* neon_vld2_lanev4hi */
    case 2330:  /* neon_vld2_lanev8qi */
    case 2324:  /* neon_vld2di */
    case 2323:  /* neon_vld2v2sf */
    case 2322:  /* neon_vld2v2si */
    case 2321:  /* neon_vld2v4hf */
    case 2320:  /* neon_vld2v4hi */
    case 2319:  /* neon_vld2v8qi */
    case 2271:  /* neon_vld1v2di */
    case 2269:  /* neon_vld1v4sf */
    case 2267:  /* neon_vld1v8hf */
    case 2265:  /* neon_vld1v4si */
    case 2263:  /* neon_vld1v8hi */
    case 2261:  /* neon_vld1v16qi */
    case 948:  /* *movmisalignv2di_neon_load */
    case 947:  /* *movmisalignv4sf_neon_load */
    case 946:  /* *movmisalignv4si_neon_load */
    case 945:  /* *movmisalignv8hf_neon_load */
    case 944:  /* *movmisalignv8hi_neon_load */
    case 943:  /* *movmisalignv16qi_neon_load */
      return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_128;

    case 2318:  /* neon_vst1_lanev2di */
    case 2317:  /* neon_vst1_lanev4sf */
    case 2316:  /* neon_vst1_lanev4si */
    case 2315:  /* neon_vst1_lanev8hf */
    case 2314:  /* neon_vst1_lanev8hi */
    case 2313:  /* neon_vst1_lanev16qi */
    case 2312:  /* neon_vst1_lanedi */
    case 2311:  /* neon_vst1_lanev2sf */
    case 2310:  /* neon_vst1_lanev2si */
    case 2309:  /* neon_vst1_lanev4hf */
    case 2308:  /* neon_vst1_lanev4hi */
    case 2307:  /* neon_vst1_lanev8qi */
    case 2305:  /* neon_vst1di */
    case 2303:  /* neon_vst1v2sf */
    case 2301:  /* neon_vst1v4hf */
    case 2299:  /* neon_vst1v2si */
    case 2297:  /* neon_vst1v4hi */
    case 2295:  /* neon_vst1v8qi */
    case 930:  /* *movmisaligndi_neon_store */
    case 929:  /* *movmisalignv2sf_neon_store */
    case 928:  /* *movmisalignv2si_neon_store */
    case 927:  /* *movmisalignv4hf_neon_store */
    case 926:  /* *movmisalignv4hi_neon_store */
    case 925:  /* *movmisalignv8qi_neon_store */
      return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_STORE_64;

    case 2294:  /* neon_vld1_dupv2di */
    case 2293:  /* neon_vld1_dupv4sf */
    case 2292:  /* neon_vld1_dupv4si */
    case 2291:  /* neon_vld1_dupv8hf */
    case 2290:  /* neon_vld1_dupv8hi */
    case 2289:  /* neon_vld1_dupv16qi */
    case 2288:  /* neon_vld1_dupv2sf */
    case 2287:  /* neon_vld1_dupv2si */
    case 2286:  /* neon_vld1_dupv4hf */
    case 2285:  /* neon_vld1_dupv4hi */
    case 2284:  /* neon_vld1_dupv8qi */
    case 2283:  /* neon_vld1_lanev2di */
    case 2282:  /* neon_vld1_lanev4sf */
    case 2281:  /* neon_vld1_lanev4si */
    case 2280:  /* neon_vld1_lanev8hf */
    case 2279:  /* neon_vld1_lanev8hi */
    case 2278:  /* neon_vld1_lanev16qi */
    case 2277:  /* neon_vld1_lanedi */
    case 2276:  /* neon_vld1_lanev2sf */
    case 2275:  /* neon_vld1_lanev2si */
    case 2274:  /* neon_vld1_lanev4hf */
    case 2273:  /* neon_vld1_lanev4hi */
    case 2272:  /* neon_vld1_lanev8qi */
    case 2270:  /* neon_vld1di */
    case 2268:  /* neon_vld1v2sf */
    case 2266:  /* neon_vld1v4hf */
    case 2264:  /* neon_vld1v2si */
    case 2262:  /* neon_vld1v4hi */
    case 2260:  /* neon_vld1v8qi */
    case 936:  /* *movmisaligndi_neon_load */
    case 935:  /* *movmisalignv2sf_neon_load */
    case 934:  /* *movmisalignv2si_neon_load */
    case 933:  /* *movmisalignv4hf_neon_load */
    case 932:  /* *movmisalignv4hi_neon_load */
    case 931:  /* *movmisalignv8qi_neon_load */
      return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_LOAD_64;

    case 2558:  /* crypto_vmullp64 */
    case 2518:  /* neon_vec_umult_v2si */
    case 2517:  /* neon_vec_smult_v2si */
    case 2516:  /* neon_vec_umult_v4hi */
    case 2515:  /* neon_vec_smult_v4hi */
    case 2514:  /* neon_vec_umult_v8qi */
    case 2513:  /* neon_vec_smult_v8qi */
    case 2500:  /* neon_vec_umult_hi_v4si */
    case 2499:  /* neon_vec_smult_hi_v4si */
    case 2498:  /* neon_vec_umult_hi_v8hi */
    case 2497:  /* neon_vec_smult_hi_v8hi */
    case 2496:  /* neon_vec_umult_hi_v16qi */
    case 2495:  /* neon_vec_smult_hi_v16qi */
    case 2494:  /* neon_vec_umult_lo_v4si */
    case 2493:  /* neon_vec_smult_lo_v4si */
    case 2492:  /* neon_vec_umult_lo_v8hi */
    case 2491:  /* neon_vec_smult_lo_v8hi */
    case 2490:  /* neon_vec_umult_lo_v16qi */
    case 2489:  /* neon_vec_smult_lo_v16qi */
    case 1971:  /* neon_vqdmlsl_lanev2si */
    case 1970:  /* neon_vqdmlsl_lanev4hi */
    case 1969:  /* neon_vmlslu_lanev2si */
    case 1968:  /* neon_vmlsls_lanev2si */
    case 1967:  /* neon_vmlslu_lanev4hi */
    case 1966:  /* neon_vmlsls_lanev4hi */
    case 1965:  /* neon_vmls_lanev4sf */
    case 1964:  /* neon_vmls_lanev4si */
    case 1963:  /* neon_vmls_lanev8hi */
    case 1959:  /* neon_vqdmlal_lanev2si */
    case 1958:  /* neon_vqdmlal_lanev4hi */
    case 1957:  /* neon_vmlalu_lanev2si */
    case 1956:  /* neon_vmlals_lanev2si */
    case 1955:  /* neon_vmlalu_lanev4hi */
    case 1954:  /* neon_vmlals_lanev4hi */
    case 1953:  /* neon_vmla_lanev4sf */
    case 1952:  /* neon_vmla_lanev4si */
    case 1951:  /* neon_vmla_lanev8hi */
    case 1943:  /* neon_vqrdmlsh_lanev4si */
    case 1942:  /* neon_vqrdmlah_lanev4si */
    case 1941:  /* neon_vqrdmlsh_lanev8hi */
    case 1940:  /* neon_vqrdmlah_lanev8hi */
    case 1939:  /* neon_vqrdmulh_lanev2si */
    case 1938:  /* neon_vqdmulh_lanev2si */
    case 1937:  /* neon_vqrdmulh_lanev4hi */
    case 1936:  /* neon_vqdmulh_lanev4hi */
    case 1935:  /* neon_vqrdmulh_lanev4si */
    case 1934:  /* neon_vqdmulh_lanev4si */
    case 1933:  /* neon_vqrdmulh_lanev8hi */
    case 1932:  /* neon_vqdmulh_lanev8hi */
    case 1931:  /* neon_vqdmull_lanev2si */
    case 1930:  /* neon_vqdmull_lanev4hi */
    case 1929:  /* neon_vmullu_lanev2si */
    case 1928:  /* neon_vmulls_lanev2si */
    case 1927:  /* neon_vmullu_lanev4hi */
    case 1926:  /* neon_vmulls_lanev4hi */
    case 1924:  /* neon_vmul_lanev8hf */
    case 1923:  /* neon_vmul_lanev4sf */
    case 1922:  /* neon_vmul_lanev4si */
    case 1921:  /* neon_vmul_lanev8hi */
    case 1453:  /* neon_vqdmullv2si */
    case 1452:  /* neon_vqdmullv4hi */
    case 1451:  /* neon_vmullpv2si */
    case 1450:  /* neon_vmulluv2si */
    case 1449:  /* neon_vmullsv2si */
    case 1448:  /* neon_vmullpv4hi */
    case 1447:  /* neon_vmulluv4hi */
    case 1446:  /* neon_vmullsv4hi */
    case 1445:  /* neon_vmullpv8qi */
    case 1444:  /* neon_vmulluv8qi */
    case 1443:  /* neon_vmullsv8qi */
    case 1442:  /* neon_vqdmlslv2si */
    case 1441:  /* neon_vqdmlslv4hi */
    case 1440:  /* neon_vqdmlalv2si */
    case 1439:  /* neon_vqdmlalv4hi */
    case 1438:  /* neon_vqrdmlshv4si */
    case 1437:  /* neon_vqrdmlahv4si */
    case 1436:  /* neon_vqrdmlshv8hi */
    case 1435:  /* neon_vqrdmlahv8hi */
    case 1434:  /* neon_vqrdmlshv2si */
    case 1433:  /* neon_vqrdmlahv2si */
    case 1432:  /* neon_vqrdmlshv4hi */
    case 1431:  /* neon_vqrdmlahv4hi */
    case 1430:  /* neon_vqrdmulhv4si */
    case 1429:  /* neon_vqdmulhv4si */
    case 1428:  /* neon_vqrdmulhv8hi */
    case 1427:  /* neon_vqdmulhv8hi */
    case 1422:  /* neon_vmlsluv2si */
    case 1421:  /* neon_vmlslsv2si */
    case 1420:  /* neon_vmlsluv4hi */
    case 1419:  /* neon_vmlslsv4hi */
    case 1418:  /* neon_vmlsluv8qi */
    case 1417:  /* neon_vmlslsv8qi */
    case 1416:  /* neon_vmlsv4sf_unspec */
    case 1414:  /* neon_vmlsv4si_unspec */
    case 1412:  /* neon_vmlsv8hi_unspec */
    case 1410:  /* neon_vmlsv16qi_unspec */
    case 1408:  /* neon_vmlaluv2si */
    case 1407:  /* neon_vmlalsv2si */
    case 1406:  /* neon_vmlaluv4hi */
    case 1405:  /* neon_vmlalsv4hi */
    case 1404:  /* neon_vmlaluv8qi */
    case 1403:  /* neon_vmlalsv8qi */
    case 1402:  /* neon_vmlav4sf_unspec */
    case 1400:  /* neon_vmlav4si_unspec */
    case 1398:  /* neon_vmlav8hi_unspec */
    case 1396:  /* neon_vmlav16qi_unspec */
    case 1393:  /* neon_vmulfv8hf */
    case 1392:  /* neon_vmulfv4sf */
    case 1390:  /* neon_vmulpv16qi */
    case 1035:  /* fmsubv8hf4_intrinsic */
    case 1034:  /* fmsubv4sf4_intrinsic */
    case 1032:  /* *fmsubv4sf4 */
    case 1029:  /* fmav8hf4_intrinsic */
    case 1028:  /* fmav4sf4_intrinsic */
    case 1026:  /* fmav4sf4 */
    case 1024:  /* mulv4sf3negv4sfaddv4sf_neon */
    case 1022:  /* mulv4si3negv4siaddv4si_neon */
    case 1020:  /* mulv8hi3negv8hiaddv8hi_neon */
    case 1018:  /* mulv16qi3negv16qiaddv16qi_neon */
    case 1015:  /* mulv8hf3addv8hf_neon */
    case 1014:  /* mulv4sf3addv4sf_neon */
    case 1012:  /* mulv4si3addv4si_neon */
    case 1010:  /* mulv8hi3addv8hi_neon */
    case 1008:  /* mulv16qi3addv16qi_neon */
    case 1006:  /* *mulv4sf3_neon */
    case 1004:  /* *mulv4si3_neon */
    case 1002:  /* *mulv8hi3_neon */
    case 1000:  /* *mulv16qi3_neon */
      return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_MUL_Q;

    case 1962:  /* neon_vmls_lanev2sf */
    case 1961:  /* neon_vmls_lanev2si */
    case 1960:  /* neon_vmls_lanev4hi */
    case 1950:  /* neon_vmla_lanev2sf */
    case 1949:  /* neon_vmla_lanev2si */
    case 1948:  /* neon_vmla_lanev4hi */
    case 1947:  /* neon_vqrdmlsh_lanev2si */
    case 1946:  /* neon_vqrdmlah_lanev2si */
    case 1945:  /* neon_vqrdmlsh_lanev4hi */
    case 1944:  /* neon_vqrdmlah_lanev4hi */
    case 1925:  /* neon_vmul_lanev4hf */
    case 1920:  /* neon_vmul_lanev2sf */
    case 1919:  /* neon_vmul_lanev2si */
    case 1918:  /* neon_vmul_lanev4hi */
    case 1426:  /* neon_vqrdmulhv2si */
    case 1425:  /* neon_vqdmulhv2si */
    case 1424:  /* neon_vqrdmulhv4hi */
    case 1423:  /* neon_vqdmulhv4hi */
    case 1415:  /* neon_vmlsv2sf_unspec */
    case 1413:  /* neon_vmlsv2si_unspec */
    case 1411:  /* neon_vmlsv4hi_unspec */
    case 1409:  /* neon_vmlsv8qi_unspec */
    case 1401:  /* neon_vmlav2sf_unspec */
    case 1399:  /* neon_vmlav2si_unspec */
    case 1397:  /* neon_vmlav4hi_unspec */
    case 1395:  /* neon_vmlav8qi_unspec */
    case 1394:  /* neon_vmulfv4hf */
    case 1391:  /* neon_vmulfv2sf */
    case 1389:  /* neon_vmulpv8qi */
    case 1036:  /* fmsubv4hf4_intrinsic */
    case 1033:  /* fmsubv2sf4_intrinsic */
    case 1031:  /* *fmsubv2sf4 */
    case 1030:  /* fmav4hf4_intrinsic */
    case 1027:  /* fmav2sf4_intrinsic */
    case 1025:  /* fmav2sf4 */
    case 1023:  /* mulv2sf3negv2sfaddv2sf_neon */
    case 1021:  /* mulv2si3negv2siaddv2si_neon */
    case 1019:  /* mulv4hi3negv4hiaddv4hi_neon */
    case 1017:  /* mulv8qi3negv8qiaddv8qi_neon */
    case 1016:  /* mulv4hf3addv4hf_neon */
    case 1013:  /* mulv2sf3addv2sf_neon */
    case 1011:  /* mulv2si3addv2si_neon */
    case 1009:  /* mulv4hi3addv4hi_neon */
    case 1007:  /* mulv8qi3addv8qi_neon */
    case 1005:  /* *mulv2sf3_neon */
    case 1003:  /* *mulv2si3_neon */
    case 1001:  /* *mulv4hi3_neon */
    case 999:  /* *mulv8qi3_neon */
      return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_MUL;

    case 2546:  /* neon_vabdv2di_3 */
    case 2545:  /* neon_vabdv4sf_3 */
    case 2543:  /* neon_vabdv8hf_3 */
    case 2541:  /* neon_vabdv4si_3 */
    case 2539:  /* neon_vabdv8hi_3 */
    case 2537:  /* neon_vabdv16qi_3 */
    case 2535:  /* neon_vabdv2di_2 */
    case 2534:  /* neon_vabdv4sf_2 */
    case 2532:  /* neon_vabdv8hf_2 */
    case 2530:  /* neon_vabdv4si_2 */
    case 2528:  /* neon_vabdv8hi_2 */
    case 2526:  /* neon_vabdv16qi_2 */
    case 2524:  /* neon_vec_pack_trunc_v2di */
    case 2523:  /* neon_vec_pack_trunc_v4si */
    case 2522:  /* neon_vec_pack_trunc_v8hi */
    case 2506:  /* neon_vec_ushiftl_v2si */
    case 2505:  /* neon_vec_sshiftl_v2si */
    case 2504:  /* neon_vec_ushiftl_v4hi */
    case 2503:  /* neon_vec_sshiftl_v4hi */
    case 2502:  /* neon_vec_ushiftl_v8qi */
    case 2501:  /* neon_vec_sshiftl_v8qi */
    case 2488:  /* neon_vec_unpacku_hi_v4si */
    case 2487:  /* neon_vec_unpacks_hi_v4si */
    case 2486:  /* neon_vec_unpacku_hi_v8hi */
    case 2485:  /* neon_vec_unpacks_hi_v8hi */
    case 2484:  /* neon_vec_unpacku_hi_v16qi */
    case 2483:  /* neon_vec_unpacks_hi_v16qi */
    case 2482:  /* neon_vec_unpacku_lo_v4si */
    case 2481:  /* neon_vec_unpacks_lo_v4si */
    case 2480:  /* neon_vec_unpacku_lo_v8hi */
    case 2479:  /* neon_vec_unpacks_lo_v8hi */
    case 2478:  /* neon_vec_unpacku_lo_v16qi */
    case 2477:  /* neon_vec_unpacks_lo_v16qi */
    case 2258:  /* *neon_vuzpv8hf_insn */
    case 2257:  /* *neon_vuzpv4sf_insn */
    case 2255:  /* *neon_vuzpv4si_insn */
    case 2253:  /* *neon_vuzpv8hi_insn */
    case 2251:  /* *neon_vuzpv16qi_insn */
    case 2248:  /* *neon_vzipv8hf_insn */
    case 2247:  /* *neon_vzipv4sf_insn */
    case 2245:  /* *neon_vzipv4si_insn */
    case 2243:  /* *neon_vzipv8hi_insn */
    case 2241:  /* *neon_vzipv16qi_insn */
    case 2238:  /* *neon_vtrnv8hf_insn */
    case 2237:  /* *neon_vtrnv4sf_insn */
    case 2235:  /* *neon_vtrnv4si_insn */
    case 2233:  /* *neon_vtrnv8hi_insn */
    case 2231:  /* *neon_vtrnv16qi_insn */
    case 2218:  /* neon_vsli_nv2di */
    case 2216:  /* neon_vsli_nv4si */
    case 2214:  /* neon_vsli_nv8hi */
    case 2212:  /* neon_vsli_nv16qi */
    case 2210:  /* neon_vsri_nv2di */
    case 2208:  /* neon_vsri_nv4si */
    case 2206:  /* neon_vsri_nv8hi */
    case 2204:  /* neon_vsri_nv16qi */
    case 2202:  /* neon_vrsrau_nv2di */
    case 2201:  /* neon_vrsras_nv2di */
    case 2200:  /* neon_vsrau_nv2di */
    case 2199:  /* neon_vsras_nv2di */
    case 2194:  /* neon_vrsrau_nv4si */
    case 2193:  /* neon_vrsras_nv4si */
    case 2192:  /* neon_vsrau_nv4si */
    case 2191:  /* neon_vsras_nv4si */
    case 2186:  /* neon_vrsrau_nv8hi */
    case 2185:  /* neon_vrsras_nv8hi */
    case 2184:  /* neon_vsrau_nv8hi */
    case 2183:  /* neon_vsras_nv8hi */
    case 2178:  /* neon_vrsrau_nv16qi */
    case 2177:  /* neon_vrsras_nv16qi */
    case 2176:  /* neon_vsrau_nv16qi */
    case 2175:  /* neon_vsras_nv16qi */
    case 2170:  /* neon_vshllu_nv2si */
    case 2169:  /* neon_vshlls_nv2si */
    case 2168:  /* neon_vshllu_nv4hi */
    case 2167:  /* neon_vshlls_nv4hi */
    case 2166:  /* neon_vshllu_nv8qi */
    case 2165:  /* neon_vshlls_nv8qi */
    case 2164:  /* neon_vqshlu_nv2di */
    case 2162:  /* neon_vqshlu_nv4si */
    case 2160:  /* neon_vqshlu_nv8hi */
    case 2158:  /* neon_vqshlu_nv16qi */
    case 2156:  /* neon_vqshl_u_nv2di */
    case 2155:  /* neon_vqshl_s_nv2di */
    case 2152:  /* neon_vqshl_u_nv4si */
    case 2151:  /* neon_vqshl_s_nv4si */
    case 2148:  /* neon_vqshl_u_nv8hi */
    case 2147:  /* neon_vqshl_s_nv8hi */
    case 2144:  /* neon_vqshl_u_nv16qi */
    case 2143:  /* neon_vqshl_s_nv16qi */
    case 2140:  /* neon_vshl_nv2di */
    case 2138:  /* neon_vshl_nv4si */
    case 2136:  /* neon_vshl_nv8hi */
    case 2134:  /* neon_vshl_nv16qi */
    case 2132:  /* neon_vqrshrun_nv2di */
    case 2131:  /* neon_vqshrun_nv2di */
    case 2130:  /* neon_vqrshrun_nv4si */
    case 2129:  /* neon_vqshrun_nv4si */
    case 2128:  /* neon_vqrshrun_nv8hi */
    case 2127:  /* neon_vqshrun_nv8hi */
    case 2126:  /* neon_vqrshrnu_nv2di */
    case 2125:  /* neon_vqrshrns_nv2di */
    case 2124:  /* neon_vqshrnu_nv2di */
    case 2123:  /* neon_vqshrns_nv2di */
    case 2122:  /* neon_vqrshrnu_nv4si */
    case 2121:  /* neon_vqrshrns_nv4si */
    case 2120:  /* neon_vqshrnu_nv4si */
    case 2119:  /* neon_vqshrns_nv4si */
    case 2118:  /* neon_vqrshrnu_nv8hi */
    case 2117:  /* neon_vqrshrns_nv8hi */
    case 2116:  /* neon_vqshrnu_nv8hi */
    case 2115:  /* neon_vqshrns_nv8hi */
    case 2114:  /* neon_vrshrn_nv2di */
    case 2113:  /* neon_vshrn_nv2di */
    case 2112:  /* neon_vrshrn_nv4si */
    case 2111:  /* neon_vshrn_nv4si */
    case 2110:  /* neon_vrshrn_nv8hi */
    case 2109:  /* neon_vshrn_nv8hi */
    case 2108:  /* neon_vrshru_nv2di */
    case 2107:  /* neon_vrshrs_nv2di */
    case 2106:  /* neon_vshru_nv2di */
    case 2105:  /* neon_vshrs_nv2di */
    case 2100:  /* neon_vrshru_nv4si */
    case 2099:  /* neon_vrshrs_nv4si */
    case 2098:  /* neon_vshru_nv4si */
    case 2097:  /* neon_vshrs_nv4si */
    case 2092:  /* neon_vrshru_nv8hi */
    case 2091:  /* neon_vrshrs_nv8hi */
    case 2090:  /* neon_vshru_nv8hi */
    case 2089:  /* neon_vshrs_nv8hi */
    case 2084:  /* neon_vrshru_nv16qi */
    case 2083:  /* neon_vrshrs_nv16qi */
    case 2082:  /* neon_vshru_nv16qi */
    case 2081:  /* neon_vshrs_nv16qi */
    case 2076:  /* neon_vqrshluv2di */
    case 2075:  /* neon_vqrshlsv2di */
    case 2074:  /* neon_vqshluv2di */
    case 2073:  /* neon_vqshlsv2di */
    case 2068:  /* neon_vqrshluv4si */
    case 2067:  /* neon_vqrshlsv4si */
    case 2066:  /* neon_vqshluv4si */
    case 2065:  /* neon_vqshlsv4si */
    case 2060:  /* neon_vqrshluv8hi */
    case 2059:  /* neon_vqrshlsv8hi */
    case 2058:  /* neon_vqshluv8hi */
    case 2057:  /* neon_vqshlsv8hi */
    case 2052:  /* neon_vqrshluv16qi */
    case 2051:  /* neon_vqrshlsv16qi */
    case 2050:  /* neon_vqshluv16qi */
    case 2049:  /* neon_vqshlsv16qi */
    case 2044:  /* neon_vrshluv2di */
    case 2043:  /* neon_vrshlsv2di */
    case 2042:  /* neon_vshluv2di */
    case 2041:  /* neon_vshlsv2di */
    case 2036:  /* neon_vrshluv4si */
    case 2035:  /* neon_vrshlsv4si */
    case 2034:  /* neon_vshluv4si */
    case 2033:  /* neon_vshlsv4si */
    case 2028:  /* neon_vrshluv8hi */
    case 2027:  /* neon_vrshlsv8hi */
    case 2026:  /* neon_vshluv8hi */
    case 2025:  /* neon_vshlsv8hi */
    case 2020:  /* neon_vrshluv16qi */
    case 2019:  /* neon_vrshlsv16qi */
    case 2018:  /* neon_vshluv16qi */
    case 2017:  /* neon_vshlsv16qi */
    case 2012:  /* neon_vbslv2di_internal */
    case 2010:  /* neon_vbslv4sf_internal */
    case 2008:  /* neon_vbslv8hf_internal */
    case 2006:  /* neon_vbslv4si_internal */
    case 2004:  /* neon_vbslv8hi_internal */
    case 2002:  /* neon_vbslv16qi_internal */
    case 2000:  /* neon_vrev16v16qi */
    case 1998:  /* neon_vrev32v8hi */
    case 1997:  /* neon_vrev32v16qi */
    case 1994:  /* neon_vrev64v2di */
    case 1993:  /* neon_vrev64v4sf */
    case 1991:  /* neon_vrev64v8hf */
    case 1989:  /* neon_vrev64v4si */
    case 1987:  /* neon_vrev64v8hi */
    case 1985:  /* neon_vrev64v16qi */
    case 1983:  /* neon_vextv2di */
    case 1981:  /* neon_vextv4sf */
    case 1979:  /* neon_vextv8hf */
    case 1977:  /* neon_vextv4si */
    case 1975:  /* neon_vextv8hi */
    case 1973:  /* neon_vextv16qi */
    case 1917:  /* neon_vmovluv2si */
    case 1916:  /* neon_vmovlsv2si */
    case 1915:  /* neon_vmovluv4hi */
    case 1914:  /* neon_vmovlsv4hi */
    case 1913:  /* neon_vmovluv8qi */
    case 1912:  /* neon_vmovlsv8qi */
    case 1911:  /* neon_vqmovunv2di */
    case 1910:  /* neon_vqmovunv4si */
    case 1909:  /* neon_vqmovunv8hi */
    case 1908:  /* neon_vqmovnuv2di */
    case 1907:  /* neon_vqmovnsv2di */
    case 1906:  /* neon_vqmovnuv4si */
    case 1905:  /* neon_vqmovnsv4si */
    case 1904:  /* neon_vqmovnuv8hi */
    case 1903:  /* neon_vqmovnsv8hi */
    case 1902:  /* neon_vmovnv2di */
    case 1901:  /* neon_vmovnv4si */
    case 1900:  /* neon_vmovnv8hi */
    case 1891:  /* neon_vcvtpuv8hf */
    case 1890:  /* neon_vcvtpsv8hf */
    case 1889:  /* neon_vcvtnuv8hf */
    case 1888:  /* neon_vcvtnsv8hf */
    case 1887:  /* neon_vcvtmuv8hf */
    case 1886:  /* neon_vcvtmsv8hf */
    case 1885:  /* neon_vcvtauv8hf */
    case 1884:  /* neon_vcvtasv8hf */
    case 1883:  /* neon_vcvtu_nv8hi */
    case 1882:  /* neon_vcvts_nv8hi */
    case 1879:  /* neon_vcvtu_nv4si */
    case 1878:  /* neon_vcvts_nv4si */
    case 1873:  /* neon_vcvtu_nv8hf */
    case 1872:  /* neon_vcvts_nv8hf */
    case 1871:  /* neon_vcvtu_nv4sf */
    case 1870:  /* neon_vcvts_nv4sf */
    case 1865:  /* neon_vcvtuv8hf */
    case 1864:  /* neon_vcvtsv8hf */
    case 1863:  /* neon_vcvtuv8hi */
    case 1862:  /* neon_vcvtsv8hi */
    case 1859:  /* neon_vcvtv4hfv4sf */
    case 1857:  /* neon_vcvtuv4si */
    case 1856:  /* neon_vcvtsv4si */
    case 1853:  /* neon_vcvtuv4sf */
    case 1852:  /* neon_vcvtsv4sf */
    case 1849:  /* fixuns_truncv4sfv4si2 */
    case 1847:  /* fix_truncv4sfv4si2 */
    case 1845:  /* floatunsv4siv4sf2 */
    case 1843:  /* floatv4siv4sf2 */
    case 1835:  /* *neon_vswpv2di */
    case 1833:  /* *neon_vswpv4sf */
    case 1831:  /* *neon_vswpv8hf */
    case 1829:  /* *neon_vswpv4si */
    case 1827:  /* *neon_vswpv8hi */
    case 1825:  /* *neon_vswpv16qi */
    case 1822:  /* neon_vdup_lanev8hf_internal */
    case 1821:  /* neon_vdup_lanev4sf_internal */
    case 1819:  /* neon_vdup_lanev4si_internal */
    case 1817:  /* neon_vdup_lanev8hi_internal */
    case 1815:  /* neon_vdup_lanev16qi_internal */
    case 1784:  /* neon_vrsqrtev4sf */
    case 1783:  /* neon_vrsqrtev4si */
    case 1780:  /* neon_vrecpev4sf */
    case 1779:  /* neon_vrecpev4si */
    case 1775:  /* neon_vrecpev8hf */
    case 1774:  /* popcountv16qi2 */
    case 1772:  /* clzv4si2 */
    case 1770:  /* clzv8hi2 */
    case 1768:  /* clzv16qi2 */
    case 1766:  /* neon_vclsv4si */
    case 1764:  /* neon_vclsv8hi */
    case 1762:  /* neon_vclsv16qi */
    case 1760:  /* neon_vqnegv4si */
    case 1758:  /* neon_vqnegv8hi */
    case 1756:  /* neon_vqnegv16qi */
    case 1754:  /* neon_bswapv2di */
    case 1753:  /* neon_bswapv4si */
    case 1751:  /* neon_bswapv8hi */
    case 1749:  /* neon_vqabsv4si */
    case 1747:  /* neon_vqabsv8hi */
    case 1745:  /* neon_vqabsv16qi */
    case 1742:  /* neon_vrsqrtsv8hf */
    case 1741:  /* neon_vrsqrtsv4sf */
    case 1738:  /* neon_vrecpsv8hf */
    case 1737:  /* neon_vrecpsv4sf */
    case 1735:  /* neon_vpminfv4sf */
    case 1734:  /* neon_vpmaxfv4sf */
    case 1707:  /* neon_vpaddluv4si */
    case 1706:  /* neon_vpaddlsv4si */
    case 1705:  /* neon_vpaddluv2si */
    case 1704:  /* neon_vpaddlsv2si */
    case 1703:  /* neon_vpaddluv8hi */
    case 1702:  /* neon_vpaddlsv8hi */
    case 1701:  /* neon_vpaddluv4hi */
    case 1700:  /* neon_vpaddlsv4hi */
    case 1699:  /* neon_vpaddluv16qi */
    case 1698:  /* neon_vpaddlsv16qi */
    case 1697:  /* neon_vpaddluv8qi */
    case 1696:  /* neon_vpaddlsv8qi */
    case 1695:  /* fminv4sf3 */
    case 1694:  /* fmaxv4sf3 */
    case 1689:  /* neon_vminnmv8hf */
    case 1688:  /* neon_vmaxnmv8hf */
    case 1683:  /* neon_vminfv8hf */
    case 1682:  /* neon_vmaxfv8hf */
    case 1681:  /* neon_vminfv4sf */
    case 1680:  /* neon_vmaxfv4sf */
    case 1677:  /* neon_vminuv4si */
    case 1676:  /* neon_vminsv4si */
    case 1675:  /* neon_vmaxuv4si */
    case 1674:  /* neon_vmaxsv4si */
    case 1669:  /* neon_vminuv8hi */
    case 1668:  /* neon_vminsv8hi */
    case 1667:  /* neon_vmaxuv8hi */
    case 1666:  /* neon_vmaxsv8hi */
    case 1661:  /* neon_vminuv16qi */
    case 1660:  /* neon_vminsv16qi */
    case 1659:  /* neon_vmaxuv16qi */
    case 1658:  /* neon_vmaxsv16qi */
    case 1647:  /* neon_vabauv4si */
    case 1646:  /* neon_vabasv4si */
    case 1643:  /* neon_vabauv8hi */
    case 1642:  /* neon_vabasv8hi */
    case 1639:  /* neon_vabauv16qi */
    case 1638:  /* neon_vabasv16qi */
    case 1635:  /* neon_vabdluv2si */
    case 1634:  /* neon_vabdlsv2si */
    case 1633:  /* neon_vabdluv4hi */
    case 1632:  /* neon_vabdlsv4hi */
    case 1631:  /* neon_vabdluv8qi */
    case 1630:  /* neon_vabdlsv8qi */
    case 1629:  /* neon_vabdfv4sf */
    case 1626:  /* neon_vabdv8hf */
    case 1625:  /* neon_vabduv4si */
    case 1624:  /* neon_vabdsv4si */
    case 1621:  /* neon_vabduv8hi */
    case 1620:  /* neon_vabdsv8hi */
    case 1617:  /* neon_vabduv16qi */
    case 1616:  /* neon_vabdsv16qi */
    case 1613:  /* neon_vtstv4si */
    case 1611:  /* neon_vtstv8hi */
    case 1609:  /* neon_vtstv16qi */
    case 1603:  /* neon_vcaltv8hf_fp16insn_unspec */
    case 1602:  /* neon_vcalev8hf_fp16insn_unspec */
    case 1601:  /* neon_vcagtv8hf_fp16insn_unspec */
    case 1600:  /* neon_vcagev8hf_fp16insn_unspec */
    case 1595:  /* neon_vcalev8hf_fp16insn */
    case 1594:  /* neon_vcaltv8hf_fp16insn */
    case 1593:  /* neon_vcagev8hf_fp16insn */
    case 1592:  /* neon_vcagtv8hf_fp16insn */
    case 1591:  /* neon_vcagtv4sf_insn_unspec */
    case 1590:  /* neon_vcagev4sf_insn_unspec */
    case 1587:  /* neon_vcagev4sf_insn */
    case 1586:  /* neon_vcagtv4sf_insn */
    case 1583:  /* neon_vcgeuv4si */
    case 1582:  /* neon_vcgtuv4si */
    case 1579:  /* neon_vcgeuv8hi */
    case 1578:  /* neon_vcgtuv8hi */
    case 1575:  /* neon_vcgeuv16qi */
    case 1574:  /* neon_vcgtuv16qi */
    case 1566:  /* neon_vclev8hf_fp16insn_unspec */
    case 1565:  /* neon_vcltv8hf_fp16insn_unspec */
    case 1564:  /* neon_vcgev8hf_fp16insn_unspec */
    case 1563:  /* neon_vcgtv8hf_fp16insn_unspec */
    case 1562:  /* neon_vceqv8hf_fp16insn_unspec */
    case 1551:  /* neon_vclev4sf_insn_unspec */
    case 1550:  /* neon_vcltv4sf_insn_unspec */
    case 1549:  /* neon_vcgev4sf_insn_unspec */
    case 1548:  /* neon_vcgtv4sf_insn_unspec */
    case 1547:  /* neon_vceqv4sf_insn_unspec */
    case 1501:  /* neon_vrsubhnv2di */
    case 1500:  /* neon_vsubhnv2di */
    case 1499:  /* neon_vrsubhnv4si */
    case 1498:  /* neon_vsubhnv4si */
    case 1497:  /* neon_vrsubhnv8hi */
    case 1496:  /* neon_vsubhnv8hi */
    case 1495:  /* neon_vhsubuv4si */
    case 1494:  /* neon_vhsubsv4si */
    case 1491:  /* neon_vhsubuv8hi */
    case 1490:  /* neon_vhsubsv8hi */
    case 1487:  /* neon_vhsubuv16qi */
    case 1486:  /* neon_vhsubsv16qi */
    case 1483:  /* neon_vqsubuv2di */
    case 1482:  /* neon_vqsubsv2di */
    case 1479:  /* neon_vqsubuv4si */
    case 1478:  /* neon_vqsubsv4si */
    case 1475:  /* neon_vqsubuv8hi */
    case 1474:  /* neon_vqsubsv8hi */
    case 1471:  /* neon_vqsubuv16qi */
    case 1470:  /* neon_vqsubsv16qi */
    case 1467:  /* neon_vsubwuv2si */
    case 1466:  /* neon_vsubwsv2si */
    case 1465:  /* neon_vsubwuv4hi */
    case 1464:  /* neon_vsubwsv4hi */
    case 1463:  /* neon_vsubwuv8qi */
    case 1462:  /* neon_vsubwsv8qi */
    case 1461:  /* neon_vsubluv2si */
    case 1460:  /* neon_vsublsv2si */
    case 1459:  /* neon_vsubluv4hi */
    case 1458:  /* neon_vsublsv4hi */
    case 1457:  /* neon_vsubluv8qi */
    case 1456:  /* neon_vsublsv8qi */
    case 1455:  /* neon_vsubv4sf_unspec */
    case 1388:  /* neon_vraddhnv2di */
    case 1387:  /* neon_vaddhnv2di */
    case 1386:  /* neon_vraddhnv4si */
    case 1385:  /* neon_vaddhnv4si */
    case 1384:  /* neon_vraddhnv8hi */
    case 1383:  /* neon_vaddhnv8hi */
    case 1382:  /* neon_vqadduv2di */
    case 1381:  /* neon_vqaddsv2di */
    case 1378:  /* neon_vqadduv4si */
    case 1377:  /* neon_vqaddsv4si */
    case 1374:  /* neon_vqadduv8hi */
    case 1373:  /* neon_vqaddsv8hi */
    case 1370:  /* neon_vqadduv16qi */
    case 1369:  /* neon_vqaddsv16qi */
    case 1366:  /* neon_vhadduv4si */
    case 1365:  /* neon_vhaddsv4si */
    case 1364:  /* neon_vrhadduv4si */
    case 1363:  /* neon_vrhaddsv4si */
    case 1362:  /* neon_vhadduv2si */
    case 1361:  /* neon_vhaddsv2si */
    case 1360:  /* neon_vrhadduv2si */
    case 1359:  /* neon_vrhaddsv2si */
    case 1358:  /* neon_vhadduv8hi */
    case 1357:  /* neon_vhaddsv8hi */
    case 1356:  /* neon_vrhadduv8hi */
    case 1355:  /* neon_vrhaddsv8hi */
    case 1354:  /* neon_vhadduv4hi */
    case 1353:  /* neon_vhaddsv4hi */
    case 1352:  /* neon_vrhadduv4hi */
    case 1351:  /* neon_vrhaddsv4hi */
    case 1350:  /* neon_vhadduv16qi */
    case 1349:  /* neon_vhaddsv16qi */
    case 1348:  /* neon_vrhadduv16qi */
    case 1347:  /* neon_vrhaddsv16qi */
    case 1346:  /* neon_vhadduv8qi */
    case 1345:  /* neon_vhaddsv8qi */
    case 1344:  /* neon_vrhadduv8qi */
    case 1343:  /* neon_vrhaddsv8qi */
    case 1342:  /* neon_vaddwuv2si */
    case 1341:  /* neon_vaddwsv2si */
    case 1340:  /* neon_vaddwuv4hi */
    case 1339:  /* neon_vaddwsv4hi */
    case 1338:  /* neon_vaddwuv8qi */
    case 1337:  /* neon_vaddwsv8qi */
    case 1336:  /* neon_vaddluv2si */
    case 1335:  /* neon_vaddlsv2si */
    case 1334:  /* neon_vaddluv4hi */
    case 1333:  /* neon_vaddlsv4hi */
    case 1332:  /* neon_vaddluv8qi */
    case 1331:  /* neon_vaddlsv8qi */
    case 1330:  /* neon_vaddv4sf_unspec */
    case 1293:  /* arm_reduc_plus_internal_v2di */
    case 1292:  /* quad_halves_umaxv16qi */
    case 1291:  /* quad_halves_uminv16qi */
    case 1290:  /* quad_halves_smaxv16qi */
    case 1289:  /* quad_halves_sminv16qi */
    case 1288:  /* quad_halves_plusv16qi */
    case 1287:  /* quad_halves_umaxv8hi */
    case 1286:  /* quad_halves_uminv8hi */
    case 1285:  /* quad_halves_smaxv8hi */
    case 1284:  /* quad_halves_sminv8hi */
    case 1283:  /* quad_halves_plusv8hi */
    case 1282:  /* quad_halves_smaxv4sf */
    case 1281:  /* quad_halves_sminv4sf */
    case 1280:  /* quad_halves_plusv4sf */
    case 1279:  /* quad_halves_umaxv4si */
    case 1278:  /* quad_halves_uminv4si */
    case 1277:  /* quad_halves_smaxv4si */
    case 1276:  /* quad_halves_sminv4si */
    case 1275:  /* quad_halves_plusv4si */
    case 1274:  /* widen_usumv2si3 */
    case 1273:  /* widen_usumv4hi3 */
    case 1272:  /* widen_usumv8qi3 */
    case 1271:  /* vec_sel_widen_usum_hiv4siv2si3 */
    case 1270:  /* vec_sel_widen_usum_hiv4siv4hi3 */
    case 1269:  /* vec_sel_widen_usum_hiv4siv8qi3 */
    case 1268:  /* vec_sel_widen_usum_hiv8hiv2si3 */
    case 1267:  /* vec_sel_widen_usum_hiv8hiv4hi3 */
    case 1266:  /* vec_sel_widen_usum_hiv8hiv8qi3 */
    case 1265:  /* vec_sel_widen_usum_hiv16qiv2si3 */
    case 1264:  /* vec_sel_widen_usum_hiv16qiv4hi3 */
    case 1263:  /* vec_sel_widen_usum_hiv16qiv8qi3 */
    case 1262:  /* vec_sel_widen_usum_lov4siv2si3 */
    case 1261:  /* vec_sel_widen_usum_lov4siv4hi3 */
    case 1260:  /* vec_sel_widen_usum_lov4siv8qi3 */
    case 1259:  /* vec_sel_widen_usum_lov8hiv2si3 */
    case 1258:  /* vec_sel_widen_usum_lov8hiv4hi3 */
    case 1257:  /* vec_sel_widen_usum_lov8hiv8qi3 */
    case 1256:  /* vec_sel_widen_usum_lov16qiv2si3 */
    case 1255:  /* vec_sel_widen_usum_lov16qiv4hi3 */
    case 1254:  /* vec_sel_widen_usum_lov16qiv8qi3 */
    case 1253:  /* widen_ssumv2si3 */
    case 1252:  /* widen_ssumv4hi3 */
    case 1251:  /* widen_ssumv8qi3 */
    case 1250:  /* vec_sel_widen_ssum_hiv4siv2si3 */
    case 1249:  /* vec_sel_widen_ssum_hiv4siv4hi3 */
    case 1248:  /* vec_sel_widen_ssum_hiv4siv8qi3 */
    case 1247:  /* vec_sel_widen_ssum_hiv8hiv2si3 */
    case 1246:  /* vec_sel_widen_ssum_hiv8hiv4hi3 */
    case 1245:  /* vec_sel_widen_ssum_hiv8hiv8qi3 */
    case 1244:  /* vec_sel_widen_ssum_hiv16qiv2si3 */
    case 1243:  /* vec_sel_widen_ssum_hiv16qiv4hi3 */
    case 1242:  /* vec_sel_widen_ssum_hiv16qiv8qi3 */
    case 1241:  /* vec_sel_widen_ssum_lov4siv2si3 */
    case 1240:  /* vec_sel_widen_ssum_lov4siv4hi3 */
    case 1239:  /* vec_sel_widen_ssum_lov4siv8qi3 */
    case 1238:  /* vec_sel_widen_ssum_lov8hiv2si3 */
    case 1237:  /* vec_sel_widen_ssum_lov8hiv4hi3 */
    case 1236:  /* vec_sel_widen_ssum_lov8hiv8qi3 */
    case 1235:  /* vec_sel_widen_ssum_lov16qiv2si3 */
    case 1234:  /* vec_sel_widen_ssum_lov16qiv4hi3 */
    case 1233:  /* vec_sel_widen_ssum_lov16qiv8qi3 */
    case 1223:  /* ashlv2di3_unsigned */
    case 1222:  /* ashlv4si3_unsigned */
    case 1220:  /* ashlv8hi3_unsigned */
    case 1218:  /* ashlv16qi3_unsigned */
    case 1216:  /* ashlv2di3_signed */
    case 1215:  /* ashlv4si3_signed */
    case 1213:  /* ashlv8hi3_signed */
    case 1211:  /* ashlv16qi3_signed */
    case 1209:  /* vlshrv4si3_imm */
    case 1207:  /* vlshrv8hi3_imm */
    case 1205:  /* vlshrv16qi3_imm */
    case 1203:  /* vashrv4si3_imm */
    case 1201:  /* vashrv8hi3_imm */
    case 1199:  /* vashrv16qi3_imm */
    case 1197:  /* vashlv4si3 */
    case 1195:  /* vashlv8hi3 */
    case 1193:  /* vashlv16qi3 */
    case 1191:  /* *smaxv4sf3_neon */
    case 1189:  /* *smaxv4si3_neon */
    case 1187:  /* *smaxv8hi3_neon */
    case 1185:  /* *smaxv16qi3_neon */
    case 1183:  /* *sminv4sf3_neon */
    case 1181:  /* *sminv4si3_neon */
    case 1179:  /* *sminv8hi3_neon */
    case 1177:  /* *sminv16qi3_neon */
    case 1175:  /* *umaxv4si3_neon */
    case 1173:  /* *umaxv8hi3_neon */
    case 1171:  /* *umaxv16qi3_neon */
    case 1169:  /* *uminv4si3_neon */
    case 1167:  /* *uminv8hi3_neon */
    case 1165:  /* *uminv16qi3_neon */
    case 1162:  /* neon_vrsqrtev8hf */
    case 1155:  /* neon_vrndxv8hf */
    case 1154:  /* neon_vrndpv8hf */
    case 1153:  /* neon_vrndnv8hf */
    case 1152:  /* neon_vrndmv8hf */
    case 1151:  /* neon_vrndav8hf */
    case 1150:  /* neon_vrndv8hf */
    case 1147:  /* negv8hf2 */
    case 1146:  /* absv8hf2 */
    case 1144:  /* negv4sf2 */
    case 1142:  /* negv4si2 */
    case 1140:  /* negv8hi2 */
    case 1138:  /* negv16qi2 */
    case 1136:  /* absv4sf2 */
    case 1134:  /* absv4si2 */
    case 1132:  /* absv8hi2 */
    case 1130:  /* absv16qi2 */
    case 1128:  /* one_cmplv2di2 */
    case 1127:  /* one_cmplv4sf2 */
    case 1125:  /* one_cmplv8hf2 */
    case 1123:  /* one_cmplv4si2 */
    case 1121:  /* one_cmplv8hi2 */
    case 1119:  /* one_cmplv16qi2 */
    case 1117:  /* xorv2di3 */
    case 1116:  /* xorv4sf3 */
    case 1114:  /* xorv8hf3 */
    case 1112:  /* xorv4si3 */
    case 1110:  /* xorv8hi3 */
    case 1108:  /* xorv16qi3 */
    case 1105:  /* bicv2di3_neon */
    case 1104:  /* bicv4sf3_neon */
    case 1102:  /* bicv8hf3_neon */
    case 1100:  /* bicv4si3_neon */
    case 1098:  /* bicv8hi3_neon */
    case 1096:  /* bicv16qi3_neon */
    case 1093:  /* ornv2di3_neon */
    case 1092:  /* ornv4sf3_neon */
    case 1090:  /* ornv8hf3_neon */
    case 1088:  /* ornv4si3_neon */
    case 1086:  /* ornv8hi3_neon */
    case 1084:  /* ornv16qi3_neon */
    case 1082:  /* andv2di3 */
    case 1081:  /* andv4sf3 */
    case 1079:  /* andv8hf3 */
    case 1077:  /* andv4si3 */
    case 1075:  /* andv8hi3 */
    case 1073:  /* andv16qi3 */
    case 1071:  /* iorv2di3 */
    case 1070:  /* iorv4sf3 */
    case 1068:  /* iorv8hf3 */
    case 1066:  /* iorv4si3 */
    case 1064:  /* iorv8hi3 */
    case 1062:  /* iorv16qi3 */
    case 1060:  /* neon_vcvtauv4sfv4si */
    case 1059:  /* neon_vcvtmuv4sfv4si */
    case 1058:  /* neon_vcvtpuv4sfv4si */
    case 1057:  /* neon_vcvtav4sfv4si */
    case 1056:  /* neon_vcvtmv4sfv4si */
    case 1055:  /* neon_vcvtpv4sfv4si */
    case 1048:  /* neon_vrintnv4sf */
    case 1047:  /* neon_vrintav4sf */
    case 1046:  /* neon_vrintxv4sf */
    case 1045:  /* neon_vrintmv4sf */
    case 1044:  /* neon_vrintzv4sf */
    case 1043:  /* neon_vrintpv4sf */
    case 996:  /* subv8hf3_fp16 */
    case 995:  /* *subv2di3_neon */
    case 994:  /* *subv4sf3_neon */
    case 992:  /* *subv8hf3_neon */
    case 990:  /* *subv4si3_neon */
    case 988:  /* *subv8hi3_neon */
    case 986:  /* *subv16qi3_neon */
    case 982:  /* addv8hf3_fp16 */
    case 981:  /* *addv2di3_neon */
    case 980:  /* *addv4sf3_neon */
    case 978:  /* *addv8hf3_neon */
    case 976:  /* *addv4si3_neon */
    case 974:  /* *addv8hi3_neon */
    case 972:  /* *addv16qi3_neon */
      return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_ALU_Q;

    case 2544:  /* neon_vabdv2sf_3 */
    case 2542:  /* neon_vabdv4hf_3 */
    case 2540:  /* neon_vabdv2si_3 */
    case 2538:  /* neon_vabdv4hi_3 */
    case 2536:  /* neon_vabdv8qi_3 */
    case 2533:  /* neon_vabdv2sf_2 */
    case 2531:  /* neon_vabdv4hf_2 */
    case 2529:  /* neon_vabdv2si_2 */
    case 2527:  /* neon_vabdv4hi_2 */
    case 2525:  /* neon_vabdv8qi_2 */
    case 2512:  /* neon_unpacku_v2si */
    case 2511:  /* neon_unpacks_v2si */
    case 2510:  /* neon_unpacku_v4hi */
    case 2509:  /* neon_unpacks_v4hi */
    case 2508:  /* neon_unpacku_v8qi */
    case 2507:  /* neon_unpacks_v8qi */
    case 2259:  /* *neon_vuzpv4hf_insn */
    case 2256:  /* *neon_vuzpv2sf_insn */
    case 2254:  /* *neon_vuzpv2si_insn */
    case 2252:  /* *neon_vuzpv4hi_insn */
    case 2250:  /* *neon_vuzpv8qi_insn */
    case 2249:  /* *neon_vzipv4hf_insn */
    case 2246:  /* *neon_vzipv2sf_insn */
    case 2244:  /* *neon_vzipv2si_insn */
    case 2242:  /* *neon_vzipv4hi_insn */
    case 2240:  /* *neon_vzipv8qi_insn */
    case 2239:  /* *neon_vtrnv4hf_insn */
    case 2236:  /* *neon_vtrnv2sf_insn */
    case 2234:  /* *neon_vtrnv2si_insn */
    case 2232:  /* *neon_vtrnv4hi_insn */
    case 2230:  /* *neon_vtrnv8qi_insn */
    case 2229:  /* neon_vtbx4v8qi */
    case 2228:  /* neon_vtbx3v8qi */
    case 2227:  /* neon_vtbx2v8qi */
    case 2226:  /* neon_vtbx1v8qi */
    case 2222:  /* neon_vtbl4v8qi */
    case 2221:  /* neon_vtbl3v8qi */
    case 2220:  /* neon_vtbl2v8qi */
    case 2219:  /* neon_vtbl1v8qi */
    case 2217:  /* neon_vsli_ndi */
    case 2215:  /* neon_vsli_nv2si */
    case 2213:  /* neon_vsli_nv4hi */
    case 2211:  /* neon_vsli_nv8qi */
    case 2209:  /* neon_vsri_ndi */
    case 2207:  /* neon_vsri_nv2si */
    case 2205:  /* neon_vsri_nv4hi */
    case 2203:  /* neon_vsri_nv8qi */
    case 2198:  /* neon_vrsrau_ndi */
    case 2197:  /* neon_vrsras_ndi */
    case 2196:  /* neon_vsrau_ndi */
    case 2195:  /* neon_vsras_ndi */
    case 2190:  /* neon_vrsrau_nv2si */
    case 2189:  /* neon_vrsras_nv2si */
    case 2188:  /* neon_vsrau_nv2si */
    case 2187:  /* neon_vsras_nv2si */
    case 2182:  /* neon_vrsrau_nv4hi */
    case 2181:  /* neon_vrsras_nv4hi */
    case 2180:  /* neon_vsrau_nv4hi */
    case 2179:  /* neon_vsras_nv4hi */
    case 2174:  /* neon_vrsrau_nv8qi */
    case 2173:  /* neon_vrsras_nv8qi */
    case 2172:  /* neon_vsrau_nv8qi */
    case 2171:  /* neon_vsras_nv8qi */
    case 2163:  /* neon_vqshlu_ndi */
    case 2161:  /* neon_vqshlu_nv2si */
    case 2159:  /* neon_vqshlu_nv4hi */
    case 2157:  /* neon_vqshlu_nv8qi */
    case 2154:  /* neon_vqshl_u_ndi */
    case 2153:  /* neon_vqshl_s_ndi */
    case 2150:  /* neon_vqshl_u_nv2si */
    case 2149:  /* neon_vqshl_s_nv2si */
    case 2146:  /* neon_vqshl_u_nv4hi */
    case 2145:  /* neon_vqshl_s_nv4hi */
    case 2142:  /* neon_vqshl_u_nv8qi */
    case 2141:  /* neon_vqshl_s_nv8qi */
    case 2139:  /* neon_vshl_ndi */
    case 2137:  /* neon_vshl_nv2si */
    case 2135:  /* neon_vshl_nv4hi */
    case 2133:  /* neon_vshl_nv8qi */
    case 2104:  /* neon_vrshru_ndi */
    case 2103:  /* neon_vrshrs_ndi */
    case 2102:  /* neon_vshru_ndi */
    case 2101:  /* neon_vshrs_ndi */
    case 2096:  /* neon_vrshru_nv2si */
    case 2095:  /* neon_vrshrs_nv2si */
    case 2094:  /* neon_vshru_nv2si */
    case 2093:  /* neon_vshrs_nv2si */
    case 2088:  /* neon_vrshru_nv4hi */
    case 2087:  /* neon_vrshrs_nv4hi */
    case 2086:  /* neon_vshru_nv4hi */
    case 2085:  /* neon_vshrs_nv4hi */
    case 2080:  /* neon_vrshru_nv8qi */
    case 2079:  /* neon_vrshrs_nv8qi */
    case 2078:  /* neon_vshru_nv8qi */
    case 2077:  /* neon_vshrs_nv8qi */
    case 2072:  /* neon_vqrshludi */
    case 2071:  /* neon_vqrshlsdi */
    case 2070:  /* neon_vqshludi */
    case 2069:  /* neon_vqshlsdi */
    case 2064:  /* neon_vqrshluv2si */
    case 2063:  /* neon_vqrshlsv2si */
    case 2062:  /* neon_vqshluv2si */
    case 2061:  /* neon_vqshlsv2si */
    case 2056:  /* neon_vqrshluv4hi */
    case 2055:  /* neon_vqrshlsv4hi */
    case 2054:  /* neon_vqshluv4hi */
    case 2053:  /* neon_vqshlsv4hi */
    case 2048:  /* neon_vqrshluv8qi */
    case 2047:  /* neon_vqrshlsv8qi */
    case 2046:  /* neon_vqshluv8qi */
    case 2045:  /* neon_vqshlsv8qi */
    case 2040:  /* neon_vrshludi */
    case 2039:  /* neon_vrshlsdi */
    case 2038:  /* neon_vshludi */
    case 2037:  /* neon_vshlsdi */
    case 2032:  /* neon_vrshluv2si */
    case 2031:  /* neon_vrshlsv2si */
    case 2030:  /* neon_vshluv2si */
    case 2029:  /* neon_vshlsv2si */
    case 2024:  /* neon_vrshluv4hi */
    case 2023:  /* neon_vrshlsv4hi */
    case 2022:  /* neon_vshluv4hi */
    case 2021:  /* neon_vshlsv4hi */
    case 2016:  /* neon_vrshluv8qi */
    case 2015:  /* neon_vrshlsv8qi */
    case 2014:  /* neon_vshluv8qi */
    case 2013:  /* neon_vshlsv8qi */
    case 2011:  /* neon_vbsldi_internal */
    case 2009:  /* neon_vbslv2sf_internal */
    case 2007:  /* neon_vbslv4hf_internal */
    case 2005:  /* neon_vbslv2si_internal */
    case 2003:  /* neon_vbslv4hi_internal */
    case 2001:  /* neon_vbslv8qi_internal */
    case 1999:  /* neon_vrev16v8qi */
    case 1996:  /* neon_vrev32v4hi */
    case 1995:  /* neon_vrev32v8qi */
    case 1992:  /* neon_vrev64v2sf */
    case 1990:  /* neon_vrev64v4hf */
    case 1988:  /* neon_vrev64v2si */
    case 1986:  /* neon_vrev64v4hi */
    case 1984:  /* neon_vrev64v8qi */
    case 1982:  /* neon_vextdi */
    case 1980:  /* neon_vextv2sf */
    case 1978:  /* neon_vextv4hf */
    case 1976:  /* neon_vextv2si */
    case 1974:  /* neon_vextv4hi */
    case 1972:  /* neon_vextv8qi */
    case 1899:  /* neon_vcvtpuv4hf */
    case 1898:  /* neon_vcvtpsv4hf */
    case 1897:  /* neon_vcvtnuv4hf */
    case 1896:  /* neon_vcvtnsv4hf */
    case 1895:  /* neon_vcvtmuv4hf */
    case 1894:  /* neon_vcvtmsv4hf */
    case 1893:  /* neon_vcvtauv4hf */
    case 1892:  /* neon_vcvtasv4hf */
    case 1881:  /* neon_vcvtu_nv4hi */
    case 1880:  /* neon_vcvts_nv4hi */
    case 1877:  /* neon_vcvtu_nv2si */
    case 1876:  /* neon_vcvts_nv2si */
    case 1875:  /* neon_vcvtu_nv4hf */
    case 1874:  /* neon_vcvts_nv4hf */
    case 1869:  /* neon_vcvtu_nv2sf */
    case 1868:  /* neon_vcvts_nv2sf */
    case 1867:  /* neon_vcvtuv4hf */
    case 1866:  /* neon_vcvtsv4hf */
    case 1861:  /* neon_vcvtuv4hi */
    case 1860:  /* neon_vcvtsv4hi */
    case 1858:  /* neon_vcvtv4sfv4hf */
    case 1855:  /* neon_vcvtuv2si */
    case 1854:  /* neon_vcvtsv2si */
    case 1851:  /* neon_vcvtuv2sf */
    case 1850:  /* neon_vcvtsv2sf */
    case 1848:  /* fixuns_truncv2sfv2si2 */
    case 1846:  /* fix_truncv2sfv2si2 */
    case 1844:  /* floatunsv2siv2sf2 */
    case 1842:  /* floatv2siv2sf2 */
    case 1834:  /* *neon_vswpdi */
    case 1832:  /* *neon_vswpv2sf */
    case 1830:  /* *neon_vswpv4hf */
    case 1828:  /* *neon_vswpv2si */
    case 1826:  /* *neon_vswpv4hi */
    case 1824:  /* *neon_vswpv8qi */
    case 1823:  /* neon_vdup_lanev4hf_internal */
    case 1820:  /* neon_vdup_lanev2sf_internal */
    case 1818:  /* neon_vdup_lanev2si_internal */
    case 1816:  /* neon_vdup_lanev4hi_internal */
    case 1814:  /* neon_vdup_lanev8qi_internal */
    case 1782:  /* neon_vrsqrtev2sf */
    case 1781:  /* neon_vrsqrtev2si */
    case 1778:  /* neon_vrecpev2sf */
    case 1777:  /* neon_vrecpev2si */
    case 1776:  /* neon_vrecpev4hf */
    case 1773:  /* popcountv8qi2 */
    case 1771:  /* clzv2si2 */
    case 1769:  /* clzv4hi2 */
    case 1767:  /* clzv8qi2 */
    case 1765:  /* neon_vclsv2si */
    case 1763:  /* neon_vclsv4hi */
    case 1761:  /* neon_vclsv8qi */
    case 1759:  /* neon_vqnegv2si */
    case 1757:  /* neon_vqnegv4hi */
    case 1755:  /* neon_vqnegv8qi */
    case 1752:  /* neon_bswapv2si */
    case 1750:  /* neon_bswapv4hi */
    case 1748:  /* neon_vqabsv2si */
    case 1746:  /* neon_vqabsv4hi */
    case 1744:  /* neon_vqabsv8qi */
    case 1743:  /* neon_vrsqrtsv4hf */
    case 1740:  /* neon_vrsqrtsv2sf */
    case 1739:  /* neon_vrecpsv4hf */
    case 1736:  /* neon_vrecpsv2sf */
    case 1733:  /* neon_vpminfv2sf */
    case 1732:  /* neon_vpmaxfv2sf */
    case 1731:  /* neon_vpminuv2si */
    case 1730:  /* neon_vpminsv2si */
    case 1729:  /* neon_vpmaxuv2si */
    case 1728:  /* neon_vpmaxsv2si */
    case 1727:  /* neon_vpminuv4hi */
    case 1726:  /* neon_vpminsv4hi */
    case 1725:  /* neon_vpmaxuv4hi */
    case 1724:  /* neon_vpmaxsv4hi */
    case 1723:  /* neon_vpminuv8qi */
    case 1722:  /* neon_vpminsv8qi */
    case 1721:  /* neon_vpmaxuv8qi */
    case 1720:  /* neon_vpmaxsv8qi */
    case 1719:  /* neon_vpadaluv4si */
    case 1718:  /* neon_vpadalsv4si */
    case 1717:  /* neon_vpadaluv2si */
    case 1716:  /* neon_vpadalsv2si */
    case 1715:  /* neon_vpadaluv8hi */
    case 1714:  /* neon_vpadalsv8hi */
    case 1713:  /* neon_vpadaluv4hi */
    case 1712:  /* neon_vpadalsv4hi */
    case 1711:  /* neon_vpadaluv16qi */
    case 1710:  /* neon_vpadalsv16qi */
    case 1709:  /* neon_vpadaluv8qi */
    case 1708:  /* neon_vpadalsv8qi */
    case 1693:  /* fminv2sf3 */
    case 1692:  /* fmaxv2sf3 */
    case 1691:  /* neon_vminnmv4hf */
    case 1690:  /* neon_vmaxnmv4hf */
    case 1687:  /* neon_vpminfv4hf */
    case 1686:  /* neon_vpmaxfv4hf */
    case 1685:  /* neon_vminfv4hf */
    case 1684:  /* neon_vmaxfv4hf */
    case 1679:  /* neon_vminfv2sf */
    case 1678:  /* neon_vmaxfv2sf */
    case 1673:  /* neon_vminuv2si */
    case 1672:  /* neon_vminsv2si */
    case 1671:  /* neon_vmaxuv2si */
    case 1670:  /* neon_vmaxsv2si */
    case 1665:  /* neon_vminuv4hi */
    case 1664:  /* neon_vminsv4hi */
    case 1663:  /* neon_vmaxuv4hi */
    case 1662:  /* neon_vmaxsv4hi */
    case 1657:  /* neon_vminuv8qi */
    case 1656:  /* neon_vminsv8qi */
    case 1655:  /* neon_vmaxuv8qi */
    case 1654:  /* neon_vmaxsv8qi */
    case 1653:  /* neon_vabaluv2si */
    case 1652:  /* neon_vabalsv2si */
    case 1651:  /* neon_vabaluv4hi */
    case 1650:  /* neon_vabalsv4hi */
    case 1649:  /* neon_vabaluv8qi */
    case 1648:  /* neon_vabalsv8qi */
    case 1645:  /* neon_vabauv2si */
    case 1644:  /* neon_vabasv2si */
    case 1641:  /* neon_vabauv4hi */
    case 1640:  /* neon_vabasv4hi */
    case 1637:  /* neon_vabauv8qi */
    case 1636:  /* neon_vabasv8qi */
    case 1628:  /* neon_vabdfv2sf */
    case 1627:  /* neon_vabdv4hf */
    case 1623:  /* neon_vabduv2si */
    case 1622:  /* neon_vabdsv2si */
    case 1619:  /* neon_vabduv4hi */
    case 1618:  /* neon_vabdsv4hi */
    case 1615:  /* neon_vabduv8qi */
    case 1614:  /* neon_vabdsv8qi */
    case 1612:  /* neon_vtstv2si */
    case 1610:  /* neon_vtstv4hi */
    case 1608:  /* neon_vtstv8qi */
    case 1607:  /* neon_vcaltv4hf_fp16insn_unspec */
    case 1606:  /* neon_vcalev4hf_fp16insn_unspec */
    case 1605:  /* neon_vcagtv4hf_fp16insn_unspec */
    case 1604:  /* neon_vcagev4hf_fp16insn_unspec */
    case 1599:  /* neon_vcalev4hf_fp16insn */
    case 1598:  /* neon_vcaltv4hf_fp16insn */
    case 1597:  /* neon_vcagev4hf_fp16insn */
    case 1596:  /* neon_vcagtv4hf_fp16insn */
    case 1589:  /* neon_vcagtv2sf_insn_unspec */
    case 1588:  /* neon_vcagev2sf_insn_unspec */
    case 1585:  /* neon_vcagev2sf_insn */
    case 1584:  /* neon_vcagtv2sf_insn */
    case 1581:  /* neon_vcgeuv2si */
    case 1580:  /* neon_vcgtuv2si */
    case 1577:  /* neon_vcgeuv4hi */
    case 1576:  /* neon_vcgtuv4hi */
    case 1573:  /* neon_vcgeuv8qi */
    case 1572:  /* neon_vcgtuv8qi */
    case 1571:  /* neon_vclev4hf_fp16insn_unspec */
    case 1570:  /* neon_vcltv4hf_fp16insn_unspec */
    case 1569:  /* neon_vcgev4hf_fp16insn_unspec */
    case 1568:  /* neon_vcgtv4hf_fp16insn_unspec */
    case 1567:  /* neon_vceqv4hf_fp16insn_unspec */
    case 1546:  /* neon_vclev2sf_insn_unspec */
    case 1545:  /* neon_vcltv2sf_insn_unspec */
    case 1544:  /* neon_vcgev2sf_insn_unspec */
    case 1543:  /* neon_vcgtv2sf_insn_unspec */
    case 1542:  /* neon_vceqv2sf_insn_unspec */
    case 1493:  /* neon_vhsubuv2si */
    case 1492:  /* neon_vhsubsv2si */
    case 1489:  /* neon_vhsubuv4hi */
    case 1488:  /* neon_vhsubsv4hi */
    case 1485:  /* neon_vhsubuv8qi */
    case 1484:  /* neon_vhsubsv8qi */
    case 1481:  /* neon_vqsubudi */
    case 1480:  /* neon_vqsubsdi */
    case 1477:  /* neon_vqsubuv2si */
    case 1476:  /* neon_vqsubsv2si */
    case 1473:  /* neon_vqsubuv4hi */
    case 1472:  /* neon_vqsubsv4hi */
    case 1469:  /* neon_vqsubuv8qi */
    case 1468:  /* neon_vqsubsv8qi */
    case 1454:  /* neon_vsubv2sf_unspec */
    case 1380:  /* neon_vqaddudi */
    case 1379:  /* neon_vqaddsdi */
    case 1376:  /* neon_vqadduv2si */
    case 1375:  /* neon_vqaddsv2si */
    case 1372:  /* neon_vqadduv4hi */
    case 1371:  /* neon_vqaddsv4hi */
    case 1368:  /* neon_vqadduv8qi */
    case 1367:  /* neon_vqaddsv8qi */
    case 1329:  /* neon_vaddv2sf_unspec */
    case 1328:  /* *us_subv2sf_neon */
    case 1327:  /* *us_subv2si_neon */
    case 1326:  /* *us_subv4hi_neon */
    case 1325:  /* *us_subv8qi_neon */
    case 1324:  /* *ss_subv2sf_neon */
    case 1323:  /* *ss_subv2si_neon */
    case 1322:  /* *ss_subv4hi_neon */
    case 1321:  /* *ss_subv8qi_neon */
    case 1320:  /* *us_addv2sf_neon */
    case 1319:  /* *us_addv2si_neon */
    case 1318:  /* *us_addv4hi_neon */
    case 1317:  /* *us_addv8qi_neon */
    case 1316:  /* *ss_addv2sf_neon */
    case 1315:  /* *ss_addv2si_neon */
    case 1314:  /* *ss_addv4hi_neon */
    case 1313:  /* *ss_addv8qi_neon */
    case 1312:  /* neon_vpumaxv2si */
    case 1311:  /* neon_vpumaxv4hi */
    case 1310:  /* neon_vpumaxv8qi */
    case 1309:  /* neon_vpuminv2si */
    case 1308:  /* neon_vpuminv4hi */
    case 1307:  /* neon_vpuminv8qi */
    case 1306:  /* neon_vpsmaxv2sf */
    case 1305:  /* neon_vpsmaxv2si */
    case 1304:  /* neon_vpsmaxv4hi */
    case 1303:  /* neon_vpsmaxv8qi */
    case 1302:  /* neon_vpsminv2sf */
    case 1301:  /* neon_vpsminv2si */
    case 1300:  /* neon_vpsminv4hi */
    case 1299:  /* neon_vpsminv8qi */
    case 1298:  /* neon_vpaddv4hf */
    case 1297:  /* neon_vpadd_internalv2sf */
    case 1296:  /* neon_vpadd_internalv2si */
    case 1295:  /* neon_vpadd_internalv4hi */
    case 1294:  /* neon_vpadd_internalv8qi */
    case 1230:  /* lshrdi3_neon_imm_noclobber */
    case 1229:  /* ashrdi3_neon_imm_noclobber */
    case 1228:  /* unsigned_shift_di3_neon */
    case 1227:  /* signed_shift_di3_neon */
    case 1225:  /* ashldi3_neon_noclobber */
    case 1221:  /* ashlv2si3_unsigned */
    case 1219:  /* ashlv4hi3_unsigned */
    case 1217:  /* ashlv8qi3_unsigned */
    case 1214:  /* ashlv2si3_signed */
    case 1212:  /* ashlv4hi3_signed */
    case 1210:  /* ashlv8qi3_signed */
    case 1208:  /* vlshrv2si3_imm */
    case 1206:  /* vlshrv4hi3_imm */
    case 1204:  /* vlshrv8qi3_imm */
    case 1202:  /* vashrv2si3_imm */
    case 1200:  /* vashrv4hi3_imm */
    case 1198:  /* vashrv8qi3_imm */
    case 1196:  /* vashlv2si3 */
    case 1194:  /* vashlv4hi3 */
    case 1192:  /* vashlv8qi3 */
    case 1190:  /* *smaxv2sf3_neon */
    case 1188:  /* *smaxv2si3_neon */
    case 1186:  /* *smaxv4hi3_neon */
    case 1184:  /* *smaxv8qi3_neon */
    case 1182:  /* *sminv2sf3_neon */
    case 1180:  /* *sminv2si3_neon */
    case 1178:  /* *sminv4hi3_neon */
    case 1176:  /* *sminv8qi3_neon */
    case 1174:  /* *umaxv2si3_neon */
    case 1172:  /* *umaxv4hi3_neon */
    case 1170:  /* *umaxv8qi3_neon */
    case 1168:  /* *uminv2si3_neon */
    case 1166:  /* *uminv4hi3_neon */
    case 1164:  /* *uminv8qi3_neon */
    case 1163:  /* neon_vrsqrtev4hf */
    case 1161:  /* neon_vrndxv4hf */
    case 1160:  /* neon_vrndpv4hf */
    case 1159:  /* neon_vrndnv4hf */
    case 1158:  /* neon_vrndmv4hf */
    case 1157:  /* neon_vrndav4hf */
    case 1156:  /* neon_vrndv4hf */
    case 1149:  /* negv4hf2 */
    case 1148:  /* absv4hf2 */
    case 1143:  /* negv2sf2 */
    case 1141:  /* negv2si2 */
    case 1139:  /* negv4hi2 */
    case 1137:  /* negv8qi2 */
    case 1135:  /* absv2sf2 */
    case 1133:  /* absv2si2 */
    case 1131:  /* absv4hi2 */
    case 1129:  /* absv8qi2 */
    case 1126:  /* one_cmplv2sf2 */
    case 1124:  /* one_cmplv4hf2 */
    case 1122:  /* one_cmplv2si2 */
    case 1120:  /* one_cmplv4hi2 */
    case 1118:  /* one_cmplv8qi2 */
    case 1115:  /* xorv2sf3 */
    case 1113:  /* xorv4hf3 */
    case 1111:  /* xorv2si3 */
    case 1109:  /* xorv4hi3 */
    case 1107:  /* xorv8qi3 */
    case 1103:  /* bicv2sf3_neon */
    case 1101:  /* bicv4hf3_neon */
    case 1099:  /* bicv2si3_neon */
    case 1097:  /* bicv4hi3_neon */
    case 1095:  /* bicv8qi3_neon */
    case 1091:  /* ornv2sf3_neon */
    case 1089:  /* ornv4hf3_neon */
    case 1087:  /* ornv2si3_neon */
    case 1085:  /* ornv4hi3_neon */
    case 1083:  /* ornv8qi3_neon */
    case 1080:  /* andv2sf3 */
    case 1078:  /* andv4hf3 */
    case 1076:  /* andv2si3 */
    case 1074:  /* andv4hi3 */
    case 1072:  /* andv8qi3 */
    case 1069:  /* iorv2sf3 */
    case 1067:  /* iorv4hf3 */
    case 1065:  /* iorv2si3 */
    case 1063:  /* iorv4hi3 */
    case 1061:  /* iorv8qi3 */
    case 1054:  /* neon_vcvtauv2sfv2si */
    case 1053:  /* neon_vcvtmuv2sfv2si */
    case 1052:  /* neon_vcvtpuv2sfv2si */
    case 1051:  /* neon_vcvtav2sfv2si */
    case 1050:  /* neon_vcvtmv2sfv2si */
    case 1049:  /* neon_vcvtpv2sfv2si */
    case 1042:  /* neon_vrintnv2sf */
    case 1041:  /* neon_vrintav2sf */
    case 1040:  /* neon_vrintxv2sf */
    case 1039:  /* neon_vrintmv2sf */
    case 1038:  /* neon_vrintzv2sf */
    case 1037:  /* neon_vrintpv2sf */
    case 997:  /* subv4hf3_fp16 */
    case 993:  /* *subv2sf3_neon */
    case 991:  /* *subv4hf3_neon */
    case 989:  /* *subv2si3_neon */
    case 987:  /* *subv4hi3_neon */
    case 985:  /* *subv8qi3_neon */
    case 983:  /* addv4hf3_fp16 */
    case 979:  /* *addv2sf3_neon */
    case 977:  /* *addv4hf3_neon */
    case 975:  /* *addv2si3_neon */
    case 973:  /* *addv4hi3_neon */
    case 971:  /* *addv8qi3_neon */
    case 657:  /* neon_vrndihf */
    case 656:  /* neon_vrndxhf */
    case 655:  /* neon_vrndphf */
    case 654:  /* neon_vrndnhf */
    case 653:  /* neon_vrndmhf */
    case 652:  /* neon_vrndahf */
    case 651:  /* neon_vrndhf */
      return CORTEX_A53_ADVSIMD_TYPE_ADVSIMD_ALU;

    default:
      return CORTEX_A53_ADVSIMD_TYPE_UNKNOWN;

    }
}

enum attr_cortex_a17_neon_type
get_attr_cortex_a17_neon_type (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  enum attr_type cached_type ATTRIBUTE_UNUSED;

  switch (recog_memoized (insn))
    {
    case 2546:  /* neon_vabdv2di_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2545:  /* neon_vabdv4sf_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2544:  /* neon_vabdv2sf_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ABD;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH;
        }

    case 2543:  /* neon_vabdv8hf_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2542:  /* neon_vabdv4hf_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ABD;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH;
        }

    case 2541:  /* neon_vabdv4si_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2540:  /* neon_vabdv2si_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ABD;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH;
        }

    case 2539:  /* neon_vabdv8hi_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2538:  /* neon_vabdv4hi_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ABD;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH;
        }

    case 2537:  /* neon_vabdv16qi_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2536:  /* neon_vabdv8qi_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ABD;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH;
        }

    case 2535:  /* neon_vabdv2di_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2534:  /* neon_vabdv4sf_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2533:  /* neon_vabdv2sf_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ABD;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH;
        }

    case 2532:  /* neon_vabdv8hf_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2531:  /* neon_vabdv4hf_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ABD;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH;
        }

    case 2530:  /* neon_vabdv4si_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2529:  /* neon_vabdv2si_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ABD;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH;
        }

    case 2528:  /* neon_vabdv8hi_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2527:  /* neon_vabdv4hi_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ABD;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH;
        }

    case 2526:  /* neon_vabdv16qi_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2525:  /* neon_vabdv8qi_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ABD;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH;
        }

    case 2426:  /* neon_vld4di */
      if ((64) == (64))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_D;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_H;
        }

    case 2425:  /* neon_vld4v2sf */
    case 2424:  /* neon_vld4v2si */
      if ((32) == (64))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_D;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_H;
        }

    case 2423:  /* neon_vld4v4hf */
    case 2422:  /* neon_vld4v4hi */
      if ((16) == (64))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_D;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_H;
        }

    case 2421:  /* neon_vld4v8qi */
      if ((8) == (64))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_D;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_H;
        }

    case 2451:  /* neon_vld4_dupdi */
    case 2395:  /* neon_vld3_dupdi */
      if (! ((1) > (1)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_E;
        }

    case 2450:  /* neon_vld4_dupv2sf */
    case 2449:  /* neon_vld4_dupv2si */
    case 2394:  /* neon_vld3_dupv2sf */
    case 2393:  /* neon_vld3_dupv2si */
      if (! ((2) > (1)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_E;
        }

    case 2448:  /* neon_vld4_dupv4hf */
    case 2447:  /* neon_vld4_dupv4hi */
    case 2392:  /* neon_vld3_dupv4hf */
    case 2391:  /* neon_vld3_dupv4hi */
      if (! ((4) > (1)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_E;
        }

    case 2446:  /* neon_vld4_dupv8qi */
    case 2390:  /* neon_vld3_dupv8qi */
      if (! ((8) > (1)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_E;
        }

    case 2370:  /* neon_vld3di */
      if ((64) == (64))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_C;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_G;
        }

    case 2369:  /* neon_vld3v2sf */
    case 2368:  /* neon_vld3v2si */
      if ((32) == (64))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_C;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_G;
        }

    case 2367:  /* neon_vld3v4hf */
    case 2366:  /* neon_vld3v4hi */
      if ((16) == (64))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_C;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_G;
        }

    case 2365:  /* neon_vld3v8qi */
      if ((8) == (64))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_C;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_G;
        }

    case 2457:  /* neon_vst4di */
    case 2350:  /* neon_vst2di */
      if ((64) == (64))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_STORE_A;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_STORE_B;
        }

    case 2456:  /* neon_vst4v2sf */
    case 2455:  /* neon_vst4v2si */
    case 2349:  /* neon_vst2v2sf */
    case 2348:  /* neon_vst2v2si */
      if ((32) == (64))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_STORE_A;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_STORE_B;
        }

    case 2454:  /* neon_vst4v4hf */
    case 2453:  /* neon_vst4v4hi */
    case 2347:  /* neon_vst2v4hf */
    case 2346:  /* neon_vst2v4hi */
      if ((16) == (64))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_STORE_A;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_STORE_B;
        }

    case 2452:  /* neon_vst4v8qi */
    case 2345:  /* neon_vst2v8qi */
      if ((8) == (64))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_STORE_A;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_STORE_B;
        }

    case 2344:  /* neon_vld2_dupdi */
      if (! ((1) > (1)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_C;
        }

    case 2343:  /* neon_vld2_dupv2sf */
    case 2342:  /* neon_vld2_dupv2si */
      if (! ((2) > (1)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_C;
        }

    case 2341:  /* neon_vld2_dupv4hf */
    case 2340:  /* neon_vld2_dupv4hi */
      if (! ((4) > (1)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_C;
        }

    case 2339:  /* neon_vld2_dupv8qi */
      if (! ((8) > (1)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_C;
        }

    case 2324:  /* neon_vld2di */
      if ((64) == (64))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_B;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_D;
        }

    case 2323:  /* neon_vld2v2sf */
    case 2322:  /* neon_vld2v2si */
      if ((32) == (64))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_B;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_D;
        }

    case 2321:  /* neon_vld2v4hf */
    case 2320:  /* neon_vld2v4hi */
      if ((16) == (64))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_B;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_D;
        }

    case 2319:  /* neon_vld2v8qi */
      if ((8) == (64))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_B;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_D;
        }

    case 1812:  /* neon_vdup_nv4sf */
    case 1811:  /* neon_vdup_nv4si */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_BITOPS;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FROM_GP_Q;
        }

    case 1810:  /* neon_vdup_nv2sf */
    case 1809:  /* neon_vdup_nv2si */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_BITOPS;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FROM_GP;
        }

    case 1556:  /* neon_vcltv8hf_fp16insn */
    case 1555:  /* neon_vclev8hf_fp16insn */
    case 1554:  /* neon_vcgev8hf_fp16insn */
    case 1553:  /* neon_vcgtv8hf_fp16insn */
    case 1552:  /* neon_vceqv8hf_fp16insn */
    case 1541:  /* neon_vcltv4sf_insn */
    case 1540:  /* neon_vclev4sf_insn */
    case 1539:  /* neon_vcgev4sf_insn */
    case 1538:  /* neon_vcgtv4sf_insn */
    case 1537:  /* neon_vceqv4sf_insn */
    case 1531:  /* neon_vcltv4si_insn */
    case 1530:  /* neon_vclev4si_insn */
    case 1529:  /* neon_vcgev4si_insn */
    case 1528:  /* neon_vcgtv4si_insn */
    case 1527:  /* neon_vceqv4si_insn */
    case 1521:  /* neon_vcltv8hi_insn */
    case 1520:  /* neon_vclev8hi_insn */
    case 1519:  /* neon_vcgev8hi_insn */
    case 1518:  /* neon_vcgtv8hi_insn */
    case 1517:  /* neon_vceqv8hi_insn */
    case 1511:  /* neon_vcltv16qi_insn */
    case 1510:  /* neon_vclev16qi_insn */
    case 1509:  /* neon_vcgev16qi_insn */
    case 1508:  /* neon_vcgtv16qi_insn */
    case 1507:  /* neon_vceqv16qi_insn */
      if (((cached_type = get_attr_type (insn)) == TYPE_NEON_COMPARE_Q) || (cached_type == TYPE_NEON_COMPARE_ZERO_Q))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ARITH_COMPLEX;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_UNKNOWN;
        }

    case 1561:  /* neon_vcltv4hf_fp16insn */
    case 1560:  /* neon_vclev4hf_fp16insn */
    case 1559:  /* neon_vcgev4hf_fp16insn */
    case 1558:  /* neon_vcgtv4hf_fp16insn */
    case 1557:  /* neon_vceqv4hf_fp16insn */
    case 1536:  /* neon_vcltv2sf_insn */
    case 1535:  /* neon_vclev2sf_insn */
    case 1534:  /* neon_vcgev2sf_insn */
    case 1533:  /* neon_vcgtv2sf_insn */
    case 1532:  /* neon_vceqv2sf_insn */
    case 1526:  /* neon_vcltv2si_insn */
    case 1525:  /* neon_vclev2si_insn */
    case 1524:  /* neon_vcgev2si_insn */
    case 1523:  /* neon_vcgtv2si_insn */
    case 1522:  /* neon_vceqv2si_insn */
    case 1516:  /* neon_vcltv4hi_insn */
    case 1515:  /* neon_vclev4hi_insn */
    case 1514:  /* neon_vcgev4hi_insn */
    case 1513:  /* neon_vcgtv4hi_insn */
    case 1512:  /* neon_vceqv4hi_insn */
    case 1506:  /* neon_vcltv8qi_insn */
    case 1505:  /* neon_vclev8qi_insn */
    case 1504:  /* neon_vcgev8qi_insn */
    case 1503:  /* neon_vcgtv8qi_insn */
    case 1502:  /* neon_vceqv8qi_insn */
      if (((cached_type = get_attr_type (insn)) == TYPE_NEON_COMPARE) || (cached_type == TYPE_NEON_COMPARE_ZERO))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ARITH_COMPLEX;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_UNKNOWN;
        }

    case 1225:  /* ashldi3_neon_noclobber */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_SHIFT_IMM_BASIC;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_SHIFT_REG_BASIC;
        }

    case 1224:  /* neon_load_count */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FROM_GP;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_A;
        }

    case 1197:  /* vashlv4si3 */
    case 1195:  /* vashlv8hi3 */
    case 1193:  /* vashlv16qi3 */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_SHIFT_IMM_BASIC;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_SHIFT_REG_BASIC_Q;
        }

    case 1196:  /* vashlv2si3 */
    case 1194:  /* vashlv4hi3 */
    case 1192:  /* vashlv8qi3 */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_SHIFT_IMM_BASIC;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_SHIFT_REG_BASIC;
        }

    case 1306:  /* neon_vpsmaxv2sf */
    case 1302:  /* neon_vpsminv2sf */
    case 1191:  /* *smaxv4sf3_neon */
    case 1190:  /* *smaxv2sf3_neon */
    case 1183:  /* *sminv4sf3_neon */
    case 1182:  /* *sminv2sf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ARITH_COMPLEX;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH;
        }

    case 1305:  /* neon_vpsmaxv2si */
    case 1304:  /* neon_vpsmaxv4hi */
    case 1303:  /* neon_vpsmaxv8qi */
    case 1301:  /* neon_vpsminv2si */
    case 1300:  /* neon_vpsminv4hi */
    case 1299:  /* neon_vpsminv8qi */
    case 1189:  /* *smaxv4si3_neon */
    case 1188:  /* *smaxv2si3_neon */
    case 1187:  /* *smaxv8hi3_neon */
    case 1186:  /* *smaxv4hi3_neon */
    case 1185:  /* *smaxv16qi3_neon */
    case 1184:  /* *smaxv8qi3_neon */
    case 1181:  /* *sminv4si3_neon */
    case 1180:  /* *sminv2si3_neon */
    case 1179:  /* *sminv8hi3_neon */
    case 1178:  /* *sminv4hi3_neon */
    case 1177:  /* *sminv16qi3_neon */
    case 1176:  /* *sminv8qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ARITH_COMPLEX;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH;
        }

    case 1144:  /* negv4sf2 */
    case 1143:  /* negv2sf2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_NEGABS;
        }

    case 1142:  /* negv4si2 */
    case 1141:  /* negv2si2 */
    case 1140:  /* negv8hi2 */
    case 1139:  /* negv4hi2 */
    case 1138:  /* negv16qi2 */
    case 1137:  /* negv8qi2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_NEGABS;
        }

    case 1136:  /* absv4sf2 */
    case 1135:  /* absv2sf2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ARITH_COMPLEX;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_NEGABS;
        }

    case 1134:  /* absv4si2 */
    case 1133:  /* absv2si2 */
    case 1132:  /* absv8hi2 */
    case 1131:  /* absv4hi2 */
    case 1130:  /* absv16qi2 */
    case 1129:  /* absv8qi2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ARITH_COMPLEX;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_NEGABS;
        }

    case 1106:  /* bicdi3_neon */
    case 1094:  /* orndi3_neon */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_UNKNOWN;
        }

    case 1965:  /* neon_vmls_lanev4sf */
    case 1953:  /* neon_vmla_lanev4sf */
    case 1416:  /* neon_vmlsv4sf_unspec */
    case 1402:  /* neon_vmlav4sf_unspec */
    case 1024:  /* mulv4sf3negv4sfaddv4sf_neon */
    case 1014:  /* mulv4sf3addv4sf_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_MLA_Q;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_MLA_Q;
        }

    case 1962:  /* neon_vmls_lanev2sf */
    case 1950:  /* neon_vmla_lanev2sf */
    case 1415:  /* neon_vmlsv2sf_unspec */
    case 1401:  /* neon_vmlav2sf_unspec */
    case 1023:  /* mulv2sf3negv2sfaddv2sf_neon */
    case 1013:  /* mulv2sf3addv2sf_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_MLA;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_MLA;
        }

    case 1964:  /* neon_vmls_lanev4si */
    case 1963:  /* neon_vmls_lanev8hi */
    case 1952:  /* neon_vmla_lanev4si */
    case 1951:  /* neon_vmla_lanev8hi */
    case 1414:  /* neon_vmlsv4si_unspec */
    case 1412:  /* neon_vmlsv8hi_unspec */
    case 1410:  /* neon_vmlsv16qi_unspec */
    case 1400:  /* neon_vmlav4si_unspec */
    case 1398:  /* neon_vmlav8hi_unspec */
    case 1396:  /* neon_vmlav16qi_unspec */
    case 1022:  /* mulv4si3negv4siaddv4si_neon */
    case 1020:  /* mulv8hi3negv8hiaddv8hi_neon */
    case 1018:  /* mulv16qi3negv16qiaddv16qi_neon */
    case 1012:  /* mulv4si3addv4si_neon */
    case 1010:  /* mulv8hi3addv8hi_neon */
    case 1008:  /* mulv16qi3addv16qi_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_MLA_Q;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_MLA_Q;
        }

    case 1961:  /* neon_vmls_lanev2si */
    case 1960:  /* neon_vmls_lanev4hi */
    case 1949:  /* neon_vmla_lanev2si */
    case 1948:  /* neon_vmla_lanev4hi */
    case 1413:  /* neon_vmlsv2si_unspec */
    case 1411:  /* neon_vmlsv4hi_unspec */
    case 1409:  /* neon_vmlsv8qi_unspec */
    case 1399:  /* neon_vmlav2si_unspec */
    case 1397:  /* neon_vmlav4hi_unspec */
    case 1395:  /* neon_vmlav8qi_unspec */
    case 1021:  /* mulv2si3negv2siaddv2si_neon */
    case 1019:  /* mulv4hi3negv4hiaddv4hi_neon */
    case 1017:  /* mulv8qi3negv8qiaddv8qi_neon */
    case 1011:  /* mulv2si3addv2si_neon */
    case 1009:  /* mulv4hi3addv4hi_neon */
    case 1007:  /* mulv8qi3addv8qi_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_MLA;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_MLA;
        }

    case 1923:  /* neon_vmul_lanev4sf */
    case 1392:  /* neon_vmulfv4sf */
    case 1006:  /* *mulv4sf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_MULTIPLY_Q;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_MUL_Q;
        }

    case 1920:  /* neon_vmul_lanev2sf */
    case 1391:  /* neon_vmulfv2sf */
    case 1005:  /* *mulv2sf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_MULTIPLY;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_MUL;
        }

    case 1922:  /* neon_vmul_lanev4si */
    case 1921:  /* neon_vmul_lanev8hi */
    case 1390:  /* neon_vmulpv16qi */
    case 1004:  /* *mulv4si3_neon */
    case 1002:  /* *mulv8hi3_neon */
    case 1000:  /* *mulv16qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_MULTIPLY_Q;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_MUL_Q;
        }

    case 1919:  /* neon_vmul_lanev2si */
    case 1918:  /* neon_vmul_lanev4hi */
    case 1389:  /* neon_vmulpv8qi */
    case 1003:  /* *mulv2si3_neon */
    case 1001:  /* *mulv4hi3_neon */
    case 999:  /* *mulv8qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_MULTIPLY;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_MUL;
        }

    case 998:  /* subdi3_neon */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0xe))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_UNKNOWN;
        }

    case 984:  /* adddi3_neon */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x9))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_UNKNOWN;
        }

    case 1455:  /* neon_vsubv4sf_unspec */
    case 1330:  /* neon_vaddv4sf_unspec */
    case 994:  /* *subv4sf3_neon */
    case 992:  /* *subv8hf3_neon */
    case 982:  /* addv8hf3_fp16 */
    case 980:  /* *addv4sf3_neon */
    case 978:  /* *addv8hf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 1454:  /* neon_vsubv2sf_unspec */
    case 1329:  /* neon_vaddv2sf_unspec */
    case 1297:  /* neon_vpadd_internalv2sf */
    case 993:  /* *subv2sf3_neon */
    case 991:  /* *subv4hf3_neon */
    case 983:  /* addv4hf3_fp16 */
    case 979:  /* *addv2sf3_neon */
    case 977:  /* *addv4hf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH;
        }

    case 995:  /* *subv2di3_neon */
    case 990:  /* *subv4si3_neon */
    case 988:  /* *subv8hi3_neon */
    case 986:  /* *subv16qi3_neon */
    case 981:  /* *addv2di3_neon */
    case 976:  /* *addv4si3_neon */
    case 974:  /* *addv8hi3_neon */
    case 972:  /* *addv16qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 1296:  /* neon_vpadd_internalv2si */
    case 1295:  /* neon_vpadd_internalv4hi */
    case 1294:  /* neon_vpadd_internalv8qi */
    case 989:  /* *subv2si3_neon */
    case 987:  /* *subv4hi3_neon */
    case 985:  /* *subv8qi3_neon */
    case 975:  /* *addv2si3_neon */
    case 973:  /* *addv4hi3_neon */
    case 971:  /* *addv8qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH;
        }

    case 970:  /* vec_extractv2di */
    case 969:  /* vec_extractv4sf */
    case 968:  /* vec_extractv4si */
    case 967:  /* vec_extractv8hf */
    case 966:  /* vec_extractv8hi */
    case 965:  /* vec_extractv16qi */
    case 964:  /* vec_extractv2sf */
    case 963:  /* vec_extractv2si */
    case 962:  /* vec_extractv4hf */
    case 961:  /* vec_extractv4hi */
    case 960:  /* vec_extractv8qi */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_TO_GP;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_STORE_A;
        }

    case 959:  /* vec_setv2di_internal */
    case 958:  /* vec_setv4sf_internal */
    case 957:  /* vec_setv4si_internal */
    case 956:  /* vec_setv8hf_internal */
    case 955:  /* vec_setv8hi_internal */
    case 954:  /* vec_setv16qi_internal */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FROM_GP_Q;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_C;
        }

    case 953:  /* vec_setv2sf_internal */
    case 952:  /* vec_setv2si_internal */
    case 951:  /* vec_setv4hf_internal */
    case 950:  /* vec_setv4hi_internal */
    case 949:  /* vec_setv8qi_internal */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FROM_GP;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_C;
        }

    case 924:  /* *neon_movxi */
    case 923:  /* *neon_movci */
    case 922:  /* *neon_movoi */
    case 921:  /* *neon_movei */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_BITOPS;
        }
      else if (!((1 << which_alternative) & 0x3))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_D;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_NEON_STORE_A;
        }

    case 920:  /* *neon_movti */
    case 919:  /* *neon_movv2di */
    case 918:  /* *neon_movv4sf */
    case 917:  /* *neon_movv4si */
    case 916:  /* *neon_movv8hf */
    case 915:  /* *neon_movv8hi */
    case 914:  /* *neon_movv16qi */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x5))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_BITOPS;
        }
      else if (which_alternative == 5)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FROM_GP_Q;
        }
      else if (which_alternative == 4)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_TO_GP;
        }
      else if (((1 << which_alternative) & 0x88))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_D;
        }
      else if (!((1 << which_alternative) & 0xfd))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_STORE_A;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_UNKNOWN;
        }

    case 913:  /* *neon_movdi */
    case 912:  /* *neon_movv2sf */
    case 911:  /* *neon_movv2si */
    case 910:  /* *neon_movv4hf */
    case 909:  /* *neon_movv4hi */
    case 908:  /* *neon_movv8qi */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x5))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_BITOPS;
        }
      else if (which_alternative == 5)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FROM_GP;
        }
      else if (which_alternative == 4)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_TO_GP;
        }
      else if (which_alternative == 3)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_A;
        }
      else if (which_alternative == 7)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_B;
        }
      else if (!((1 << which_alternative) & 0xfd))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_STORE_A;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_UNKNOWN;
        }

    case 4014:  /* *p *movdf_vfp */
    case 640:  /* *thumb2_movdf_vfp */
    case 639:  /* *movdf_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 3)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_BITOPS;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_UNKNOWN;
        }

    case 635:  /* *movhf_vfp_neon */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_A;
        }
      else if (which_alternative == 1)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_STORE_A;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_UNKNOWN;
        }

    case 4011:  /* *p *movhf_vfp_fp16 */
    case 634:  /* *movhf_vfp_fp16 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 7)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_A;
        }
      else if (which_alternative == 8)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_STORE_A;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_UNKNOWN;
        }

    case 3670:  /* *p one_cmpldi2 */
    case 156:  /* one_cmpldi2 */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0x6))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_BITOPS;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_UNKNOWN;
        }

    case 108:  /* *xordi3_insn */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0x1e))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_UNKNOWN;
        }

    case 102:  /* *iordi3_insn */
    case 79:  /* *anddi3_insn */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0x3c))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_UNKNOWN;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
      if (((cached_type = get_attr_type (insn)) == TYPE_NEON_ABD) || (cached_type == TYPE_NEON_ABD_LONG))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ABD;
        }
      else if (cached_type == TYPE_NEON_ABD_Q)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ABD_Q;
        }
      else if ((cached_type == TYPE_NEON_ARITH_ACC) || ((cached_type == TYPE_NEON_REDUC_ADD_ACC) || (cached_type == TYPE_NEON_REDUC_ADD_ACC_Q)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ARITH_ACC;
        }
      else if (cached_type == TYPE_NEON_ARITH_ACC_Q)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ARITH_ACC_Q;
        }
      else if ((cached_type == TYPE_NEON_ADD) || ((cached_type == TYPE_NEON_ADD_Q) || ((cached_type == TYPE_NEON_ADD_LONG) || ((cached_type == TYPE_NEON_ADD_WIDEN) || ((cached_type == TYPE_NEON_NEG) || ((cached_type == TYPE_NEON_NEG_Q) || ((cached_type == TYPE_NEON_REDUC_ADD) || ((cached_type == TYPE_NEON_REDUC_ADD_Q) || ((cached_type == TYPE_NEON_REDUC_ADD_LONG) || ((cached_type == TYPE_NEON_SUB) || ((cached_type == TYPE_NEON_SUB_Q) || ((cached_type == TYPE_NEON_SUB_LONG) || ((cached_type == TYPE_NEON_SUB_WIDEN) || ((cached_type == TYPE_NEON_LOGIC) || ((cached_type == TYPE_NEON_LOGIC_Q) || ((cached_type == TYPE_NEON_TST) || (cached_type == TYPE_NEON_TST_Q)))))))))))))))))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else if ((cached_type == TYPE_NEON_ABS) || ((cached_type == TYPE_NEON_ABS_Q) || ((cached_type == TYPE_NEON_ADD_HALVE_NARROW_Q) || ((cached_type == TYPE_NEON_ADD_HALVE) || ((cached_type == TYPE_NEON_ADD_HALVE_Q) || ((cached_type == TYPE_NEON_SUB_HALVE) || ((cached_type == TYPE_NEON_SUB_HALVE_Q) || ((cached_type == TYPE_NEON_QABS) || ((cached_type == TYPE_NEON_QABS_Q) || ((cached_type == TYPE_NEON_QADD) || ((cached_type == TYPE_NEON_QADD_Q) || ((cached_type == TYPE_NEON_QNEG) || ((cached_type == TYPE_NEON_QNEG_Q) || ((cached_type == TYPE_NEON_QSUB) || ((cached_type == TYPE_NEON_QSUB_Q) || ((cached_type == TYPE_NEON_SUB_HALVE_NARROW_Q) || ((cached_type == TYPE_NEON_COMPARE) || ((cached_type == TYPE_NEON_COMPARE_Q) || ((cached_type == TYPE_NEON_COMPARE_ZERO) || ((cached_type == TYPE_NEON_COMPARE_ZERO_Q) || ((cached_type == TYPE_NEON_MINMAX) || ((cached_type == TYPE_NEON_MINMAX_Q) || ((cached_type == TYPE_NEON_REDUC_MINMAX) || (cached_type == TYPE_NEON_REDUC_MINMAX_Q))))))))))))))))))))))))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ARITH_COMPLEX;
        }
      else if ((cached_type == TYPE_NEON_MUL_B) || ((cached_type == TYPE_NEON_MUL_H) || ((cached_type == TYPE_NEON_MUL_S) || ((cached_type == TYPE_NEON_MUL_H_SCALAR) || ((cached_type == TYPE_NEON_MUL_S_SCALAR) || ((cached_type == TYPE_NEON_SAT_MUL_B) || ((cached_type == TYPE_NEON_SAT_MUL_H) || ((cached_type == TYPE_NEON_SAT_MUL_S) || ((cached_type == TYPE_NEON_SAT_MUL_H_SCALAR) || ((cached_type == TYPE_NEON_SAT_MUL_S_SCALAR) || ((cached_type == TYPE_NEON_MUL_B_LONG) || ((cached_type == TYPE_NEON_MUL_H_LONG) || ((cached_type == TYPE_NEON_MUL_S_LONG) || ((cached_type == TYPE_NEON_MUL_H_SCALAR_LONG) || ((cached_type == TYPE_NEON_MUL_S_SCALAR_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_B_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_H_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_S_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_H_SCALAR_LONG) || (cached_type == TYPE_NEON_SAT_MUL_S_SCALAR_LONG))))))))))))))))))))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_MULTIPLY;
        }
      else if ((cached_type == TYPE_NEON_MUL_B_Q) || ((cached_type == TYPE_NEON_MUL_H_Q) || ((cached_type == TYPE_NEON_MUL_S_Q) || ((cached_type == TYPE_NEON_MUL_H_SCALAR_Q) || ((cached_type == TYPE_NEON_MUL_S_SCALAR_Q) || ((cached_type == TYPE_NEON_SAT_MUL_B_Q) || ((cached_type == TYPE_NEON_SAT_MUL_H_Q) || ((cached_type == TYPE_NEON_SAT_MUL_S_Q) || ((cached_type == TYPE_NEON_SAT_MUL_H_SCALAR_Q) || (cached_type == TYPE_NEON_SAT_MUL_S_SCALAR_Q))))))))))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_MULTIPLY_Q;
        }
      else if ((cached_type == TYPE_NEON_MLA_B) || ((cached_type == TYPE_NEON_MLA_H) || ((cached_type == TYPE_NEON_MLA_S) || ((cached_type == TYPE_NEON_MLA_H_SCALAR) || ((cached_type == TYPE_NEON_MLA_S_SCALAR) || ((cached_type == TYPE_NEON_MLA_B_LONG) || ((cached_type == TYPE_NEON_MLA_H_LONG) || ((cached_type == TYPE_NEON_MLA_S_LONG) || ((cached_type == TYPE_NEON_MLA_H_SCALAR_LONG) || (cached_type == TYPE_NEON_MLA_S_SCALAR_LONG))))))))))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_MLA;
        }
      else if ((cached_type == TYPE_NEON_MLA_B_Q) || ((cached_type == TYPE_NEON_MLA_H_Q) || ((cached_type == TYPE_NEON_MLA_S_Q) || ((cached_type == TYPE_NEON_MLA_H_SCALAR_Q) || (cached_type == TYPE_NEON_MLA_S_SCALAR_Q)))))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_MLA_Q;
        }
      else if ((cached_type == TYPE_NEON_SAT_MLA_B_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_H_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_S_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_H_SCALAR_LONG) || (cached_type == TYPE_NEON_SAT_MLA_S_SCALAR_LONG)))))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_SAT_MLA_LONG;
        }
      else if ((cached_type == TYPE_NEON_SHIFT_ACC) || (cached_type == TYPE_NEON_SHIFT_ACC_Q))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_SHIFT_ACC;
        }
      else if ((cached_type == TYPE_NEON_SHIFT_IMM) || ((cached_type == TYPE_NEON_SHIFT_IMM_Q) || ((cached_type == TYPE_NEON_SHIFT_IMM_NARROW_Q) || (cached_type == TYPE_NEON_SHIFT_IMM_LONG))))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_SHIFT_IMM_BASIC;
        }
      else if ((cached_type == TYPE_NEON_SAT_SHIFT_IMM) || ((cached_type == TYPE_NEON_SAT_SHIFT_IMM_Q) || (cached_type == TYPE_NEON_SAT_SHIFT_IMM_NARROW_Q)))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_SHIFT_IMM_COMPLEX;
        }
      else if (cached_type == TYPE_NEON_SHIFT_REG)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_SHIFT_REG_BASIC;
        }
      else if (cached_type == TYPE_NEON_SHIFT_REG_Q)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_SHIFT_REG_BASIC_Q;
        }
      else if (cached_type == TYPE_NEON_SAT_SHIFT_REG)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_SHIFT_REG_COMPLEX;
        }
      else if (cached_type == TYPE_NEON_SAT_SHIFT_REG_Q)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_SHIFT_REG_COMPLEX_Q;
        }
      else if ((cached_type == TYPE_NEON_FP_NEG_S) || ((cached_type == TYPE_NEON_FP_NEG_S_Q) || ((cached_type == TYPE_NEON_FP_ABS_S) || (cached_type == TYPE_NEON_FP_ABS_S_Q))))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_NEGABS;
        }
      else if ((cached_type == TYPE_NEON_FP_ADDSUB_S) || ((cached_type == TYPE_NEON_FP_ABD_S) || ((cached_type == TYPE_NEON_FP_REDUC_ADD_S) || ((cached_type == TYPE_NEON_FP_COMPARE_S) || ((cached_type == TYPE_NEON_FP_MINMAX_S) || ((cached_type == TYPE_NEON_FP_MINMAX_S_Q) || ((cached_type == TYPE_NEON_FP_REDUC_MINMAX_S) || ((cached_type == TYPE_NEON_FP_ROUND_S) || ((cached_type == TYPE_NEON_FP_ROUND_S_Q) || ((cached_type == TYPE_NEON_FP_ROUND_D) || ((cached_type == TYPE_NEON_FP_ROUND_D_Q) || (cached_type == TYPE_NEON_FP_REDUC_MINMAX_S_Q))))))))))))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH;
        }
      else if ((cached_type == TYPE_NEON_FP_ADDSUB_S_Q) || ((cached_type == TYPE_NEON_FP_ABD_S_Q) || ((cached_type == TYPE_NEON_FP_REDUC_ADD_S_Q) || (cached_type == TYPE_NEON_FP_COMPARE_S_Q))))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH_Q;
        }
      else if ((cached_type == TYPE_NEON_FP_TO_INT_S) || (cached_type == TYPE_NEON_INT_TO_FP_S))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_CVT_INT;
        }
      else if ((cached_type == TYPE_NEON_FP_TO_INT_S_Q) || (cached_type == TYPE_NEON_INT_TO_FP_S_Q))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_CVT_INT_Q;
        }
      else if ((cached_type == TYPE_NEON_FP_CVT_NARROW_S_Q) || (cached_type == TYPE_NEON_FP_CVT_WIDEN_H))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_CVT16;
        }
      else if ((cached_type == TYPE_NEON_FP_MUL_S) || (cached_type == TYPE_NEON_FP_MUL_S_SCALAR))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_MUL;
        }
      else if ((cached_type == TYPE_NEON_FP_MUL_S_Q) || (cached_type == TYPE_NEON_FP_MUL_S_SCALAR_Q))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_MUL_Q;
        }
      else if ((cached_type == TYPE_NEON_FP_MLA_S) || (cached_type == TYPE_NEON_FP_MLA_S_SCALAR))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_MLA;
        }
      else if ((cached_type == TYPE_NEON_FP_MLA_S_Q) || (cached_type == TYPE_NEON_FP_MLA_S_SCALAR_Q))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_MLA_Q;
        }
      else if ((cached_type == TYPE_NEON_FP_RECPE_S) || (cached_type == TYPE_NEON_FP_RSQRTE_S))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_RECPE_RSQRTE;
        }
      else if ((cached_type == TYPE_NEON_FP_RECPE_S_Q) || (cached_type == TYPE_NEON_FP_RSQRTE_S_Q))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FP_RECPE_RSQRTE_Q;
        }
      else if ((cached_type == TYPE_NEON_BSL) || ((cached_type == TYPE_NEON_CLS) || ((cached_type == TYPE_NEON_CNT) || ((cached_type == TYPE_NEON_REV) || ((cached_type == TYPE_NEON_PERMUTE) || ((cached_type == TYPE_NEON_TBL1) || ((cached_type == TYPE_NEON_TBL2) || ((cached_type == TYPE_NEON_ZIP) || ((cached_type == TYPE_NEON_DUP) || ((cached_type == TYPE_NEON_DUP_Q) || ((cached_type == TYPE_NEON_EXT) || ((cached_type == TYPE_NEON_EXT_Q) || ((cached_type == TYPE_NEON_MOVE) || ((cached_type == TYPE_NEON_MOVE_Q) || (cached_type == TYPE_NEON_MOVE_NARROW_Q)))))))))))))))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_BITOPS;
        }
      else if ((cached_type == TYPE_NEON_BSL_Q) || ((cached_type == TYPE_NEON_CLS_Q) || ((cached_type == TYPE_NEON_CNT_Q) || ((cached_type == TYPE_NEON_REV_Q) || (cached_type == TYPE_NEON_PERMUTE_Q)))))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_BITOPS_Q;
        }
      else if (cached_type == TYPE_NEON_FROM_GP)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FROM_GP;
        }
      else if (cached_type == TYPE_NEON_FROM_GP_Q)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_FROM_GP_Q;
        }
      else if ((cached_type == TYPE_NEON_TBL3) || (cached_type == TYPE_NEON_TBL4))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_TBL3_TBL4;
        }
      else if (cached_type == TYPE_NEON_ZIP_Q)
        {
	  return CORTEX_A17_NEON_TYPE_NEON_ZIP_Q;
        }
      else if ((cached_type == TYPE_NEON_TO_GP) || (cached_type == TYPE_NEON_TO_GP_Q))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_TO_GP;
        }
      else if ((cached_type == TYPE_NEON_LOAD1_1REG) || ((cached_type == TYPE_NEON_LOAD1_1REG_Q) || ((cached_type == TYPE_NEON_LOAD1_ONE_LANE) || (cached_type == TYPE_NEON_LOAD1_ONE_LANE_Q))))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_A;
        }
      else if ((cached_type == TYPE_NEON_LOAD1_2REG) || (cached_type == TYPE_NEON_LOAD1_2REG_Q))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_B;
        }
      else if ((cached_type == TYPE_NEON_LOAD1_3REG) || ((cached_type == TYPE_NEON_LOAD1_3REG_Q) || ((cached_type == TYPE_NEON_LOAD1_ALL_LANES) || ((cached_type == TYPE_NEON_LOAD1_ALL_LANES_Q) || ((cached_type == TYPE_NEON_LOAD2_ONE_LANE) || ((cached_type == TYPE_NEON_LOAD2_ONE_LANE_Q) || ((cached_type == TYPE_NEON_LOAD2_ALL_LANES) || (cached_type == TYPE_NEON_LOAD2_ALL_LANES_Q))))))))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_C;
        }
      else if ((cached_type == TYPE_NEON_LOAD1_4REG) || ((cached_type == TYPE_NEON_LOAD1_4REG_Q) || ((cached_type == TYPE_NEON_LOAD2_2REG) || (cached_type == TYPE_NEON_LOAD2_2REG_Q))))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_D;
        }
      else if ((cached_type == TYPE_NEON_LOAD3_ONE_LANE) || ((cached_type == TYPE_NEON_LOAD3_ALL_LANES) || ((cached_type == TYPE_NEON_LOAD4_ONE_LANE) || (cached_type == TYPE_NEON_LOAD4_ALL_LANES))))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_E;
        }
      else if ((cached_type == TYPE_NEON_LOAD3_ONE_LANE_Q) || ((cached_type == TYPE_NEON_LOAD3_ALL_LANES_Q) || ((cached_type == TYPE_NEON_LOAD4_ONE_LANE_Q) || (cached_type == TYPE_NEON_LOAD4_ALL_LANES_Q))))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_F;
        }
      else if ((cached_type == TYPE_NEON_LOAD3_3REG) || (cached_type == TYPE_NEON_LOAD3_3REG_Q))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_G;
        }
      else if ((cached_type == TYPE_NEON_LOAD2_4REG) || ((cached_type == TYPE_NEON_LOAD2_4REG_Q) || ((cached_type == TYPE_NEON_LOAD4_4REG) || (cached_type == TYPE_NEON_LOAD4_4REG_Q))))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_LOAD_H;
        }
      else if ((cached_type == TYPE_NEON_STORE1_1REG) || ((cached_type == TYPE_NEON_STORE1_1REG_Q) || ((cached_type == TYPE_NEON_STORE1_2REG) || ((cached_type == TYPE_NEON_STORE1_2REG_Q) || ((cached_type == TYPE_NEON_STORE1_3REG) || ((cached_type == TYPE_NEON_STORE1_3REG_Q) || ((cached_type == TYPE_NEON_STORE1_4REG) || ((cached_type == TYPE_NEON_STORE1_4REG_Q) || ((cached_type == TYPE_NEON_STORE1_ONE_LANE) || ((cached_type == TYPE_NEON_STORE1_ONE_LANE_Q) || ((cached_type == TYPE_NEON_STORE2_2REG) || ((cached_type == TYPE_NEON_STORE2_2REG_Q) || ((cached_type == TYPE_NEON_STORE3_ONE_LANE) || ((cached_type == TYPE_NEON_STORE3_ONE_LANE_Q) || ((cached_type == TYPE_NEON_STORE4_ONE_LANE) || (cached_type == TYPE_NEON_STORE4_ONE_LANE_Q))))))))))))))))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_STORE_A;
        }
      else if ((cached_type == TYPE_NEON_STORE2_4REG) || ((cached_type == TYPE_NEON_STORE2_4REG_Q) || ((cached_type == TYPE_NEON_STORE2_ONE_LANE) || ((cached_type == TYPE_NEON_STORE2_ONE_LANE_Q) || ((cached_type == TYPE_NEON_STORE3_3REG) || ((cached_type == TYPE_NEON_STORE3_3REG_Q) || ((cached_type == TYPE_NEON_STORE4_4REG) || (cached_type == TYPE_NEON_STORE4_4REG_Q))))))))
        {
	  return CORTEX_A17_NEON_TYPE_NEON_STORE_B;
        }
      else
        {
	  return CORTEX_A17_NEON_TYPE_UNKNOWN;
        }

    case 2476:  /* neon_vst4_lanev4sf */
    case 2475:  /* neon_vst4_lanev4si */
    case 2474:  /* neon_vst4_lanev8hf */
    case 2473:  /* neon_vst4_lanev8hi */
    case 2467:  /* neon_vst4qbv4sf */
    case 2466:  /* neon_vst4qbv4si */
    case 2465:  /* neon_vst4qbv8hf */
    case 2464:  /* neon_vst4qbv8hi */
    case 2463:  /* neon_vst4qbv16qi */
    case 2462:  /* neon_vst4qav4sf */
    case 2461:  /* neon_vst4qav4si */
    case 2460:  /* neon_vst4qav8hf */
    case 2459:  /* neon_vst4qav8hi */
    case 2458:  /* neon_vst4qav16qi */
    case 2411:  /* neon_vst3qbv4sf */
    case 2410:  /* neon_vst3qbv4si */
    case 2409:  /* neon_vst3qbv8hf */
    case 2408:  /* neon_vst3qbv8hi */
    case 2407:  /* neon_vst3qbv16qi */
    case 2406:  /* neon_vst3qav4sf */
    case 2405:  /* neon_vst3qav4si */
    case 2404:  /* neon_vst3qav8hf */
    case 2403:  /* neon_vst3qav8hi */
    case 2402:  /* neon_vst3qav16qi */
    case 2364:  /* neon_vst2_lanev4sf */
    case 2363:  /* neon_vst2_lanev4si */
    case 2362:  /* neon_vst2_lanev8hf */
    case 2361:  /* neon_vst2_lanev8hi */
    case 2360:  /* neon_vst2_lanev2sf */
    case 2359:  /* neon_vst2_lanev2si */
    case 2358:  /* neon_vst2_lanev4hf */
    case 2357:  /* neon_vst2_lanev4hi */
    case 2356:  /* neon_vst2_lanev8qi */
    case 2355:  /* neon_vst2v4sf */
    case 2354:  /* neon_vst2v4si */
    case 2353:  /* neon_vst2v8hf */
    case 2352:  /* neon_vst2v8hi */
    case 2351:  /* neon_vst2v16qi */
      return CORTEX_A17_NEON_TYPE_NEON_STORE_B;

    case 2472:  /* neon_vst4_lanev2sf */
    case 2471:  /* neon_vst4_lanev2si */
    case 2470:  /* neon_vst4_lanev4hf */
    case 2469:  /* neon_vst4_lanev4hi */
    case 2468:  /* neon_vst4_lanev8qi */
    case 2420:  /* neon_vst3_lanev4sf */
    case 2419:  /* neon_vst3_lanev4si */
    case 2418:  /* neon_vst3_lanev8hf */
    case 2417:  /* neon_vst3_lanev8hi */
    case 2416:  /* neon_vst3_lanev2sf */
    case 2415:  /* neon_vst3_lanev2si */
    case 2414:  /* neon_vst3_lanev4hf */
    case 2413:  /* neon_vst3_lanev4hi */
    case 2412:  /* neon_vst3_lanev8qi */
    case 2401:  /* neon_vst3di */
    case 2400:  /* neon_vst3v2sf */
    case 2399:  /* neon_vst3v2si */
    case 2398:  /* neon_vst3v4hf */
    case 2397:  /* neon_vst3v4hi */
    case 2396:  /* neon_vst3v8qi */
    case 2318:  /* neon_vst1_lanev2di */
    case 2317:  /* neon_vst1_lanev4sf */
    case 2316:  /* neon_vst1_lanev4si */
    case 2315:  /* neon_vst1_lanev8hf */
    case 2314:  /* neon_vst1_lanev8hi */
    case 2313:  /* neon_vst1_lanev16qi */
    case 2312:  /* neon_vst1_lanedi */
    case 2311:  /* neon_vst1_lanev2sf */
    case 2310:  /* neon_vst1_lanev2si */
    case 2309:  /* neon_vst1_lanev4hf */
    case 2308:  /* neon_vst1_lanev4hi */
    case 2307:  /* neon_vst1_lanev8qi */
    case 2306:  /* neon_vst1v2di */
    case 2305:  /* neon_vst1di */
    case 2304:  /* neon_vst1v4sf */
    case 2303:  /* neon_vst1v2sf */
    case 2302:  /* neon_vst1v8hf */
    case 2301:  /* neon_vst1v4hf */
    case 2300:  /* neon_vst1v4si */
    case 2299:  /* neon_vst1v2si */
    case 2298:  /* neon_vst1v8hi */
    case 2297:  /* neon_vst1v4hi */
    case 2296:  /* neon_vst1v16qi */
    case 2295:  /* neon_vst1v8qi */
    case 942:  /* *movmisalignv2di_neon_store */
    case 941:  /* *movmisalignv4sf_neon_store */
    case 940:  /* *movmisalignv4si_neon_store */
    case 939:  /* *movmisalignv8hf_neon_store */
    case 938:  /* *movmisalignv8hi_neon_store */
    case 937:  /* *movmisalignv16qi_neon_store */
    case 930:  /* *movmisaligndi_neon_store */
    case 929:  /* *movmisalignv2sf_neon_store */
    case 928:  /* *movmisalignv2si_neon_store */
    case 927:  /* *movmisalignv4hf_neon_store */
    case 926:  /* *movmisalignv4hi_neon_store */
    case 925:  /* *movmisalignv8qi_neon_store */
      return CORTEX_A17_NEON_TYPE_NEON_STORE_A;

    case 2436:  /* neon_vld4qbv4sf */
    case 2435:  /* neon_vld4qbv4si */
    case 2434:  /* neon_vld4qbv8hf */
    case 2433:  /* neon_vld4qbv8hi */
    case 2432:  /* neon_vld4qbv16qi */
    case 2431:  /* neon_vld4qav4sf */
    case 2430:  /* neon_vld4qav4si */
    case 2429:  /* neon_vld4qav8hf */
    case 2428:  /* neon_vld4qav8hi */
    case 2427:  /* neon_vld4qav16qi */
      return CORTEX_A17_NEON_TYPE_NEON_LOAD_H;

    case 2380:  /* neon_vld3qbv4sf */
    case 2379:  /* neon_vld3qbv4si */
    case 2378:  /* neon_vld3qbv8hf */
    case 2377:  /* neon_vld3qbv8hi */
    case 2376:  /* neon_vld3qbv16qi */
    case 2375:  /* neon_vld3qav4sf */
    case 2374:  /* neon_vld3qav4si */
    case 2373:  /* neon_vld3qav8hf */
    case 2372:  /* neon_vld3qav8hi */
    case 2371:  /* neon_vld3qav16qi */
      return CORTEX_A17_NEON_TYPE_NEON_LOAD_G;

    case 2445:  /* neon_vld4_lanev4sf */
    case 2444:  /* neon_vld4_lanev4si */
    case 2443:  /* neon_vld4_lanev8hf */
    case 2442:  /* neon_vld4_lanev8hi */
    case 2389:  /* neon_vld3_lanev4sf */
    case 2388:  /* neon_vld3_lanev4si */
    case 2387:  /* neon_vld3_lanev8hf */
    case 2386:  /* neon_vld3_lanev8hi */
      return CORTEX_A17_NEON_TYPE_NEON_LOAD_F;

    case 2441:  /* neon_vld4_lanev2sf */
    case 2440:  /* neon_vld4_lanev2si */
    case 2439:  /* neon_vld4_lanev4hf */
    case 2438:  /* neon_vld4_lanev4hi */
    case 2437:  /* neon_vld4_lanev8qi */
    case 2385:  /* neon_vld3_lanev2sf */
    case 2384:  /* neon_vld3_lanev2si */
    case 2383:  /* neon_vld3_lanev4hf */
    case 2382:  /* neon_vld3_lanev4hi */
    case 2381:  /* neon_vld3_lanev8qi */
      return CORTEX_A17_NEON_TYPE_NEON_LOAD_E;

    case 2329:  /* neon_vld2v4sf */
    case 2328:  /* neon_vld2v4si */
    case 2327:  /* neon_vld2v8hf */
    case 2326:  /* neon_vld2v8hi */
    case 2325:  /* neon_vld2v16qi */
      return CORTEX_A17_NEON_TYPE_NEON_LOAD_D;

    case 2338:  /* neon_vld2_lanev4sf */
    case 2337:  /* neon_vld2_lanev4si */
    case 2336:  /* neon_vld2_lanev8hf */
    case 2335:  /* neon_vld2_lanev8hi */
    case 2334:  /* neon_vld2_lanev2sf */
    case 2333:  /* neon_vld2_lanev2si */
    case 2332:  /* neon_vld2_lanev4hf */
    case 2331:  /* neon_vld2_lanev4hi */
    case 2330:  /* neon_vld2_lanev8qi */
    case 2294:  /* neon_vld1_dupv2di */
    case 2293:  /* neon_vld1_dupv4sf */
    case 2292:  /* neon_vld1_dupv4si */
    case 2291:  /* neon_vld1_dupv8hf */
    case 2290:  /* neon_vld1_dupv8hi */
    case 2289:  /* neon_vld1_dupv16qi */
    case 2288:  /* neon_vld1_dupv2sf */
    case 2287:  /* neon_vld1_dupv2si */
    case 2286:  /* neon_vld1_dupv4hf */
    case 2285:  /* neon_vld1_dupv4hi */
    case 2284:  /* neon_vld1_dupv8qi */
      return CORTEX_A17_NEON_TYPE_NEON_LOAD_C;

    case 2283:  /* neon_vld1_lanev2di */
    case 2282:  /* neon_vld1_lanev4sf */
    case 2281:  /* neon_vld1_lanev4si */
    case 2280:  /* neon_vld1_lanev8hf */
    case 2279:  /* neon_vld1_lanev8hi */
    case 2278:  /* neon_vld1_lanev16qi */
    case 2277:  /* neon_vld1_lanedi */
    case 2276:  /* neon_vld1_lanev2sf */
    case 2275:  /* neon_vld1_lanev2si */
    case 2274:  /* neon_vld1_lanev4hf */
    case 2273:  /* neon_vld1_lanev4hi */
    case 2272:  /* neon_vld1_lanev8qi */
    case 2271:  /* neon_vld1v2di */
    case 2270:  /* neon_vld1di */
    case 2269:  /* neon_vld1v4sf */
    case 2268:  /* neon_vld1v2sf */
    case 2267:  /* neon_vld1v8hf */
    case 2266:  /* neon_vld1v4hf */
    case 2265:  /* neon_vld1v4si */
    case 2264:  /* neon_vld1v2si */
    case 2263:  /* neon_vld1v8hi */
    case 2262:  /* neon_vld1v4hi */
    case 2261:  /* neon_vld1v16qi */
    case 2260:  /* neon_vld1v8qi */
    case 948:  /* *movmisalignv2di_neon_load */
    case 947:  /* *movmisalignv4sf_neon_load */
    case 946:  /* *movmisalignv4si_neon_load */
    case 945:  /* *movmisalignv8hf_neon_load */
    case 944:  /* *movmisalignv8hi_neon_load */
    case 943:  /* *movmisalignv16qi_neon_load */
    case 936:  /* *movmisaligndi_neon_load */
    case 935:  /* *movmisalignv2sf_neon_load */
    case 934:  /* *movmisalignv2si_neon_load */
    case 933:  /* *movmisalignv4hf_neon_load */
    case 932:  /* *movmisalignv4hi_neon_load */
    case 931:  /* *movmisalignv8qi_neon_load */
      return CORTEX_A17_NEON_TYPE_NEON_LOAD_A;

    case 1802:  /* neon_vget_lanev4sf_zext_internal */
    case 1801:  /* neon_vget_lanev4si_zext_internal */
    case 1800:  /* neon_vget_lanev8hf_zext_internal */
    case 1799:  /* neon_vget_lanev8hi_zext_internal */
    case 1798:  /* neon_vget_lanev16qi_zext_internal */
    case 1797:  /* neon_vget_lanev4sf_sext_internal */
    case 1796:  /* neon_vget_lanev4si_sext_internal */
    case 1795:  /* neon_vget_lanev8hf_sext_internal */
    case 1794:  /* neon_vget_lanev8hi_sext_internal */
    case 1793:  /* neon_vget_lanev16qi_sext_internal */
    case 1792:  /* neon_vget_lanev2sf_zext_internal */
    case 1791:  /* neon_vget_lanev2si_zext_internal */
    case 1790:  /* neon_vget_lanev4hi_zext_internal */
    case 1789:  /* neon_vget_lanev8qi_zext_internal */
    case 1788:  /* neon_vget_lanev2sf_sext_internal */
    case 1787:  /* neon_vget_lanev2si_sext_internal */
    case 1786:  /* neon_vget_lanev4hi_sext_internal */
    case 1785:  /* neon_vget_lanev8qi_sext_internal */
      return CORTEX_A17_NEON_TYPE_NEON_TO_GP;

    case 2258:  /* *neon_vuzpv8hf_insn */
    case 2257:  /* *neon_vuzpv4sf_insn */
    case 2255:  /* *neon_vuzpv4si_insn */
    case 2253:  /* *neon_vuzpv8hi_insn */
    case 2251:  /* *neon_vuzpv16qi_insn */
    case 2248:  /* *neon_vzipv8hf_insn */
    case 2247:  /* *neon_vzipv4sf_insn */
    case 2245:  /* *neon_vzipv4si_insn */
    case 2243:  /* *neon_vzipv8hi_insn */
    case 2241:  /* *neon_vzipv16qi_insn */
      return CORTEX_A17_NEON_TYPE_NEON_ZIP_Q;

    case 2229:  /* neon_vtbx4v8qi */
    case 2228:  /* neon_vtbx3v8qi */
    case 2222:  /* neon_vtbl4v8qi */
    case 2221:  /* neon_vtbl3v8qi */
      return CORTEX_A17_NEON_TYPE_NEON_TBL3_TBL4;

    case 1808:  /* neon_vdup_nv8hf */
    case 1806:  /* neon_vdup_nv8hi */
    case 1805:  /* neon_vdup_nv16qi */
      return CORTEX_A17_NEON_TYPE_NEON_FROM_GP_Q;

    case 1807:  /* neon_vdup_nv4hf */
    case 1804:  /* neon_vdup_nv4hi */
    case 1803:  /* neon_vdup_nv8qi */
      return CORTEX_A17_NEON_TYPE_NEON_FROM_GP;

    case 2238:  /* *neon_vtrnv8hf_insn */
    case 2237:  /* *neon_vtrnv4sf_insn */
    case 2235:  /* *neon_vtrnv4si_insn */
    case 2233:  /* *neon_vtrnv8hi_insn */
    case 2231:  /* *neon_vtrnv16qi_insn */
    case 2012:  /* neon_vbslv2di_internal */
    case 2010:  /* neon_vbslv4sf_internal */
    case 2008:  /* neon_vbslv8hf_internal */
    case 2006:  /* neon_vbslv4si_internal */
    case 2004:  /* neon_vbslv8hi_internal */
    case 2002:  /* neon_vbslv16qi_internal */
    case 2000:  /* neon_vrev16v16qi */
    case 1998:  /* neon_vrev32v8hi */
    case 1997:  /* neon_vrev32v16qi */
    case 1994:  /* neon_vrev64v2di */
    case 1993:  /* neon_vrev64v4sf */
    case 1991:  /* neon_vrev64v8hf */
    case 1989:  /* neon_vrev64v4si */
    case 1987:  /* neon_vrev64v8hi */
    case 1985:  /* neon_vrev64v16qi */
    case 1835:  /* *neon_vswpv2di */
    case 1833:  /* *neon_vswpv4sf */
    case 1831:  /* *neon_vswpv8hf */
    case 1829:  /* *neon_vswpv4si */
    case 1827:  /* *neon_vswpv8hi */
    case 1825:  /* *neon_vswpv16qi */
    case 1774:  /* popcountv16qi2 */
    case 1772:  /* clzv4si2 */
    case 1770:  /* clzv8hi2 */
    case 1768:  /* clzv16qi2 */
    case 1766:  /* neon_vclsv4si */
    case 1764:  /* neon_vclsv8hi */
    case 1762:  /* neon_vclsv16qi */
    case 1754:  /* neon_bswapv2di */
    case 1753:  /* neon_bswapv4si */
    case 1751:  /* neon_bswapv8hi */
      return CORTEX_A17_NEON_TYPE_NEON_BITOPS_Q;

    case 2524:  /* neon_vec_pack_trunc_v2di */
    case 2523:  /* neon_vec_pack_trunc_v4si */
    case 2522:  /* neon_vec_pack_trunc_v8hi */
    case 2512:  /* neon_unpacku_v2si */
    case 2511:  /* neon_unpacks_v2si */
    case 2510:  /* neon_unpacku_v4hi */
    case 2509:  /* neon_unpacks_v4hi */
    case 2508:  /* neon_unpacku_v8qi */
    case 2507:  /* neon_unpacks_v8qi */
    case 2259:  /* *neon_vuzpv4hf_insn */
    case 2256:  /* *neon_vuzpv2sf_insn */
    case 2254:  /* *neon_vuzpv2si_insn */
    case 2252:  /* *neon_vuzpv4hi_insn */
    case 2250:  /* *neon_vuzpv8qi_insn */
    case 2249:  /* *neon_vzipv4hf_insn */
    case 2246:  /* *neon_vzipv2sf_insn */
    case 2244:  /* *neon_vzipv2si_insn */
    case 2242:  /* *neon_vzipv4hi_insn */
    case 2240:  /* *neon_vzipv8qi_insn */
    case 2239:  /* *neon_vtrnv4hf_insn */
    case 2236:  /* *neon_vtrnv2sf_insn */
    case 2234:  /* *neon_vtrnv2si_insn */
    case 2232:  /* *neon_vtrnv4hi_insn */
    case 2230:  /* *neon_vtrnv8qi_insn */
    case 2227:  /* neon_vtbx2v8qi */
    case 2226:  /* neon_vtbx1v8qi */
    case 2220:  /* neon_vtbl2v8qi */
    case 2219:  /* neon_vtbl1v8qi */
    case 2011:  /* neon_vbsldi_internal */
    case 2009:  /* neon_vbslv2sf_internal */
    case 2007:  /* neon_vbslv4hf_internal */
    case 2005:  /* neon_vbslv2si_internal */
    case 2003:  /* neon_vbslv4hi_internal */
    case 2001:  /* neon_vbslv8qi_internal */
    case 1999:  /* neon_vrev16v8qi */
    case 1996:  /* neon_vrev32v4hi */
    case 1995:  /* neon_vrev32v8qi */
    case 1992:  /* neon_vrev64v2sf */
    case 1990:  /* neon_vrev64v4hf */
    case 1988:  /* neon_vrev64v2si */
    case 1986:  /* neon_vrev64v4hi */
    case 1984:  /* neon_vrev64v8qi */
    case 1983:  /* neon_vextv2di */
    case 1982:  /* neon_vextdi */
    case 1981:  /* neon_vextv4sf */
    case 1980:  /* neon_vextv2sf */
    case 1979:  /* neon_vextv8hf */
    case 1978:  /* neon_vextv4hf */
    case 1977:  /* neon_vextv4si */
    case 1976:  /* neon_vextv2si */
    case 1975:  /* neon_vextv8hi */
    case 1974:  /* neon_vextv4hi */
    case 1973:  /* neon_vextv16qi */
    case 1972:  /* neon_vextv8qi */
    case 1834:  /* *neon_vswpdi */
    case 1832:  /* *neon_vswpv2sf */
    case 1830:  /* *neon_vswpv4hf */
    case 1828:  /* *neon_vswpv2si */
    case 1826:  /* *neon_vswpv4hi */
    case 1824:  /* *neon_vswpv8qi */
    case 1823:  /* neon_vdup_lanev4hf_internal */
    case 1822:  /* neon_vdup_lanev8hf_internal */
    case 1821:  /* neon_vdup_lanev4sf_internal */
    case 1820:  /* neon_vdup_lanev2sf_internal */
    case 1819:  /* neon_vdup_lanev4si_internal */
    case 1818:  /* neon_vdup_lanev2si_internal */
    case 1817:  /* neon_vdup_lanev8hi_internal */
    case 1816:  /* neon_vdup_lanev4hi_internal */
    case 1815:  /* neon_vdup_lanev16qi_internal */
    case 1814:  /* neon_vdup_lanev8qi_internal */
    case 1773:  /* popcountv8qi2 */
    case 1771:  /* clzv2si2 */
    case 1769:  /* clzv4hi2 */
    case 1767:  /* clzv8qi2 */
    case 1765:  /* neon_vclsv2si */
    case 1763:  /* neon_vclsv4hi */
    case 1761:  /* neon_vclsv8qi */
    case 1752:  /* neon_bswapv2si */
    case 1750:  /* neon_bswapv4hi */
    case 1128:  /* one_cmplv2di2 */
    case 1127:  /* one_cmplv4sf2 */
    case 1126:  /* one_cmplv2sf2 */
    case 1125:  /* one_cmplv8hf2 */
    case 1124:  /* one_cmplv4hf2 */
    case 1123:  /* one_cmplv4si2 */
    case 1122:  /* one_cmplv2si2 */
    case 1121:  /* one_cmplv8hi2 */
    case 1120:  /* one_cmplv4hi2 */
    case 1119:  /* one_cmplv16qi2 */
    case 1118:  /* one_cmplv8qi2 */
      return CORTEX_A17_NEON_TYPE_NEON_BITOPS;

    case 1784:  /* neon_vrsqrtev4sf */
    case 1783:  /* neon_vrsqrtev4si */
    case 1780:  /* neon_vrecpev4sf */
    case 1779:  /* neon_vrecpev4si */
    case 1775:  /* neon_vrecpev8hf */
    case 1162:  /* neon_vrsqrtev8hf */
      return CORTEX_A17_NEON_TYPE_NEON_FP_RECPE_RSQRTE_Q;

    case 1782:  /* neon_vrsqrtev2sf */
    case 1781:  /* neon_vrsqrtev2si */
    case 1778:  /* neon_vrecpev2sf */
    case 1777:  /* neon_vrecpev2si */
    case 1776:  /* neon_vrecpev4hf */
    case 1163:  /* neon_vrsqrtev4hf */
      return CORTEX_A17_NEON_TYPE_NEON_FP_RECPE_RSQRTE;

    case 1035:  /* fmsubv8hf4_intrinsic */
    case 1034:  /* fmsubv4sf4_intrinsic */
    case 1032:  /* *fmsubv4sf4 */
    case 1029:  /* fmav8hf4_intrinsic */
    case 1028:  /* fmav4sf4_intrinsic */
    case 1026:  /* fmav4sf4 */
    case 1015:  /* mulv8hf3addv8hf_neon */
      return CORTEX_A17_NEON_TYPE_NEON_FP_MLA_Q;

    case 1036:  /* fmsubv4hf4_intrinsic */
    case 1033:  /* fmsubv2sf4_intrinsic */
    case 1031:  /* *fmsubv2sf4 */
    case 1030:  /* fmav4hf4_intrinsic */
    case 1027:  /* fmav2sf4_intrinsic */
    case 1025:  /* fmav2sf4 */
    case 1016:  /* mulv4hf3addv4hf_neon */
      return CORTEX_A17_NEON_TYPE_NEON_FP_MLA;

    case 1924:  /* neon_vmul_lanev8hf */
      return CORTEX_A17_NEON_TYPE_NEON_FP_MUL_Q;

    case 1925:  /* neon_vmul_lanev4hf */
      return CORTEX_A17_NEON_TYPE_NEON_FP_MUL;

    case 1859:  /* neon_vcvtv4hfv4sf */
    case 1858:  /* neon_vcvtv4sfv4hf */
      return CORTEX_A17_NEON_TYPE_NEON_FP_CVT16;

    case 1891:  /* neon_vcvtpuv8hf */
    case 1890:  /* neon_vcvtpsv8hf */
    case 1889:  /* neon_vcvtnuv8hf */
    case 1888:  /* neon_vcvtnsv8hf */
    case 1887:  /* neon_vcvtmuv8hf */
    case 1886:  /* neon_vcvtmsv8hf */
    case 1885:  /* neon_vcvtauv8hf */
    case 1884:  /* neon_vcvtasv8hf */
    case 1883:  /* neon_vcvtu_nv8hi */
    case 1882:  /* neon_vcvts_nv8hi */
    case 1879:  /* neon_vcvtu_nv4si */
    case 1878:  /* neon_vcvts_nv4si */
    case 1873:  /* neon_vcvtu_nv8hf */
    case 1872:  /* neon_vcvts_nv8hf */
    case 1871:  /* neon_vcvtu_nv4sf */
    case 1870:  /* neon_vcvts_nv4sf */
    case 1865:  /* neon_vcvtuv8hf */
    case 1864:  /* neon_vcvtsv8hf */
    case 1863:  /* neon_vcvtuv8hi */
    case 1862:  /* neon_vcvtsv8hi */
    case 1857:  /* neon_vcvtuv4si */
    case 1856:  /* neon_vcvtsv4si */
    case 1853:  /* neon_vcvtuv4sf */
    case 1852:  /* neon_vcvtsv4sf */
    case 1849:  /* fixuns_truncv4sfv4si2 */
    case 1847:  /* fix_truncv4sfv4si2 */
    case 1845:  /* floatunsv4siv4sf2 */
    case 1843:  /* floatv4siv4sf2 */
    case 1060:  /* neon_vcvtauv4sfv4si */
    case 1059:  /* neon_vcvtmuv4sfv4si */
    case 1058:  /* neon_vcvtpuv4sfv4si */
    case 1057:  /* neon_vcvtav4sfv4si */
    case 1056:  /* neon_vcvtmv4sfv4si */
    case 1055:  /* neon_vcvtpv4sfv4si */
      return CORTEX_A17_NEON_TYPE_NEON_FP_CVT_INT_Q;

    case 1899:  /* neon_vcvtpuv4hf */
    case 1898:  /* neon_vcvtpsv4hf */
    case 1897:  /* neon_vcvtnuv4hf */
    case 1896:  /* neon_vcvtnsv4hf */
    case 1895:  /* neon_vcvtmuv4hf */
    case 1894:  /* neon_vcvtmsv4hf */
    case 1893:  /* neon_vcvtauv4hf */
    case 1892:  /* neon_vcvtasv4hf */
    case 1881:  /* neon_vcvtu_nv4hi */
    case 1880:  /* neon_vcvts_nv4hi */
    case 1877:  /* neon_vcvtu_nv2si */
    case 1876:  /* neon_vcvts_nv2si */
    case 1875:  /* neon_vcvtu_nv4hf */
    case 1874:  /* neon_vcvts_nv4hf */
    case 1869:  /* neon_vcvtu_nv2sf */
    case 1868:  /* neon_vcvts_nv2sf */
    case 1867:  /* neon_vcvtuv4hf */
    case 1866:  /* neon_vcvtsv4hf */
    case 1861:  /* neon_vcvtuv4hi */
    case 1860:  /* neon_vcvtsv4hi */
    case 1855:  /* neon_vcvtuv2si */
    case 1854:  /* neon_vcvtsv2si */
    case 1851:  /* neon_vcvtuv2sf */
    case 1850:  /* neon_vcvtsv2sf */
    case 1848:  /* fixuns_truncv2sfv2si2 */
    case 1846:  /* fix_truncv2sfv2si2 */
    case 1844:  /* floatunsv2siv2sf2 */
    case 1842:  /* floatv2siv2sf2 */
    case 1054:  /* neon_vcvtauv2sfv2si */
    case 1053:  /* neon_vcvtmuv2sfv2si */
    case 1052:  /* neon_vcvtpuv2sfv2si */
    case 1051:  /* neon_vcvtav2sfv2si */
    case 1050:  /* neon_vcvtmv2sfv2si */
    case 1049:  /* neon_vcvtpv2sfv2si */
      return CORTEX_A17_NEON_TYPE_NEON_FP_CVT_INT;

    case 1629:  /* neon_vabdfv4sf */
    case 1603:  /* neon_vcaltv8hf_fp16insn_unspec */
    case 1602:  /* neon_vcalev8hf_fp16insn_unspec */
    case 1601:  /* neon_vcagtv8hf_fp16insn_unspec */
    case 1600:  /* neon_vcagev8hf_fp16insn_unspec */
    case 1595:  /* neon_vcalev8hf_fp16insn */
    case 1594:  /* neon_vcaltv8hf_fp16insn */
    case 1593:  /* neon_vcagev8hf_fp16insn */
    case 1592:  /* neon_vcagtv8hf_fp16insn */
    case 1591:  /* neon_vcagtv4sf_insn_unspec */
    case 1590:  /* neon_vcagev4sf_insn_unspec */
    case 1587:  /* neon_vcagev4sf_insn */
    case 1586:  /* neon_vcagtv4sf_insn */
    case 1566:  /* neon_vclev8hf_fp16insn_unspec */
    case 1565:  /* neon_vcltv8hf_fp16insn_unspec */
    case 1564:  /* neon_vcgev8hf_fp16insn_unspec */
    case 1563:  /* neon_vcgtv8hf_fp16insn_unspec */
    case 1562:  /* neon_vceqv8hf_fp16insn_unspec */
    case 1551:  /* neon_vclev4sf_insn_unspec */
    case 1550:  /* neon_vcltv4sf_insn_unspec */
    case 1549:  /* neon_vcgev4sf_insn_unspec */
    case 1548:  /* neon_vcgtv4sf_insn_unspec */
    case 1547:  /* neon_vceqv4sf_insn_unspec */
    case 1280:  /* quad_halves_plusv4sf */
      return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH_Q;

    case 1735:  /* neon_vpminfv4sf */
    case 1734:  /* neon_vpmaxfv4sf */
    case 1733:  /* neon_vpminfv2sf */
    case 1732:  /* neon_vpmaxfv2sf */
    case 1695:  /* fminv4sf3 */
    case 1694:  /* fmaxv4sf3 */
    case 1693:  /* fminv2sf3 */
    case 1692:  /* fmaxv2sf3 */
    case 1691:  /* neon_vminnmv4hf */
    case 1690:  /* neon_vmaxnmv4hf */
    case 1689:  /* neon_vminnmv8hf */
    case 1688:  /* neon_vmaxnmv8hf */
    case 1685:  /* neon_vminfv4hf */
    case 1684:  /* neon_vmaxfv4hf */
    case 1683:  /* neon_vminfv8hf */
    case 1682:  /* neon_vmaxfv8hf */
    case 1681:  /* neon_vminfv4sf */
    case 1680:  /* neon_vmaxfv4sf */
    case 1679:  /* neon_vminfv2sf */
    case 1678:  /* neon_vmaxfv2sf */
    case 1628:  /* neon_vabdfv2sf */
    case 1607:  /* neon_vcaltv4hf_fp16insn_unspec */
    case 1606:  /* neon_vcalev4hf_fp16insn_unspec */
    case 1605:  /* neon_vcagtv4hf_fp16insn_unspec */
    case 1604:  /* neon_vcagev4hf_fp16insn_unspec */
    case 1599:  /* neon_vcalev4hf_fp16insn */
    case 1598:  /* neon_vcaltv4hf_fp16insn */
    case 1597:  /* neon_vcagev4hf_fp16insn */
    case 1596:  /* neon_vcagtv4hf_fp16insn */
    case 1589:  /* neon_vcagtv2sf_insn_unspec */
    case 1588:  /* neon_vcagev2sf_insn_unspec */
    case 1585:  /* neon_vcagev2sf_insn */
    case 1584:  /* neon_vcagtv2sf_insn */
    case 1571:  /* neon_vclev4hf_fp16insn_unspec */
    case 1570:  /* neon_vcltv4hf_fp16insn_unspec */
    case 1569:  /* neon_vcgev4hf_fp16insn_unspec */
    case 1568:  /* neon_vcgtv4hf_fp16insn_unspec */
    case 1567:  /* neon_vceqv4hf_fp16insn_unspec */
    case 1546:  /* neon_vclev2sf_insn_unspec */
    case 1545:  /* neon_vcltv2sf_insn_unspec */
    case 1544:  /* neon_vcgev2sf_insn_unspec */
    case 1543:  /* neon_vcgtv2sf_insn_unspec */
    case 1542:  /* neon_vceqv2sf_insn_unspec */
    case 1282:  /* quad_halves_smaxv4sf */
    case 1281:  /* quad_halves_sminv4sf */
    case 1161:  /* neon_vrndxv4hf */
    case 1160:  /* neon_vrndpv4hf */
    case 1159:  /* neon_vrndnv4hf */
    case 1158:  /* neon_vrndmv4hf */
    case 1157:  /* neon_vrndav4hf */
    case 1156:  /* neon_vrndv4hf */
    case 1155:  /* neon_vrndxv8hf */
    case 1154:  /* neon_vrndpv8hf */
    case 1153:  /* neon_vrndnv8hf */
    case 1152:  /* neon_vrndmv8hf */
    case 1151:  /* neon_vrndav8hf */
    case 1150:  /* neon_vrndv8hf */
    case 1048:  /* neon_vrintnv4sf */
    case 1047:  /* neon_vrintav4sf */
    case 1046:  /* neon_vrintxv4sf */
    case 1045:  /* neon_vrintmv4sf */
    case 1044:  /* neon_vrintzv4sf */
    case 1043:  /* neon_vrintpv4sf */
    case 1042:  /* neon_vrintnv2sf */
    case 1041:  /* neon_vrintav2sf */
    case 1040:  /* neon_vrintxv2sf */
    case 1039:  /* neon_vrintmv2sf */
    case 1038:  /* neon_vrintzv2sf */
    case 1037:  /* neon_vrintpv2sf */
    case 657:  /* neon_vrndihf */
    case 656:  /* neon_vrndxhf */
    case 655:  /* neon_vrndphf */
    case 654:  /* neon_vrndnhf */
    case 653:  /* neon_vrndmhf */
    case 652:  /* neon_vrndahf */
    case 651:  /* neon_vrndhf */
      return CORTEX_A17_NEON_TYPE_NEON_FP_ARITH;

    case 2218:  /* neon_vsli_nv2di */
    case 2216:  /* neon_vsli_nv4si */
    case 2214:  /* neon_vsli_nv8hi */
    case 2212:  /* neon_vsli_nv16qi */
    case 2210:  /* neon_vsri_nv2di */
    case 2208:  /* neon_vsri_nv4si */
    case 2206:  /* neon_vsri_nv8hi */
    case 2204:  /* neon_vsri_nv16qi */
    case 1223:  /* ashlv2di3_unsigned */
    case 1222:  /* ashlv4si3_unsigned */
    case 1220:  /* ashlv8hi3_unsigned */
    case 1218:  /* ashlv16qi3_unsigned */
    case 1216:  /* ashlv2di3_signed */
    case 1215:  /* ashlv4si3_signed */
    case 1213:  /* ashlv8hi3_signed */
    case 1211:  /* ashlv16qi3_signed */
      return CORTEX_A17_NEON_TYPE_NEON_SHIFT_REG_BASIC_Q;

    case 2217:  /* neon_vsli_ndi */
    case 2215:  /* neon_vsli_nv2si */
    case 2213:  /* neon_vsli_nv4hi */
    case 2211:  /* neon_vsli_nv8qi */
    case 2209:  /* neon_vsri_ndi */
    case 2207:  /* neon_vsri_nv2si */
    case 2205:  /* neon_vsri_nv4hi */
    case 2203:  /* neon_vsri_nv8qi */
    case 1228:  /* unsigned_shift_di3_neon */
    case 1227:  /* signed_shift_di3_neon */
    case 1221:  /* ashlv2si3_unsigned */
    case 1219:  /* ashlv4hi3_unsigned */
    case 1217:  /* ashlv8qi3_unsigned */
    case 1214:  /* ashlv2si3_signed */
    case 1212:  /* ashlv4hi3_signed */
    case 1210:  /* ashlv8qi3_signed */
      return CORTEX_A17_NEON_TYPE_NEON_SHIFT_REG_BASIC;

    case 2164:  /* neon_vqshlu_nv2di */
    case 2163:  /* neon_vqshlu_ndi */
    case 2162:  /* neon_vqshlu_nv4si */
    case 2161:  /* neon_vqshlu_nv2si */
    case 2160:  /* neon_vqshlu_nv8hi */
    case 2159:  /* neon_vqshlu_nv4hi */
    case 2158:  /* neon_vqshlu_nv16qi */
    case 2157:  /* neon_vqshlu_nv8qi */
    case 2156:  /* neon_vqshl_u_nv2di */
    case 2155:  /* neon_vqshl_s_nv2di */
    case 2154:  /* neon_vqshl_u_ndi */
    case 2153:  /* neon_vqshl_s_ndi */
    case 2152:  /* neon_vqshl_u_nv4si */
    case 2151:  /* neon_vqshl_s_nv4si */
    case 2150:  /* neon_vqshl_u_nv2si */
    case 2149:  /* neon_vqshl_s_nv2si */
    case 2148:  /* neon_vqshl_u_nv8hi */
    case 2147:  /* neon_vqshl_s_nv8hi */
    case 2146:  /* neon_vqshl_u_nv4hi */
    case 2145:  /* neon_vqshl_s_nv4hi */
    case 2144:  /* neon_vqshl_u_nv16qi */
    case 2143:  /* neon_vqshl_s_nv16qi */
    case 2142:  /* neon_vqshl_u_nv8qi */
    case 2141:  /* neon_vqshl_s_nv8qi */
    case 2132:  /* neon_vqrshrun_nv2di */
    case 2131:  /* neon_vqshrun_nv2di */
    case 2130:  /* neon_vqrshrun_nv4si */
    case 2129:  /* neon_vqshrun_nv4si */
    case 2128:  /* neon_vqrshrun_nv8hi */
    case 2127:  /* neon_vqshrun_nv8hi */
    case 2126:  /* neon_vqrshrnu_nv2di */
    case 2125:  /* neon_vqrshrns_nv2di */
    case 2124:  /* neon_vqshrnu_nv2di */
    case 2123:  /* neon_vqshrns_nv2di */
    case 2122:  /* neon_vqrshrnu_nv4si */
    case 2121:  /* neon_vqrshrns_nv4si */
    case 2120:  /* neon_vqshrnu_nv4si */
    case 2119:  /* neon_vqshrns_nv4si */
    case 2118:  /* neon_vqrshrnu_nv8hi */
    case 2117:  /* neon_vqrshrns_nv8hi */
    case 2116:  /* neon_vqshrnu_nv8hi */
    case 2115:  /* neon_vqshrns_nv8hi */
    case 2076:  /* neon_vqrshluv2di */
    case 2075:  /* neon_vqrshlsv2di */
    case 2074:  /* neon_vqshluv2di */
    case 2073:  /* neon_vqshlsv2di */
    case 2072:  /* neon_vqrshludi */
    case 2071:  /* neon_vqrshlsdi */
    case 2070:  /* neon_vqshludi */
    case 2069:  /* neon_vqshlsdi */
    case 2068:  /* neon_vqrshluv4si */
    case 2067:  /* neon_vqrshlsv4si */
    case 2066:  /* neon_vqshluv4si */
    case 2065:  /* neon_vqshlsv4si */
    case 2064:  /* neon_vqrshluv2si */
    case 2063:  /* neon_vqrshlsv2si */
    case 2062:  /* neon_vqshluv2si */
    case 2061:  /* neon_vqshlsv2si */
    case 2060:  /* neon_vqrshluv8hi */
    case 2059:  /* neon_vqrshlsv8hi */
    case 2058:  /* neon_vqshluv8hi */
    case 2057:  /* neon_vqshlsv8hi */
    case 2056:  /* neon_vqrshluv4hi */
    case 2055:  /* neon_vqrshlsv4hi */
    case 2054:  /* neon_vqshluv4hi */
    case 2053:  /* neon_vqshlsv4hi */
    case 2052:  /* neon_vqrshluv16qi */
    case 2051:  /* neon_vqrshlsv16qi */
    case 2050:  /* neon_vqshluv16qi */
    case 2049:  /* neon_vqshlsv16qi */
    case 2048:  /* neon_vqrshluv8qi */
    case 2047:  /* neon_vqrshlsv8qi */
    case 2046:  /* neon_vqshluv8qi */
    case 2045:  /* neon_vqshlsv8qi */
    case 1911:  /* neon_vqmovunv2di */
    case 1910:  /* neon_vqmovunv4si */
    case 1909:  /* neon_vqmovunv8hi */
    case 1908:  /* neon_vqmovnuv2di */
    case 1907:  /* neon_vqmovnsv2di */
    case 1906:  /* neon_vqmovnuv4si */
    case 1905:  /* neon_vqmovnsv4si */
    case 1904:  /* neon_vqmovnuv8hi */
    case 1903:  /* neon_vqmovnsv8hi */
      return CORTEX_A17_NEON_TYPE_NEON_SHIFT_IMM_COMPLEX;

    case 2506:  /* neon_vec_ushiftl_v2si */
    case 2505:  /* neon_vec_sshiftl_v2si */
    case 2504:  /* neon_vec_ushiftl_v4hi */
    case 2503:  /* neon_vec_sshiftl_v4hi */
    case 2502:  /* neon_vec_ushiftl_v8qi */
    case 2501:  /* neon_vec_sshiftl_v8qi */
    case 2488:  /* neon_vec_unpacku_hi_v4si */
    case 2487:  /* neon_vec_unpacks_hi_v4si */
    case 2486:  /* neon_vec_unpacku_hi_v8hi */
    case 2485:  /* neon_vec_unpacks_hi_v8hi */
    case 2484:  /* neon_vec_unpacku_hi_v16qi */
    case 2483:  /* neon_vec_unpacks_hi_v16qi */
    case 2482:  /* neon_vec_unpacku_lo_v4si */
    case 2481:  /* neon_vec_unpacks_lo_v4si */
    case 2480:  /* neon_vec_unpacku_lo_v8hi */
    case 2479:  /* neon_vec_unpacks_lo_v8hi */
    case 2478:  /* neon_vec_unpacku_lo_v16qi */
    case 2477:  /* neon_vec_unpacks_lo_v16qi */
    case 2170:  /* neon_vshllu_nv2si */
    case 2169:  /* neon_vshlls_nv2si */
    case 2168:  /* neon_vshllu_nv4hi */
    case 2167:  /* neon_vshlls_nv4hi */
    case 2166:  /* neon_vshllu_nv8qi */
    case 2165:  /* neon_vshlls_nv8qi */
    case 2140:  /* neon_vshl_nv2di */
    case 2139:  /* neon_vshl_ndi */
    case 2138:  /* neon_vshl_nv4si */
    case 2137:  /* neon_vshl_nv2si */
    case 2136:  /* neon_vshl_nv8hi */
    case 2135:  /* neon_vshl_nv4hi */
    case 2134:  /* neon_vshl_nv16qi */
    case 2133:  /* neon_vshl_nv8qi */
    case 2114:  /* neon_vrshrn_nv2di */
    case 2113:  /* neon_vshrn_nv2di */
    case 2112:  /* neon_vrshrn_nv4si */
    case 2111:  /* neon_vshrn_nv4si */
    case 2110:  /* neon_vrshrn_nv8hi */
    case 2109:  /* neon_vshrn_nv8hi */
    case 2108:  /* neon_vrshru_nv2di */
    case 2107:  /* neon_vrshrs_nv2di */
    case 2106:  /* neon_vshru_nv2di */
    case 2105:  /* neon_vshrs_nv2di */
    case 2104:  /* neon_vrshru_ndi */
    case 2103:  /* neon_vrshrs_ndi */
    case 2102:  /* neon_vshru_ndi */
    case 2101:  /* neon_vshrs_ndi */
    case 2100:  /* neon_vrshru_nv4si */
    case 2099:  /* neon_vrshrs_nv4si */
    case 2098:  /* neon_vshru_nv4si */
    case 2097:  /* neon_vshrs_nv4si */
    case 2096:  /* neon_vrshru_nv2si */
    case 2095:  /* neon_vrshrs_nv2si */
    case 2094:  /* neon_vshru_nv2si */
    case 2093:  /* neon_vshrs_nv2si */
    case 2092:  /* neon_vrshru_nv8hi */
    case 2091:  /* neon_vrshrs_nv8hi */
    case 2090:  /* neon_vshru_nv8hi */
    case 2089:  /* neon_vshrs_nv8hi */
    case 2088:  /* neon_vrshru_nv4hi */
    case 2087:  /* neon_vrshrs_nv4hi */
    case 2086:  /* neon_vshru_nv4hi */
    case 2085:  /* neon_vshrs_nv4hi */
    case 2084:  /* neon_vrshru_nv16qi */
    case 2083:  /* neon_vrshrs_nv16qi */
    case 2082:  /* neon_vshru_nv16qi */
    case 2081:  /* neon_vshrs_nv16qi */
    case 2080:  /* neon_vrshru_nv8qi */
    case 2079:  /* neon_vrshrs_nv8qi */
    case 2078:  /* neon_vshru_nv8qi */
    case 2077:  /* neon_vshrs_nv8qi */
    case 2044:  /* neon_vrshluv2di */
    case 2043:  /* neon_vrshlsv2di */
    case 2042:  /* neon_vshluv2di */
    case 2041:  /* neon_vshlsv2di */
    case 2040:  /* neon_vrshludi */
    case 2039:  /* neon_vrshlsdi */
    case 2038:  /* neon_vshludi */
    case 2037:  /* neon_vshlsdi */
    case 2036:  /* neon_vrshluv4si */
    case 2035:  /* neon_vrshlsv4si */
    case 2034:  /* neon_vshluv4si */
    case 2033:  /* neon_vshlsv4si */
    case 2032:  /* neon_vrshluv2si */
    case 2031:  /* neon_vrshlsv2si */
    case 2030:  /* neon_vshluv2si */
    case 2029:  /* neon_vshlsv2si */
    case 2028:  /* neon_vrshluv8hi */
    case 2027:  /* neon_vrshlsv8hi */
    case 2026:  /* neon_vshluv8hi */
    case 2025:  /* neon_vshlsv8hi */
    case 2024:  /* neon_vrshluv4hi */
    case 2023:  /* neon_vrshlsv4hi */
    case 2022:  /* neon_vshluv4hi */
    case 2021:  /* neon_vshlsv4hi */
    case 2020:  /* neon_vrshluv16qi */
    case 2019:  /* neon_vrshlsv16qi */
    case 2018:  /* neon_vshluv16qi */
    case 2017:  /* neon_vshlsv16qi */
    case 2016:  /* neon_vrshluv8qi */
    case 2015:  /* neon_vrshlsv8qi */
    case 2014:  /* neon_vshluv8qi */
    case 2013:  /* neon_vshlsv8qi */
    case 1917:  /* neon_vmovluv2si */
    case 1916:  /* neon_vmovlsv2si */
    case 1915:  /* neon_vmovluv4hi */
    case 1914:  /* neon_vmovlsv4hi */
    case 1913:  /* neon_vmovluv8qi */
    case 1912:  /* neon_vmovlsv8qi */
    case 1902:  /* neon_vmovnv2di */
    case 1901:  /* neon_vmovnv4si */
    case 1900:  /* neon_vmovnv8hi */
    case 1230:  /* lshrdi3_neon_imm_noclobber */
    case 1229:  /* ashrdi3_neon_imm_noclobber */
    case 1209:  /* vlshrv4si3_imm */
    case 1208:  /* vlshrv2si3_imm */
    case 1207:  /* vlshrv8hi3_imm */
    case 1206:  /* vlshrv4hi3_imm */
    case 1205:  /* vlshrv16qi3_imm */
    case 1204:  /* vlshrv8qi3_imm */
    case 1203:  /* vashrv4si3_imm */
    case 1202:  /* vashrv2si3_imm */
    case 1201:  /* vashrv8hi3_imm */
    case 1200:  /* vashrv4hi3_imm */
    case 1199:  /* vashrv16qi3_imm */
    case 1198:  /* vashrv8qi3_imm */
      return CORTEX_A17_NEON_TYPE_NEON_SHIFT_IMM_BASIC;

    case 2202:  /* neon_vrsrau_nv2di */
    case 2201:  /* neon_vrsras_nv2di */
    case 2200:  /* neon_vsrau_nv2di */
    case 2199:  /* neon_vsras_nv2di */
    case 2198:  /* neon_vrsrau_ndi */
    case 2197:  /* neon_vrsras_ndi */
    case 2196:  /* neon_vsrau_ndi */
    case 2195:  /* neon_vsras_ndi */
    case 2194:  /* neon_vrsrau_nv4si */
    case 2193:  /* neon_vrsras_nv4si */
    case 2192:  /* neon_vsrau_nv4si */
    case 2191:  /* neon_vsras_nv4si */
    case 2190:  /* neon_vrsrau_nv2si */
    case 2189:  /* neon_vrsras_nv2si */
    case 2188:  /* neon_vsrau_nv2si */
    case 2187:  /* neon_vsras_nv2si */
    case 2186:  /* neon_vrsrau_nv8hi */
    case 2185:  /* neon_vrsras_nv8hi */
    case 2184:  /* neon_vsrau_nv8hi */
    case 2183:  /* neon_vsras_nv8hi */
    case 2182:  /* neon_vrsrau_nv4hi */
    case 2181:  /* neon_vrsras_nv4hi */
    case 2180:  /* neon_vsrau_nv4hi */
    case 2179:  /* neon_vsras_nv4hi */
    case 2178:  /* neon_vrsrau_nv16qi */
    case 2177:  /* neon_vrsras_nv16qi */
    case 2176:  /* neon_vsrau_nv16qi */
    case 2175:  /* neon_vsras_nv16qi */
    case 2174:  /* neon_vrsrau_nv8qi */
    case 2173:  /* neon_vrsras_nv8qi */
    case 2172:  /* neon_vsrau_nv8qi */
    case 2171:  /* neon_vsras_nv8qi */
      return CORTEX_A17_NEON_TYPE_NEON_SHIFT_ACC;

    case 1971:  /* neon_vqdmlsl_lanev2si */
    case 1970:  /* neon_vqdmlsl_lanev4hi */
    case 1959:  /* neon_vqdmlal_lanev2si */
    case 1958:  /* neon_vqdmlal_lanev4hi */
    case 1442:  /* neon_vqdmlslv2si */
    case 1441:  /* neon_vqdmlslv4hi */
    case 1440:  /* neon_vqdmlalv2si */
    case 1439:  /* neon_vqdmlalv4hi */
    case 1438:  /* neon_vqrdmlshv4si */
    case 1437:  /* neon_vqrdmlahv4si */
    case 1436:  /* neon_vqrdmlshv8hi */
    case 1435:  /* neon_vqrdmlahv8hi */
    case 1434:  /* neon_vqrdmlshv2si */
    case 1433:  /* neon_vqrdmlahv2si */
    case 1432:  /* neon_vqrdmlshv4hi */
    case 1431:  /* neon_vqrdmlahv4hi */
      return CORTEX_A17_NEON_TYPE_NEON_SAT_MLA_LONG;

    case 1943:  /* neon_vqrdmlsh_lanev4si */
    case 1942:  /* neon_vqrdmlah_lanev4si */
    case 1941:  /* neon_vqrdmlsh_lanev8hi */
    case 1940:  /* neon_vqrdmlah_lanev8hi */
      return CORTEX_A17_NEON_TYPE_NEON_MLA_Q;

    case 1969:  /* neon_vmlslu_lanev2si */
    case 1968:  /* neon_vmlsls_lanev2si */
    case 1967:  /* neon_vmlslu_lanev4hi */
    case 1966:  /* neon_vmlsls_lanev4hi */
    case 1957:  /* neon_vmlalu_lanev2si */
    case 1956:  /* neon_vmlals_lanev2si */
    case 1955:  /* neon_vmlalu_lanev4hi */
    case 1954:  /* neon_vmlals_lanev4hi */
    case 1947:  /* neon_vqrdmlsh_lanev2si */
    case 1946:  /* neon_vqrdmlah_lanev2si */
    case 1945:  /* neon_vqrdmlsh_lanev4hi */
    case 1944:  /* neon_vqrdmlah_lanev4hi */
    case 1422:  /* neon_vmlsluv2si */
    case 1421:  /* neon_vmlslsv2si */
    case 1420:  /* neon_vmlsluv4hi */
    case 1419:  /* neon_vmlslsv4hi */
    case 1418:  /* neon_vmlsluv8qi */
    case 1417:  /* neon_vmlslsv8qi */
    case 1408:  /* neon_vmlaluv2si */
    case 1407:  /* neon_vmlalsv2si */
    case 1406:  /* neon_vmlaluv4hi */
    case 1405:  /* neon_vmlalsv4hi */
    case 1404:  /* neon_vmlaluv8qi */
    case 1403:  /* neon_vmlalsv8qi */
      return CORTEX_A17_NEON_TYPE_NEON_MLA;

    case 1939:  /* neon_vqrdmulh_lanev2si */
    case 1938:  /* neon_vqdmulh_lanev2si */
    case 1937:  /* neon_vqrdmulh_lanev4hi */
    case 1936:  /* neon_vqdmulh_lanev4hi */
    case 1935:  /* neon_vqrdmulh_lanev4si */
    case 1934:  /* neon_vqdmulh_lanev4si */
    case 1933:  /* neon_vqrdmulh_lanev8hi */
    case 1932:  /* neon_vqdmulh_lanev8hi */
    case 1430:  /* neon_vqrdmulhv4si */
    case 1429:  /* neon_vqdmulhv4si */
    case 1428:  /* neon_vqrdmulhv8hi */
    case 1427:  /* neon_vqdmulhv8hi */
    case 1393:  /* neon_vmulfv8hf */
      return CORTEX_A17_NEON_TYPE_NEON_MULTIPLY_Q;

    case 2518:  /* neon_vec_umult_v2si */
    case 2517:  /* neon_vec_smult_v2si */
    case 2516:  /* neon_vec_umult_v4hi */
    case 2515:  /* neon_vec_smult_v4hi */
    case 2514:  /* neon_vec_umult_v8qi */
    case 2513:  /* neon_vec_smult_v8qi */
    case 2500:  /* neon_vec_umult_hi_v4si */
    case 2499:  /* neon_vec_smult_hi_v4si */
    case 2498:  /* neon_vec_umult_hi_v8hi */
    case 2497:  /* neon_vec_smult_hi_v8hi */
    case 2496:  /* neon_vec_umult_hi_v16qi */
    case 2495:  /* neon_vec_smult_hi_v16qi */
    case 2494:  /* neon_vec_umult_lo_v4si */
    case 2493:  /* neon_vec_smult_lo_v4si */
    case 2492:  /* neon_vec_umult_lo_v8hi */
    case 2491:  /* neon_vec_smult_lo_v8hi */
    case 2490:  /* neon_vec_umult_lo_v16qi */
    case 2489:  /* neon_vec_smult_lo_v16qi */
    case 1931:  /* neon_vqdmull_lanev2si */
    case 1930:  /* neon_vqdmull_lanev4hi */
    case 1929:  /* neon_vmullu_lanev2si */
    case 1928:  /* neon_vmulls_lanev2si */
    case 1927:  /* neon_vmullu_lanev4hi */
    case 1926:  /* neon_vmulls_lanev4hi */
    case 1453:  /* neon_vqdmullv2si */
    case 1452:  /* neon_vqdmullv4hi */
    case 1451:  /* neon_vmullpv2si */
    case 1450:  /* neon_vmulluv2si */
    case 1449:  /* neon_vmullsv2si */
    case 1448:  /* neon_vmullpv4hi */
    case 1447:  /* neon_vmulluv4hi */
    case 1446:  /* neon_vmullsv4hi */
    case 1445:  /* neon_vmullpv8qi */
    case 1444:  /* neon_vmulluv8qi */
    case 1443:  /* neon_vmullsv8qi */
    case 1426:  /* neon_vqrdmulhv2si */
    case 1425:  /* neon_vqdmulhv2si */
    case 1424:  /* neon_vqrdmulhv4hi */
    case 1423:  /* neon_vqdmulhv4hi */
    case 1394:  /* neon_vmulfv4hf */
      return CORTEX_A17_NEON_TYPE_NEON_MULTIPLY;

    case 1760:  /* neon_vqnegv4si */
    case 1759:  /* neon_vqnegv2si */
    case 1758:  /* neon_vqnegv8hi */
    case 1757:  /* neon_vqnegv4hi */
    case 1756:  /* neon_vqnegv16qi */
    case 1755:  /* neon_vqnegv8qi */
    case 1749:  /* neon_vqabsv4si */
    case 1748:  /* neon_vqabsv2si */
    case 1747:  /* neon_vqabsv8hi */
    case 1746:  /* neon_vqabsv4hi */
    case 1745:  /* neon_vqabsv16qi */
    case 1744:  /* neon_vqabsv8qi */
    case 1731:  /* neon_vpminuv2si */
    case 1730:  /* neon_vpminsv2si */
    case 1729:  /* neon_vpmaxuv2si */
    case 1728:  /* neon_vpmaxsv2si */
    case 1727:  /* neon_vpminuv4hi */
    case 1726:  /* neon_vpminsv4hi */
    case 1725:  /* neon_vpmaxuv4hi */
    case 1724:  /* neon_vpmaxsv4hi */
    case 1723:  /* neon_vpminuv8qi */
    case 1722:  /* neon_vpminsv8qi */
    case 1721:  /* neon_vpmaxuv8qi */
    case 1720:  /* neon_vpmaxsv8qi */
    case 1687:  /* neon_vpminfv4hf */
    case 1686:  /* neon_vpmaxfv4hf */
    case 1677:  /* neon_vminuv4si */
    case 1676:  /* neon_vminsv4si */
    case 1675:  /* neon_vmaxuv4si */
    case 1674:  /* neon_vmaxsv4si */
    case 1673:  /* neon_vminuv2si */
    case 1672:  /* neon_vminsv2si */
    case 1671:  /* neon_vmaxuv2si */
    case 1670:  /* neon_vmaxsv2si */
    case 1669:  /* neon_vminuv8hi */
    case 1668:  /* neon_vminsv8hi */
    case 1667:  /* neon_vmaxuv8hi */
    case 1666:  /* neon_vmaxsv8hi */
    case 1665:  /* neon_vminuv4hi */
    case 1664:  /* neon_vminsv4hi */
    case 1663:  /* neon_vmaxuv4hi */
    case 1662:  /* neon_vmaxsv4hi */
    case 1661:  /* neon_vminuv16qi */
    case 1660:  /* neon_vminsv16qi */
    case 1659:  /* neon_vmaxuv16qi */
    case 1658:  /* neon_vmaxsv16qi */
    case 1657:  /* neon_vminuv8qi */
    case 1656:  /* neon_vminsv8qi */
    case 1655:  /* neon_vmaxuv8qi */
    case 1654:  /* neon_vmaxsv8qi */
    case 1583:  /* neon_vcgeuv4si */
    case 1582:  /* neon_vcgtuv4si */
    case 1581:  /* neon_vcgeuv2si */
    case 1580:  /* neon_vcgtuv2si */
    case 1579:  /* neon_vcgeuv8hi */
    case 1578:  /* neon_vcgtuv8hi */
    case 1577:  /* neon_vcgeuv4hi */
    case 1576:  /* neon_vcgtuv4hi */
    case 1575:  /* neon_vcgeuv16qi */
    case 1574:  /* neon_vcgtuv16qi */
    case 1573:  /* neon_vcgeuv8qi */
    case 1572:  /* neon_vcgtuv8qi */
    case 1501:  /* neon_vrsubhnv2di */
    case 1500:  /* neon_vsubhnv2di */
    case 1499:  /* neon_vrsubhnv4si */
    case 1498:  /* neon_vsubhnv4si */
    case 1497:  /* neon_vrsubhnv8hi */
    case 1496:  /* neon_vsubhnv8hi */
    case 1495:  /* neon_vhsubuv4si */
    case 1494:  /* neon_vhsubsv4si */
    case 1493:  /* neon_vhsubuv2si */
    case 1492:  /* neon_vhsubsv2si */
    case 1491:  /* neon_vhsubuv8hi */
    case 1490:  /* neon_vhsubsv8hi */
    case 1489:  /* neon_vhsubuv4hi */
    case 1488:  /* neon_vhsubsv4hi */
    case 1487:  /* neon_vhsubuv16qi */
    case 1486:  /* neon_vhsubsv16qi */
    case 1485:  /* neon_vhsubuv8qi */
    case 1484:  /* neon_vhsubsv8qi */
    case 1483:  /* neon_vqsubuv2di */
    case 1482:  /* neon_vqsubsv2di */
    case 1481:  /* neon_vqsubudi */
    case 1480:  /* neon_vqsubsdi */
    case 1479:  /* neon_vqsubuv4si */
    case 1478:  /* neon_vqsubsv4si */
    case 1477:  /* neon_vqsubuv2si */
    case 1476:  /* neon_vqsubsv2si */
    case 1475:  /* neon_vqsubuv8hi */
    case 1474:  /* neon_vqsubsv8hi */
    case 1473:  /* neon_vqsubuv4hi */
    case 1472:  /* neon_vqsubsv4hi */
    case 1471:  /* neon_vqsubuv16qi */
    case 1470:  /* neon_vqsubsv16qi */
    case 1469:  /* neon_vqsubuv8qi */
    case 1468:  /* neon_vqsubsv8qi */
    case 1388:  /* neon_vraddhnv2di */
    case 1387:  /* neon_vaddhnv2di */
    case 1386:  /* neon_vraddhnv4si */
    case 1385:  /* neon_vaddhnv4si */
    case 1384:  /* neon_vraddhnv8hi */
    case 1383:  /* neon_vaddhnv8hi */
    case 1382:  /* neon_vqadduv2di */
    case 1381:  /* neon_vqaddsv2di */
    case 1380:  /* neon_vqaddudi */
    case 1379:  /* neon_vqaddsdi */
    case 1378:  /* neon_vqadduv4si */
    case 1377:  /* neon_vqaddsv4si */
    case 1376:  /* neon_vqadduv2si */
    case 1375:  /* neon_vqaddsv2si */
    case 1374:  /* neon_vqadduv8hi */
    case 1373:  /* neon_vqaddsv8hi */
    case 1372:  /* neon_vqadduv4hi */
    case 1371:  /* neon_vqaddsv4hi */
    case 1370:  /* neon_vqadduv16qi */
    case 1369:  /* neon_vqaddsv16qi */
    case 1368:  /* neon_vqadduv8qi */
    case 1367:  /* neon_vqaddsv8qi */
    case 1366:  /* neon_vhadduv4si */
    case 1365:  /* neon_vhaddsv4si */
    case 1364:  /* neon_vrhadduv4si */
    case 1363:  /* neon_vrhaddsv4si */
    case 1362:  /* neon_vhadduv2si */
    case 1361:  /* neon_vhaddsv2si */
    case 1360:  /* neon_vrhadduv2si */
    case 1359:  /* neon_vrhaddsv2si */
    case 1358:  /* neon_vhadduv8hi */
    case 1357:  /* neon_vhaddsv8hi */
    case 1356:  /* neon_vrhadduv8hi */
    case 1355:  /* neon_vrhaddsv8hi */
    case 1354:  /* neon_vhadduv4hi */
    case 1353:  /* neon_vhaddsv4hi */
    case 1352:  /* neon_vrhadduv4hi */
    case 1351:  /* neon_vrhaddsv4hi */
    case 1350:  /* neon_vhadduv16qi */
    case 1349:  /* neon_vhaddsv16qi */
    case 1348:  /* neon_vrhadduv16qi */
    case 1347:  /* neon_vrhaddsv16qi */
    case 1346:  /* neon_vhadduv8qi */
    case 1345:  /* neon_vhaddsv8qi */
    case 1344:  /* neon_vrhadduv8qi */
    case 1343:  /* neon_vrhaddsv8qi */
    case 1328:  /* *us_subv2sf_neon */
    case 1327:  /* *us_subv2si_neon */
    case 1326:  /* *us_subv4hi_neon */
    case 1325:  /* *us_subv8qi_neon */
    case 1324:  /* *ss_subv2sf_neon */
    case 1323:  /* *ss_subv2si_neon */
    case 1322:  /* *ss_subv4hi_neon */
    case 1321:  /* *ss_subv8qi_neon */
    case 1320:  /* *us_addv2sf_neon */
    case 1319:  /* *us_addv2si_neon */
    case 1318:  /* *us_addv4hi_neon */
    case 1317:  /* *us_addv8qi_neon */
    case 1316:  /* *ss_addv2sf_neon */
    case 1315:  /* *ss_addv2si_neon */
    case 1314:  /* *ss_addv4hi_neon */
    case 1313:  /* *ss_addv8qi_neon */
    case 1312:  /* neon_vpumaxv2si */
    case 1311:  /* neon_vpumaxv4hi */
    case 1310:  /* neon_vpumaxv8qi */
    case 1309:  /* neon_vpuminv2si */
    case 1308:  /* neon_vpuminv4hi */
    case 1307:  /* neon_vpuminv8qi */
    case 1292:  /* quad_halves_umaxv16qi */
    case 1291:  /* quad_halves_uminv16qi */
    case 1290:  /* quad_halves_smaxv16qi */
    case 1289:  /* quad_halves_sminv16qi */
    case 1287:  /* quad_halves_umaxv8hi */
    case 1286:  /* quad_halves_uminv8hi */
    case 1285:  /* quad_halves_smaxv8hi */
    case 1284:  /* quad_halves_sminv8hi */
    case 1279:  /* quad_halves_umaxv4si */
    case 1278:  /* quad_halves_uminv4si */
    case 1277:  /* quad_halves_smaxv4si */
    case 1276:  /* quad_halves_sminv4si */
    case 1175:  /* *umaxv4si3_neon */
    case 1174:  /* *umaxv2si3_neon */
    case 1173:  /* *umaxv8hi3_neon */
    case 1172:  /* *umaxv4hi3_neon */
    case 1171:  /* *umaxv16qi3_neon */
    case 1170:  /* *umaxv8qi3_neon */
    case 1169:  /* *uminv4si3_neon */
    case 1168:  /* *uminv2si3_neon */
    case 1167:  /* *uminv8hi3_neon */
    case 1166:  /* *uminv4hi3_neon */
    case 1165:  /* *uminv16qi3_neon */
    case 1164:  /* *uminv8qi3_neon */
    case 1149:  /* negv4hf2 */
    case 1148:  /* absv4hf2 */
    case 1147:  /* negv8hf2 */
    case 1146:  /* absv8hf2 */
      return CORTEX_A17_NEON_TYPE_NEON_ARITH_COMPLEX;

    case 1707:  /* neon_vpaddluv4si */
    case 1706:  /* neon_vpaddlsv4si */
    case 1705:  /* neon_vpaddluv2si */
    case 1704:  /* neon_vpaddlsv2si */
    case 1703:  /* neon_vpaddluv8hi */
    case 1702:  /* neon_vpaddlsv8hi */
    case 1701:  /* neon_vpaddluv4hi */
    case 1700:  /* neon_vpaddlsv4hi */
    case 1699:  /* neon_vpaddluv16qi */
    case 1698:  /* neon_vpaddlsv16qi */
    case 1697:  /* neon_vpaddluv8qi */
    case 1696:  /* neon_vpaddlsv8qi */
    case 1613:  /* neon_vtstv4si */
    case 1612:  /* neon_vtstv2si */
    case 1611:  /* neon_vtstv8hi */
    case 1610:  /* neon_vtstv4hi */
    case 1609:  /* neon_vtstv16qi */
    case 1608:  /* neon_vtstv8qi */
    case 1467:  /* neon_vsubwuv2si */
    case 1466:  /* neon_vsubwsv2si */
    case 1465:  /* neon_vsubwuv4hi */
    case 1464:  /* neon_vsubwsv4hi */
    case 1463:  /* neon_vsubwuv8qi */
    case 1462:  /* neon_vsubwsv8qi */
    case 1461:  /* neon_vsubluv2si */
    case 1460:  /* neon_vsublsv2si */
    case 1459:  /* neon_vsubluv4hi */
    case 1458:  /* neon_vsublsv4hi */
    case 1457:  /* neon_vsubluv8qi */
    case 1456:  /* neon_vsublsv8qi */
    case 1342:  /* neon_vaddwuv2si */
    case 1341:  /* neon_vaddwsv2si */
    case 1340:  /* neon_vaddwuv4hi */
    case 1339:  /* neon_vaddwsv4hi */
    case 1338:  /* neon_vaddwuv8qi */
    case 1337:  /* neon_vaddwsv8qi */
    case 1336:  /* neon_vaddluv2si */
    case 1335:  /* neon_vaddlsv2si */
    case 1334:  /* neon_vaddluv4hi */
    case 1333:  /* neon_vaddlsv4hi */
    case 1332:  /* neon_vaddluv8qi */
    case 1331:  /* neon_vaddlsv8qi */
    case 1298:  /* neon_vpaddv4hf */
    case 1293:  /* arm_reduc_plus_internal_v2di */
    case 1288:  /* quad_halves_plusv16qi */
    case 1283:  /* quad_halves_plusv8hi */
    case 1275:  /* quad_halves_plusv4si */
    case 1274:  /* widen_usumv2si3 */
    case 1273:  /* widen_usumv4hi3 */
    case 1272:  /* widen_usumv8qi3 */
    case 1271:  /* vec_sel_widen_usum_hiv4siv2si3 */
    case 1270:  /* vec_sel_widen_usum_hiv4siv4hi3 */
    case 1269:  /* vec_sel_widen_usum_hiv4siv8qi3 */
    case 1268:  /* vec_sel_widen_usum_hiv8hiv2si3 */
    case 1267:  /* vec_sel_widen_usum_hiv8hiv4hi3 */
    case 1266:  /* vec_sel_widen_usum_hiv8hiv8qi3 */
    case 1265:  /* vec_sel_widen_usum_hiv16qiv2si3 */
    case 1264:  /* vec_sel_widen_usum_hiv16qiv4hi3 */
    case 1263:  /* vec_sel_widen_usum_hiv16qiv8qi3 */
    case 1262:  /* vec_sel_widen_usum_lov4siv2si3 */
    case 1261:  /* vec_sel_widen_usum_lov4siv4hi3 */
    case 1260:  /* vec_sel_widen_usum_lov4siv8qi3 */
    case 1259:  /* vec_sel_widen_usum_lov8hiv2si3 */
    case 1258:  /* vec_sel_widen_usum_lov8hiv4hi3 */
    case 1257:  /* vec_sel_widen_usum_lov8hiv8qi3 */
    case 1256:  /* vec_sel_widen_usum_lov16qiv2si3 */
    case 1255:  /* vec_sel_widen_usum_lov16qiv4hi3 */
    case 1254:  /* vec_sel_widen_usum_lov16qiv8qi3 */
    case 1253:  /* widen_ssumv2si3 */
    case 1252:  /* widen_ssumv4hi3 */
    case 1251:  /* widen_ssumv8qi3 */
    case 1250:  /* vec_sel_widen_ssum_hiv4siv2si3 */
    case 1249:  /* vec_sel_widen_ssum_hiv4siv4hi3 */
    case 1248:  /* vec_sel_widen_ssum_hiv4siv8qi3 */
    case 1247:  /* vec_sel_widen_ssum_hiv8hiv2si3 */
    case 1246:  /* vec_sel_widen_ssum_hiv8hiv4hi3 */
    case 1245:  /* vec_sel_widen_ssum_hiv8hiv8qi3 */
    case 1244:  /* vec_sel_widen_ssum_hiv16qiv2si3 */
    case 1243:  /* vec_sel_widen_ssum_hiv16qiv4hi3 */
    case 1242:  /* vec_sel_widen_ssum_hiv16qiv8qi3 */
    case 1241:  /* vec_sel_widen_ssum_lov4siv2si3 */
    case 1240:  /* vec_sel_widen_ssum_lov4siv4hi3 */
    case 1239:  /* vec_sel_widen_ssum_lov4siv8qi3 */
    case 1238:  /* vec_sel_widen_ssum_lov8hiv2si3 */
    case 1237:  /* vec_sel_widen_ssum_lov8hiv4hi3 */
    case 1236:  /* vec_sel_widen_ssum_lov8hiv8qi3 */
    case 1235:  /* vec_sel_widen_ssum_lov16qiv2si3 */
    case 1234:  /* vec_sel_widen_ssum_lov16qiv4hi3 */
    case 1233:  /* vec_sel_widen_ssum_lov16qiv8qi3 */
    case 1117:  /* xorv2di3 */
    case 1116:  /* xorv4sf3 */
    case 1115:  /* xorv2sf3 */
    case 1114:  /* xorv8hf3 */
    case 1113:  /* xorv4hf3 */
    case 1112:  /* xorv4si3 */
    case 1111:  /* xorv2si3 */
    case 1110:  /* xorv8hi3 */
    case 1109:  /* xorv4hi3 */
    case 1108:  /* xorv16qi3 */
    case 1107:  /* xorv8qi3 */
    case 1105:  /* bicv2di3_neon */
    case 1104:  /* bicv4sf3_neon */
    case 1103:  /* bicv2sf3_neon */
    case 1102:  /* bicv8hf3_neon */
    case 1101:  /* bicv4hf3_neon */
    case 1100:  /* bicv4si3_neon */
    case 1099:  /* bicv2si3_neon */
    case 1098:  /* bicv8hi3_neon */
    case 1097:  /* bicv4hi3_neon */
    case 1096:  /* bicv16qi3_neon */
    case 1095:  /* bicv8qi3_neon */
    case 1093:  /* ornv2di3_neon */
    case 1092:  /* ornv4sf3_neon */
    case 1091:  /* ornv2sf3_neon */
    case 1090:  /* ornv8hf3_neon */
    case 1089:  /* ornv4hf3_neon */
    case 1088:  /* ornv4si3_neon */
    case 1087:  /* ornv2si3_neon */
    case 1086:  /* ornv8hi3_neon */
    case 1085:  /* ornv4hi3_neon */
    case 1084:  /* ornv16qi3_neon */
    case 1083:  /* ornv8qi3_neon */
    case 1082:  /* andv2di3 */
    case 1081:  /* andv4sf3 */
    case 1080:  /* andv2sf3 */
    case 1079:  /* andv8hf3 */
    case 1078:  /* andv4hf3 */
    case 1077:  /* andv4si3 */
    case 1076:  /* andv2si3 */
    case 1075:  /* andv8hi3 */
    case 1074:  /* andv4hi3 */
    case 1073:  /* andv16qi3 */
    case 1072:  /* andv8qi3 */
    case 1071:  /* iorv2di3 */
    case 1070:  /* iorv4sf3 */
    case 1069:  /* iorv2sf3 */
    case 1068:  /* iorv8hf3 */
    case 1067:  /* iorv4hf3 */
    case 1066:  /* iorv4si3 */
    case 1065:  /* iorv2si3 */
    case 1064:  /* iorv8hi3 */
    case 1063:  /* iorv4hi3 */
    case 1062:  /* iorv16qi3 */
    case 1061:  /* iorv8qi3 */
    case 997:  /* subv4hf3_fp16 */
    case 996:  /* subv8hf3_fp16 */
      return CORTEX_A17_NEON_TYPE_NEON_ARITH_BASIC;

    case 1647:  /* neon_vabauv4si */
    case 1646:  /* neon_vabasv4si */
    case 1643:  /* neon_vabauv8hi */
    case 1642:  /* neon_vabasv8hi */
    case 1639:  /* neon_vabauv16qi */
    case 1638:  /* neon_vabasv16qi */
      return CORTEX_A17_NEON_TYPE_NEON_ARITH_ACC_Q;

    case 1719:  /* neon_vpadaluv4si */
    case 1718:  /* neon_vpadalsv4si */
    case 1717:  /* neon_vpadaluv2si */
    case 1716:  /* neon_vpadalsv2si */
    case 1715:  /* neon_vpadaluv8hi */
    case 1714:  /* neon_vpadalsv8hi */
    case 1713:  /* neon_vpadaluv4hi */
    case 1712:  /* neon_vpadalsv4hi */
    case 1711:  /* neon_vpadaluv16qi */
    case 1710:  /* neon_vpadalsv16qi */
    case 1709:  /* neon_vpadaluv8qi */
    case 1708:  /* neon_vpadalsv8qi */
    case 1653:  /* neon_vabaluv2si */
    case 1652:  /* neon_vabalsv2si */
    case 1651:  /* neon_vabaluv4hi */
    case 1650:  /* neon_vabalsv4hi */
    case 1649:  /* neon_vabaluv8qi */
    case 1648:  /* neon_vabalsv8qi */
    case 1645:  /* neon_vabauv2si */
    case 1644:  /* neon_vabasv2si */
    case 1641:  /* neon_vabauv4hi */
    case 1640:  /* neon_vabasv4hi */
    case 1637:  /* neon_vabauv8qi */
    case 1636:  /* neon_vabasv8qi */
      return CORTEX_A17_NEON_TYPE_NEON_ARITH_ACC;

    case 1626:  /* neon_vabdv8hf */
    case 1625:  /* neon_vabduv4si */
    case 1624:  /* neon_vabdsv4si */
    case 1621:  /* neon_vabduv8hi */
    case 1620:  /* neon_vabdsv8hi */
    case 1617:  /* neon_vabduv16qi */
    case 1616:  /* neon_vabdsv16qi */
      return CORTEX_A17_NEON_TYPE_NEON_ABD_Q;

    case 1635:  /* neon_vabdluv2si */
    case 1634:  /* neon_vabdlsv2si */
    case 1633:  /* neon_vabdluv4hi */
    case 1632:  /* neon_vabdlsv4hi */
    case 1631:  /* neon_vabdluv8qi */
    case 1630:  /* neon_vabdlsv8qi */
    case 1627:  /* neon_vabdv4hf */
    case 1623:  /* neon_vabduv2si */
    case 1622:  /* neon_vabdsv2si */
    case 1619:  /* neon_vabduv4hi */
    case 1618:  /* neon_vabdsv4hi */
    case 1615:  /* neon_vabduv8qi */
    case 1614:  /* neon_vabdsv8qi */
      return CORTEX_A17_NEON_TYPE_NEON_ABD;

    default:
      return CORTEX_A17_NEON_TYPE_UNKNOWN;

    }
}

enum attr_cortex_a15_neon_type
get_attr_cortex_a15_neon_type (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  enum attr_type cached_type ATTRIBUTE_UNUSED;

  switch (recog_memoized (insn))
    {
    case 2546:  /* neon_vabdv2di_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2545:  /* neon_vabdv4sf_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2544:  /* neon_vabdv2sf_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ABD;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH;
        }

    case 2543:  /* neon_vabdv8hf_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2542:  /* neon_vabdv4hf_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ABD;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH;
        }

    case 2541:  /* neon_vabdv4si_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2540:  /* neon_vabdv2si_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ABD;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH;
        }

    case 2539:  /* neon_vabdv8hi_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2538:  /* neon_vabdv4hi_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ABD;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH;
        }

    case 2537:  /* neon_vabdv16qi_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2536:  /* neon_vabdv8qi_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ABD;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH;
        }

    case 2535:  /* neon_vabdv2di_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2534:  /* neon_vabdv4sf_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2533:  /* neon_vabdv2sf_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ABD;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH;
        }

    case 2532:  /* neon_vabdv8hf_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2531:  /* neon_vabdv4hf_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ABD;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH;
        }

    case 2530:  /* neon_vabdv4si_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2529:  /* neon_vabdv2si_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ABD;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH;
        }

    case 2528:  /* neon_vabdv8hi_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2527:  /* neon_vabdv4hi_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ABD;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH;
        }

    case 2526:  /* neon_vabdv16qi_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ABD_Q;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 2525:  /* neon_vabdv8qi_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ABD;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH;
        }

    case 2457:  /* neon_vst4di */
      if ((64) == (64))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_D;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_G;
        }

    case 2456:  /* neon_vst4v2sf */
    case 2455:  /* neon_vst4v2si */
      if ((32) == (64))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_D;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_G;
        }

    case 2454:  /* neon_vst4v4hf */
    case 2453:  /* neon_vst4v4hi */
      if ((16) == (64))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_D;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_G;
        }

    case 2452:  /* neon_vst4v8qi */
      if ((8) == (64))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_D;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_G;
        }

    case 2401:  /* neon_vst3di */
      if ((64) == (64))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_C;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_F;
        }

    case 2400:  /* neon_vst3v2sf */
    case 2399:  /* neon_vst3v2si */
      if ((32) == (64))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_C;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_F;
        }

    case 2398:  /* neon_vst3v4hf */
    case 2397:  /* neon_vst3v4hi */
      if ((16) == (64))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_C;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_F;
        }

    case 2396:  /* neon_vst3v8qi */
      if ((8) == (64))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_C;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_F;
        }

    case 2451:  /* neon_vld4_dupdi */
    case 2395:  /* neon_vld3_dupdi */
      if (! ((1) > (1)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_E;
        }

    case 2450:  /* neon_vld4_dupv2sf */
    case 2449:  /* neon_vld4_dupv2si */
    case 2394:  /* neon_vld3_dupv2sf */
    case 2393:  /* neon_vld3_dupv2si */
      if (! ((2) > (1)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_E;
        }

    case 2448:  /* neon_vld4_dupv4hf */
    case 2447:  /* neon_vld4_dupv4hi */
    case 2392:  /* neon_vld3_dupv4hf */
    case 2391:  /* neon_vld3_dupv4hi */
      if (! ((4) > (1)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_E;
        }

    case 2446:  /* neon_vld4_dupv8qi */
    case 2390:  /* neon_vld3_dupv8qi */
      if (! ((8) > (1)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_E;
        }

    case 2426:  /* neon_vld4di */
    case 2370:  /* neon_vld3di */
      if ((64) == (64))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_B;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_D;
        }

    case 2425:  /* neon_vld4v2sf */
    case 2424:  /* neon_vld4v2si */
    case 2369:  /* neon_vld3v2sf */
    case 2368:  /* neon_vld3v2si */
      if ((32) == (64))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_B;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_D;
        }

    case 2423:  /* neon_vld4v4hf */
    case 2422:  /* neon_vld4v4hi */
    case 2367:  /* neon_vld3v4hf */
    case 2366:  /* neon_vld3v4hi */
      if ((16) == (64))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_B;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_D;
        }

    case 2421:  /* neon_vld4v8qi */
    case 2365:  /* neon_vld3v8qi */
      if ((8) == (64))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_B;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_D;
        }

    case 2350:  /* neon_vst2di */
      if ((64) == (64))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_B;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_E;
        }

    case 2349:  /* neon_vst2v2sf */
    case 2348:  /* neon_vst2v2si */
      if ((32) == (64))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_B;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_E;
        }

    case 2347:  /* neon_vst2v4hf */
    case 2346:  /* neon_vst2v4hi */
      if ((16) == (64))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_B;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_E;
        }

    case 2345:  /* neon_vst2v8qi */
      if ((8) == (64))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_B;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_E;
        }

    case 2344:  /* neon_vld2_dupdi */
      if (! ((1) > (1)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_C;
        }

    case 2343:  /* neon_vld2_dupv2sf */
    case 2342:  /* neon_vld2_dupv2si */
      if (! ((2) > (1)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_C;
        }

    case 2341:  /* neon_vld2_dupv4hf */
    case 2340:  /* neon_vld2_dupv4hi */
      if (! ((4) > (1)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_C;
        }

    case 2339:  /* neon_vld2_dupv8qi */
      if (! ((8) > (1)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_C;
        }

    case 2324:  /* neon_vld2di */
      if ((64) == (64))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_C;
        }

    case 2323:  /* neon_vld2v2sf */
    case 2322:  /* neon_vld2v2si */
      if ((32) == (64))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_C;
        }

    case 2321:  /* neon_vld2v4hf */
    case 2320:  /* neon_vld2v4hi */
      if ((16) == (64))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_C;
        }

    case 2319:  /* neon_vld2v8qi */
      if ((8) == (64))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_A;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_C;
        }

    case 1812:  /* neon_vdup_nv4sf */
    case 1811:  /* neon_vdup_nv4si */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_BITOPS;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FROM_GP_Q;
        }

    case 1810:  /* neon_vdup_nv2sf */
    case 1809:  /* neon_vdup_nv2si */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_BITOPS;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FROM_GP;
        }

    case 1556:  /* neon_vcltv8hf_fp16insn */
    case 1555:  /* neon_vclev8hf_fp16insn */
    case 1554:  /* neon_vcgev8hf_fp16insn */
    case 1553:  /* neon_vcgtv8hf_fp16insn */
    case 1552:  /* neon_vceqv8hf_fp16insn */
    case 1541:  /* neon_vcltv4sf_insn */
    case 1540:  /* neon_vclev4sf_insn */
    case 1539:  /* neon_vcgev4sf_insn */
    case 1538:  /* neon_vcgtv4sf_insn */
    case 1537:  /* neon_vceqv4sf_insn */
    case 1531:  /* neon_vcltv4si_insn */
    case 1530:  /* neon_vclev4si_insn */
    case 1529:  /* neon_vcgev4si_insn */
    case 1528:  /* neon_vcgtv4si_insn */
    case 1527:  /* neon_vceqv4si_insn */
    case 1521:  /* neon_vcltv8hi_insn */
    case 1520:  /* neon_vclev8hi_insn */
    case 1519:  /* neon_vcgev8hi_insn */
    case 1518:  /* neon_vcgtv8hi_insn */
    case 1517:  /* neon_vceqv8hi_insn */
    case 1511:  /* neon_vcltv16qi_insn */
    case 1510:  /* neon_vclev16qi_insn */
    case 1509:  /* neon_vcgev16qi_insn */
    case 1508:  /* neon_vcgtv16qi_insn */
    case 1507:  /* neon_vceqv16qi_insn */
      if (((cached_type = get_attr_type (insn)) == TYPE_NEON_COMPARE_Q) || (cached_type == TYPE_NEON_COMPARE_ZERO_Q))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ARITH_COMPLEX;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_UNKNOWN;
        }

    case 1561:  /* neon_vcltv4hf_fp16insn */
    case 1560:  /* neon_vclev4hf_fp16insn */
    case 1559:  /* neon_vcgev4hf_fp16insn */
    case 1558:  /* neon_vcgtv4hf_fp16insn */
    case 1557:  /* neon_vceqv4hf_fp16insn */
    case 1536:  /* neon_vcltv2sf_insn */
    case 1535:  /* neon_vclev2sf_insn */
    case 1534:  /* neon_vcgev2sf_insn */
    case 1533:  /* neon_vcgtv2sf_insn */
    case 1532:  /* neon_vceqv2sf_insn */
    case 1526:  /* neon_vcltv2si_insn */
    case 1525:  /* neon_vclev2si_insn */
    case 1524:  /* neon_vcgev2si_insn */
    case 1523:  /* neon_vcgtv2si_insn */
    case 1522:  /* neon_vceqv2si_insn */
    case 1516:  /* neon_vcltv4hi_insn */
    case 1515:  /* neon_vclev4hi_insn */
    case 1514:  /* neon_vcgev4hi_insn */
    case 1513:  /* neon_vcgtv4hi_insn */
    case 1512:  /* neon_vceqv4hi_insn */
    case 1506:  /* neon_vcltv8qi_insn */
    case 1505:  /* neon_vclev8qi_insn */
    case 1504:  /* neon_vcgev8qi_insn */
    case 1503:  /* neon_vcgtv8qi_insn */
    case 1502:  /* neon_vceqv8qi_insn */
      if (((cached_type = get_attr_type (insn)) == TYPE_NEON_COMPARE) || (cached_type == TYPE_NEON_COMPARE_ZERO))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ARITH_COMPLEX;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_UNKNOWN;
        }

    case 1225:  /* ashldi3_neon_noclobber */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_SHIFT_IMM_BASIC;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_SHIFT_REG_BASIC;
        }

    case 1224:  /* neon_load_count */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FROM_GP;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_A;
        }

    case 1197:  /* vashlv4si3 */
    case 1195:  /* vashlv8hi3 */
    case 1193:  /* vashlv16qi3 */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_SHIFT_IMM_BASIC;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_SHIFT_REG_BASIC_Q;
        }

    case 1196:  /* vashlv2si3 */
    case 1194:  /* vashlv4hi3 */
    case 1192:  /* vashlv8qi3 */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_SHIFT_IMM_BASIC;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_SHIFT_REG_BASIC;
        }

    case 1306:  /* neon_vpsmaxv2sf */
    case 1302:  /* neon_vpsminv2sf */
    case 1191:  /* *smaxv4sf3_neon */
    case 1190:  /* *smaxv2sf3_neon */
    case 1183:  /* *sminv4sf3_neon */
    case 1182:  /* *sminv2sf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ARITH_COMPLEX;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH;
        }

    case 1305:  /* neon_vpsmaxv2si */
    case 1304:  /* neon_vpsmaxv4hi */
    case 1303:  /* neon_vpsmaxv8qi */
    case 1301:  /* neon_vpsminv2si */
    case 1300:  /* neon_vpsminv4hi */
    case 1299:  /* neon_vpsminv8qi */
    case 1189:  /* *smaxv4si3_neon */
    case 1188:  /* *smaxv2si3_neon */
    case 1187:  /* *smaxv8hi3_neon */
    case 1186:  /* *smaxv4hi3_neon */
    case 1185:  /* *smaxv16qi3_neon */
    case 1184:  /* *smaxv8qi3_neon */
    case 1181:  /* *sminv4si3_neon */
    case 1180:  /* *sminv2si3_neon */
    case 1179:  /* *sminv8hi3_neon */
    case 1178:  /* *sminv4hi3_neon */
    case 1177:  /* *sminv16qi3_neon */
    case 1176:  /* *sminv8qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ARITH_COMPLEX;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH;
        }

    case 1144:  /* negv4sf2 */
    case 1143:  /* negv2sf2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_NEGABS;
        }

    case 1142:  /* negv4si2 */
    case 1141:  /* negv2si2 */
    case 1140:  /* negv8hi2 */
    case 1139:  /* negv4hi2 */
    case 1138:  /* negv16qi2 */
    case 1137:  /* negv8qi2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_NEGABS;
        }

    case 1136:  /* absv4sf2 */
    case 1135:  /* absv2sf2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ARITH_COMPLEX;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_NEGABS;
        }

    case 1134:  /* absv4si2 */
    case 1133:  /* absv2si2 */
    case 1132:  /* absv8hi2 */
    case 1131:  /* absv4hi2 */
    case 1130:  /* absv16qi2 */
    case 1129:  /* absv8qi2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ARITH_COMPLEX;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_NEGABS;
        }

    case 1106:  /* bicdi3_neon */
    case 1094:  /* orndi3_neon */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_UNKNOWN;
        }

    case 1965:  /* neon_vmls_lanev4sf */
    case 1953:  /* neon_vmla_lanev4sf */
    case 1416:  /* neon_vmlsv4sf_unspec */
    case 1402:  /* neon_vmlav4sf_unspec */
    case 1024:  /* mulv4sf3negv4sfaddv4sf_neon */
    case 1014:  /* mulv4sf3addv4sf_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_MLA_Q;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_MLA_Q;
        }

    case 1962:  /* neon_vmls_lanev2sf */
    case 1950:  /* neon_vmla_lanev2sf */
    case 1415:  /* neon_vmlsv2sf_unspec */
    case 1401:  /* neon_vmlav2sf_unspec */
    case 1023:  /* mulv2sf3negv2sfaddv2sf_neon */
    case 1013:  /* mulv2sf3addv2sf_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_MLA;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_MLA;
        }

    case 1964:  /* neon_vmls_lanev4si */
    case 1963:  /* neon_vmls_lanev8hi */
    case 1952:  /* neon_vmla_lanev4si */
    case 1951:  /* neon_vmla_lanev8hi */
    case 1414:  /* neon_vmlsv4si_unspec */
    case 1412:  /* neon_vmlsv8hi_unspec */
    case 1410:  /* neon_vmlsv16qi_unspec */
    case 1400:  /* neon_vmlav4si_unspec */
    case 1398:  /* neon_vmlav8hi_unspec */
    case 1396:  /* neon_vmlav16qi_unspec */
    case 1022:  /* mulv4si3negv4siaddv4si_neon */
    case 1020:  /* mulv8hi3negv8hiaddv8hi_neon */
    case 1018:  /* mulv16qi3negv16qiaddv16qi_neon */
    case 1012:  /* mulv4si3addv4si_neon */
    case 1010:  /* mulv8hi3addv8hi_neon */
    case 1008:  /* mulv16qi3addv16qi_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_MLA_Q;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_MLA_Q;
        }

    case 1961:  /* neon_vmls_lanev2si */
    case 1960:  /* neon_vmls_lanev4hi */
    case 1949:  /* neon_vmla_lanev2si */
    case 1948:  /* neon_vmla_lanev4hi */
    case 1413:  /* neon_vmlsv2si_unspec */
    case 1411:  /* neon_vmlsv4hi_unspec */
    case 1409:  /* neon_vmlsv8qi_unspec */
    case 1399:  /* neon_vmlav2si_unspec */
    case 1397:  /* neon_vmlav4hi_unspec */
    case 1395:  /* neon_vmlav8qi_unspec */
    case 1021:  /* mulv2si3negv2siaddv2si_neon */
    case 1019:  /* mulv4hi3negv4hiaddv4hi_neon */
    case 1017:  /* mulv8qi3negv8qiaddv8qi_neon */
    case 1011:  /* mulv2si3addv2si_neon */
    case 1009:  /* mulv4hi3addv4hi_neon */
    case 1007:  /* mulv8qi3addv8qi_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_MLA;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_MLA;
        }

    case 1923:  /* neon_vmul_lanev4sf */
    case 1392:  /* neon_vmulfv4sf */
    case 1006:  /* *mulv4sf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_MULTIPLY_Q;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_MUL_Q;
        }

    case 1920:  /* neon_vmul_lanev2sf */
    case 1391:  /* neon_vmulfv2sf */
    case 1005:  /* *mulv2sf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_MULTIPLY;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_MUL;
        }

    case 1922:  /* neon_vmul_lanev4si */
    case 1921:  /* neon_vmul_lanev8hi */
    case 1390:  /* neon_vmulpv16qi */
    case 1004:  /* *mulv4si3_neon */
    case 1002:  /* *mulv8hi3_neon */
    case 1000:  /* *mulv16qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_MULTIPLY_Q;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_MUL_Q;
        }

    case 1919:  /* neon_vmul_lanev2si */
    case 1918:  /* neon_vmul_lanev4hi */
    case 1389:  /* neon_vmulpv8qi */
    case 1003:  /* *mulv2si3_neon */
    case 1001:  /* *mulv4hi3_neon */
    case 999:  /* *mulv8qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_MULTIPLY;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_MUL;
        }

    case 998:  /* subdi3_neon */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0xe))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_UNKNOWN;
        }

    case 984:  /* adddi3_neon */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x9))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_UNKNOWN;
        }

    case 1455:  /* neon_vsubv4sf_unspec */
    case 1330:  /* neon_vaddv4sf_unspec */
    case 994:  /* *subv4sf3_neon */
    case 992:  /* *subv8hf3_neon */
    case 982:  /* addv8hf3_fp16 */
    case 980:  /* *addv4sf3_neon */
    case 978:  /* *addv8hf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 1454:  /* neon_vsubv2sf_unspec */
    case 1329:  /* neon_vaddv2sf_unspec */
    case 1297:  /* neon_vpadd_internalv2sf */
    case 993:  /* *subv2sf3_neon */
    case 991:  /* *subv4hf3_neon */
    case 983:  /* addv4hf3_fp16 */
    case 979:  /* *addv2sf3_neon */
    case 977:  /* *addv4hf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH;
        }

    case 995:  /* *subv2di3_neon */
    case 990:  /* *subv4si3_neon */
    case 988:  /* *subv8hi3_neon */
    case 986:  /* *subv16qi3_neon */
    case 981:  /* *addv2di3_neon */
    case 976:  /* *addv4si3_neon */
    case 974:  /* *addv8hi3_neon */
    case 972:  /* *addv16qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH_Q;
        }

    case 1296:  /* neon_vpadd_internalv2si */
    case 1295:  /* neon_vpadd_internalv4hi */
    case 1294:  /* neon_vpadd_internalv8qi */
    case 989:  /* *subv2si3_neon */
    case 987:  /* *subv4hi3_neon */
    case 985:  /* *subv8qi3_neon */
    case 975:  /* *addv2si3_neon */
    case 973:  /* *addv4hi3_neon */
    case 971:  /* *addv8qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH;
        }

    case 970:  /* vec_extractv2di */
    case 969:  /* vec_extractv4sf */
    case 968:  /* vec_extractv4si */
    case 967:  /* vec_extractv8hf */
    case 966:  /* vec_extractv8hi */
    case 965:  /* vec_extractv16qi */
    case 964:  /* vec_extractv2sf */
    case 963:  /* vec_extractv2si */
    case 962:  /* vec_extractv4hf */
    case 961:  /* vec_extractv4hi */
    case 960:  /* vec_extractv8qi */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_TO_GP;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_E;
        }

    case 959:  /* vec_setv2di_internal */
    case 958:  /* vec_setv4sf_internal */
    case 957:  /* vec_setv4si_internal */
    case 956:  /* vec_setv8hf_internal */
    case 955:  /* vec_setv8hi_internal */
    case 954:  /* vec_setv16qi_internal */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FROM_GP_Q;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_C;
        }

    case 953:  /* vec_setv2sf_internal */
    case 952:  /* vec_setv2si_internal */
    case 951:  /* vec_setv4hf_internal */
    case 950:  /* vec_setv4hi_internal */
    case 949:  /* vec_setv8qi_internal */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FROM_GP;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_C;
        }

    case 924:  /* *neon_movxi */
    case 923:  /* *neon_movci */
    case 922:  /* *neon_movoi */
    case 921:  /* *neon_movei */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_BITOPS;
        }
      else if (!((1 << which_alternative) & 0x3))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_C;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_F;
        }

    case 920:  /* *neon_movti */
    case 919:  /* *neon_movv2di */
    case 918:  /* *neon_movv4sf */
    case 917:  /* *neon_movv4si */
    case 916:  /* *neon_movv8hf */
    case 915:  /* *neon_movv8hi */
    case 914:  /* *neon_movv16qi */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x5))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_BITOPS;
        }
      else if (which_alternative == 5)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FROM_GP_Q;
        }
      else if (which_alternative == 4)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_TO_GP;
        }
      else if (which_alternative == 7)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_B;
        }
      else if (which_alternative == 3)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_C;
        }
      else if (!((1 << which_alternative) & 0xff))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_D;
        }
      else if (which_alternative == 1)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_F;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_UNKNOWN;
        }

    case 913:  /* *neon_movdi */
    case 912:  /* *neon_movv2sf */
    case 911:  /* *neon_movv2si */
    case 910:  /* *neon_movv4hf */
    case 909:  /* *neon_movv4hi */
    case 908:  /* *neon_movv8qi */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x5))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_BITOPS;
        }
      else if (which_alternative == 5)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FROM_GP;
        }
      else if (which_alternative == 4)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_TO_GP;
        }
      else if (((1 << which_alternative) & 0x88))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_A;
        }
      else if (which_alternative == 1)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_A;
        }
      else if (!((1 << which_alternative) & 0xff))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_B;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_UNKNOWN;
        }

    case 4014:  /* *p *movdf_vfp */
    case 640:  /* *thumb2_movdf_vfp */
    case 639:  /* *movdf_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 3)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_BITOPS;
        }
      else if (which_alternative == 4)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_A;
        }
      else if (which_alternative == 5)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_A;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_UNKNOWN;
        }

    case 4013:  /* *p *thumb2_movsf_vfp */
    case 4012:  /* *p *movsf_vfp */
    case 638:  /* *thumb2_movsf_vfp */
    case 637:  /* *movsf_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 3)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_A;
        }
      else if (which_alternative == 4)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_A;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_UNKNOWN;
        }

    case 635:  /* *movhf_vfp_neon */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_A;
        }
      else if (which_alternative == 1)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_A;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_UNKNOWN;
        }

    case 4011:  /* *p *movhf_vfp_fp16 */
    case 634:  /* *movhf_vfp_fp16 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 7)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_A;
        }
      else if (which_alternative == 8)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_A;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_UNKNOWN;
        }

    case 4010:  /* *p *movdi_vfp_cortexa8 */
    case 633:  /* *movdi_vfp_cortexa8 */
    case 632:  /* *movdi_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 10)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_A;
        }
      else if (!((1 << which_alternative) & 0x7ff))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_A;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_UNKNOWN;
        }

    case 4009:  /* *p *thumb2_movsi_vfp */
    case 631:  /* *thumb2_movsi_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 12)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_A;
        }
      else if (!((1 << which_alternative) & 0x1fff))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_A;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_UNKNOWN;
        }

    case 4008:  /* *p *arm_movsi_vfp */
    case 630:  /* *arm_movsi_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 9)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_A;
        }
      else if (!((1 << which_alternative) & 0x3ff))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_A;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_UNKNOWN;
        }

    case 411:  /* *iwmmxt_movsi_insn */
    case 410:  /* *iwmmxt_arm_movdi */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 13)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_A;
        }
      else if (!((1 << which_alternative) & 0x3fff))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_A;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_UNKNOWN;
        }

    case 3670:  /* *p one_cmpldi2 */
    case 156:  /* one_cmpldi2 */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0x6))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_BITOPS;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_UNKNOWN;
        }

    case 108:  /* *xordi3_insn */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0x1e))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_UNKNOWN;
        }

    case 102:  /* *iordi3_insn */
    case 79:  /* *anddi3_insn */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0x3c))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_UNKNOWN;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
      if (((cached_type = get_attr_type (insn)) == TYPE_NEON_ABD) || (cached_type == TYPE_NEON_ABD_LONG))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ABD;
        }
      else if (cached_type == TYPE_NEON_ABD_Q)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ABD_Q;
        }
      else if ((cached_type == TYPE_NEON_ARITH_ACC) || ((cached_type == TYPE_NEON_REDUC_ADD_ACC) || (cached_type == TYPE_NEON_REDUC_ADD_ACC_Q)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ARITH_ACC;
        }
      else if (cached_type == TYPE_NEON_ARITH_ACC_Q)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ARITH_ACC_Q;
        }
      else if ((cached_type == TYPE_NEON_ADD) || ((cached_type == TYPE_NEON_ADD_Q) || ((cached_type == TYPE_NEON_ADD_LONG) || ((cached_type == TYPE_NEON_ADD_WIDEN) || ((cached_type == TYPE_NEON_NEG) || ((cached_type == TYPE_NEON_NEG_Q) || ((cached_type == TYPE_NEON_REDUC_ADD) || ((cached_type == TYPE_NEON_REDUC_ADD_Q) || ((cached_type == TYPE_NEON_REDUC_ADD_LONG) || ((cached_type == TYPE_NEON_SUB) || ((cached_type == TYPE_NEON_SUB_Q) || ((cached_type == TYPE_NEON_SUB_LONG) || ((cached_type == TYPE_NEON_SUB_WIDEN) || ((cached_type == TYPE_NEON_LOGIC) || ((cached_type == TYPE_NEON_LOGIC_Q) || ((cached_type == TYPE_NEON_TST) || (cached_type == TYPE_NEON_TST_Q)))))))))))))))))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else if ((cached_type == TYPE_NEON_ABS) || ((cached_type == TYPE_NEON_ABS_Q) || ((cached_type == TYPE_NEON_ADD_HALVE_NARROW_Q) || ((cached_type == TYPE_NEON_ADD_HALVE) || ((cached_type == TYPE_NEON_ADD_HALVE_Q) || ((cached_type == TYPE_NEON_SUB_HALVE) || ((cached_type == TYPE_NEON_SUB_HALVE_Q) || ((cached_type == TYPE_NEON_QABS) || ((cached_type == TYPE_NEON_QABS_Q) || ((cached_type == TYPE_NEON_QADD) || ((cached_type == TYPE_NEON_QADD_Q) || ((cached_type == TYPE_NEON_QNEG) || ((cached_type == TYPE_NEON_QNEG_Q) || ((cached_type == TYPE_NEON_QSUB) || ((cached_type == TYPE_NEON_QSUB_Q) || ((cached_type == TYPE_NEON_SUB_HALVE_NARROW_Q) || ((cached_type == TYPE_NEON_COMPARE) || ((cached_type == TYPE_NEON_COMPARE_Q) || ((cached_type == TYPE_NEON_COMPARE_ZERO) || ((cached_type == TYPE_NEON_COMPARE_ZERO_Q) || ((cached_type == TYPE_NEON_MINMAX) || ((cached_type == TYPE_NEON_MINMAX_Q) || ((cached_type == TYPE_NEON_REDUC_MINMAX) || (cached_type == TYPE_NEON_REDUC_MINMAX_Q))))))))))))))))))))))))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ARITH_COMPLEX;
        }
      else if ((cached_type == TYPE_NEON_MUL_B) || ((cached_type == TYPE_NEON_MUL_H) || ((cached_type == TYPE_NEON_MUL_S) || ((cached_type == TYPE_NEON_MUL_H_SCALAR) || ((cached_type == TYPE_NEON_MUL_S_SCALAR) || ((cached_type == TYPE_NEON_SAT_MUL_B) || ((cached_type == TYPE_NEON_SAT_MUL_H) || ((cached_type == TYPE_NEON_SAT_MUL_S) || ((cached_type == TYPE_NEON_SAT_MUL_H_SCALAR) || ((cached_type == TYPE_NEON_SAT_MUL_S_SCALAR) || ((cached_type == TYPE_NEON_MUL_B_LONG) || ((cached_type == TYPE_NEON_MUL_H_LONG) || ((cached_type == TYPE_NEON_MUL_S_LONG) || ((cached_type == TYPE_NEON_MUL_H_SCALAR_LONG) || ((cached_type == TYPE_NEON_MUL_S_SCALAR_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_B_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_H_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_S_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_H_SCALAR_LONG) || (cached_type == TYPE_NEON_SAT_MUL_S_SCALAR_LONG))))))))))))))))))))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_MULTIPLY;
        }
      else if ((cached_type == TYPE_NEON_MUL_B_Q) || ((cached_type == TYPE_NEON_MUL_H_Q) || ((cached_type == TYPE_NEON_MUL_S_Q) || ((cached_type == TYPE_NEON_MUL_H_SCALAR_Q) || ((cached_type == TYPE_NEON_MUL_S_SCALAR_Q) || ((cached_type == TYPE_NEON_SAT_MUL_B_Q) || ((cached_type == TYPE_NEON_SAT_MUL_H_Q) || ((cached_type == TYPE_NEON_SAT_MUL_S_Q) || ((cached_type == TYPE_NEON_SAT_MUL_H_SCALAR_Q) || (cached_type == TYPE_NEON_SAT_MUL_S_SCALAR_Q))))))))))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_MULTIPLY_Q;
        }
      else if ((cached_type == TYPE_NEON_MLA_B) || ((cached_type == TYPE_NEON_MLA_H) || ((cached_type == TYPE_NEON_MLA_S) || ((cached_type == TYPE_NEON_MLA_H_SCALAR) || ((cached_type == TYPE_NEON_MLA_S_SCALAR) || ((cached_type == TYPE_NEON_MLA_B_LONG) || ((cached_type == TYPE_NEON_MLA_H_LONG) || ((cached_type == TYPE_NEON_MLA_S_LONG) || ((cached_type == TYPE_NEON_MLA_H_SCALAR_LONG) || (cached_type == TYPE_NEON_MLA_S_SCALAR_LONG))))))))))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_MLA;
        }
      else if ((cached_type == TYPE_NEON_MLA_B_Q) || ((cached_type == TYPE_NEON_MLA_H_Q) || ((cached_type == TYPE_NEON_MLA_S_Q) || ((cached_type == TYPE_NEON_MLA_H_SCALAR_Q) || (cached_type == TYPE_NEON_MLA_S_SCALAR_Q)))))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_MLA_Q;
        }
      else if ((cached_type == TYPE_NEON_SAT_MLA_B_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_H_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_S_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_H_SCALAR_LONG) || (cached_type == TYPE_NEON_SAT_MLA_S_SCALAR_LONG)))))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_SAT_MLA_LONG;
        }
      else if ((cached_type == TYPE_NEON_SHIFT_ACC) || (cached_type == TYPE_NEON_SHIFT_ACC_Q))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_SHIFT_ACC;
        }
      else if ((cached_type == TYPE_NEON_SHIFT_IMM) || ((cached_type == TYPE_NEON_SHIFT_IMM_Q) || ((cached_type == TYPE_NEON_SHIFT_IMM_NARROW_Q) || (cached_type == TYPE_NEON_SHIFT_IMM_LONG))))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_SHIFT_IMM_BASIC;
        }
      else if ((cached_type == TYPE_NEON_SAT_SHIFT_IMM) || ((cached_type == TYPE_NEON_SAT_SHIFT_IMM_Q) || (cached_type == TYPE_NEON_SAT_SHIFT_IMM_NARROW_Q)))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_SHIFT_IMM_COMPLEX;
        }
      else if (cached_type == TYPE_NEON_SHIFT_REG)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_SHIFT_REG_BASIC;
        }
      else if (cached_type == TYPE_NEON_SHIFT_REG_Q)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_SHIFT_REG_BASIC_Q;
        }
      else if (cached_type == TYPE_NEON_SAT_SHIFT_REG)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_SHIFT_REG_COMPLEX;
        }
      else if (cached_type == TYPE_NEON_SAT_SHIFT_REG_Q)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_SHIFT_REG_COMPLEX_Q;
        }
      else if ((cached_type == TYPE_NEON_FP_NEG_S) || ((cached_type == TYPE_NEON_FP_NEG_S_Q) || ((cached_type == TYPE_NEON_FP_ABS_S) || (cached_type == TYPE_NEON_FP_ABS_S_Q))))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_NEGABS;
        }
      else if ((cached_type == TYPE_NEON_FP_ADDSUB_S) || ((cached_type == TYPE_NEON_FP_ABD_S) || ((cached_type == TYPE_NEON_FP_REDUC_ADD_S) || ((cached_type == TYPE_NEON_FP_COMPARE_S) || ((cached_type == TYPE_NEON_FP_MINMAX_S) || ((cached_type == TYPE_NEON_FP_MINMAX_S_Q) || ((cached_type == TYPE_NEON_FP_REDUC_MINMAX_S) || (cached_type == TYPE_NEON_FP_REDUC_MINMAX_S_Q))))))))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH;
        }
      else if ((cached_type == TYPE_NEON_FP_ADDSUB_S_Q) || ((cached_type == TYPE_NEON_FP_ABD_S_Q) || ((cached_type == TYPE_NEON_FP_REDUC_ADD_S_Q) || (cached_type == TYPE_NEON_FP_COMPARE_S_Q))))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH_Q;
        }
      else if ((cached_type == TYPE_NEON_FP_TO_INT_S) || (cached_type == TYPE_NEON_INT_TO_FP_S))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_CVT_INT;
        }
      else if ((cached_type == TYPE_NEON_FP_TO_INT_S_Q) || (cached_type == TYPE_NEON_INT_TO_FP_S_Q))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_CVT_INT_Q;
        }
      else if ((cached_type == TYPE_NEON_FP_CVT_NARROW_S_Q) || (cached_type == TYPE_NEON_FP_CVT_WIDEN_H))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_CVT16;
        }
      else if ((cached_type == TYPE_NEON_FP_MUL_S) || (cached_type == TYPE_NEON_FP_MUL_S_SCALAR))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_MUL;
        }
      else if ((cached_type == TYPE_NEON_FP_MUL_S_Q) || (cached_type == TYPE_NEON_FP_MUL_S_SCALAR_Q))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_MUL_Q;
        }
      else if ((cached_type == TYPE_NEON_FP_MLA_S) || (cached_type == TYPE_NEON_FP_MLA_S_SCALAR))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_MLA;
        }
      else if ((cached_type == TYPE_NEON_FP_MLA_S_Q) || (cached_type == TYPE_NEON_FP_MLA_S_SCALAR_Q))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_MLA_Q;
        }
      else if ((cached_type == TYPE_NEON_FP_RECPE_S) || (cached_type == TYPE_NEON_FP_RSQRTE_S))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_RECPE_RSQRTE;
        }
      else if ((cached_type == TYPE_NEON_FP_RECPE_S_Q) || (cached_type == TYPE_NEON_FP_RSQRTE_S_Q))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FP_RECPE_RSQRTE_Q;
        }
      else if ((cached_type == TYPE_NEON_BSL) || ((cached_type == TYPE_NEON_CLS) || ((cached_type == TYPE_NEON_CNT) || ((cached_type == TYPE_NEON_REV) || ((cached_type == TYPE_NEON_PERMUTE) || ((cached_type == TYPE_NEON_TBL1) || ((cached_type == TYPE_NEON_TBL2) || ((cached_type == TYPE_NEON_ZIP) || ((cached_type == TYPE_NEON_DUP) || ((cached_type == TYPE_NEON_DUP_Q) || ((cached_type == TYPE_NEON_EXT) || ((cached_type == TYPE_NEON_EXT_Q) || ((cached_type == TYPE_NEON_MOVE) || ((cached_type == TYPE_NEON_MOVE_Q) || (cached_type == TYPE_NEON_MOVE_NARROW_Q)))))))))))))))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_BITOPS;
        }
      else if ((cached_type == TYPE_NEON_BSL_Q) || ((cached_type == TYPE_NEON_CLS_Q) || ((cached_type == TYPE_NEON_CNT_Q) || ((cached_type == TYPE_NEON_REV_Q) || (cached_type == TYPE_NEON_PERMUTE_Q)))))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_BITOPS_Q;
        }
      else if (cached_type == TYPE_NEON_FROM_GP)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FROM_GP;
        }
      else if (cached_type == TYPE_NEON_FROM_GP_Q)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_FROM_GP_Q;
        }
      else if ((cached_type == TYPE_NEON_TBL3) || (cached_type == TYPE_NEON_TBL4))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_TBL3_TBL4;
        }
      else if (cached_type == TYPE_NEON_ZIP_Q)
        {
	  return CORTEX_A15_NEON_TYPE_NEON_ZIP_Q;
        }
      else if ((cached_type == TYPE_NEON_TO_GP) || (cached_type == TYPE_NEON_TO_GP_Q))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_TO_GP;
        }
      else if ((cached_type == TYPE_F_LOADS) || ((cached_type == TYPE_F_LOADD) || ((cached_type == TYPE_NEON_LOAD1_1REG) || ((cached_type == TYPE_NEON_LOAD1_1REG_Q) || ((cached_type == TYPE_NEON_LOAD1_2REG) || (cached_type == TYPE_NEON_LOAD1_2REG_Q))))))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_A;
        }
      else if ((cached_type == TYPE_NEON_LOAD1_3REG) || ((cached_type == TYPE_NEON_LOAD1_3REG_Q) || ((cached_type == TYPE_NEON_LOAD1_4REG) || (cached_type == TYPE_NEON_LOAD1_4REG_Q))))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_B;
        }
      else if ((cached_type == TYPE_NEON_LOAD1_ONE_LANE) || ((cached_type == TYPE_NEON_LOAD1_ONE_LANE_Q) || ((cached_type == TYPE_NEON_LOAD1_ALL_LANES) || ((cached_type == TYPE_NEON_LOAD1_ALL_LANES_Q) || ((cached_type == TYPE_NEON_LOAD2_2REG) || ((cached_type == TYPE_NEON_LOAD2_2REG_Q) || ((cached_type == TYPE_NEON_LOAD2_ALL_LANES) || (cached_type == TYPE_NEON_LOAD2_ALL_LANES_Q))))))))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_C;
        }
      else if ((cached_type == TYPE_NEON_LOAD2_4REG) || ((cached_type == TYPE_NEON_LOAD2_4REG_Q) || ((cached_type == TYPE_NEON_LOAD3_3REG) || ((cached_type == TYPE_NEON_LOAD3_3REG_Q) || ((cached_type == TYPE_NEON_LOAD3_ONE_LANE) || ((cached_type == TYPE_NEON_LOAD3_ONE_LANE_Q) || ((cached_type == TYPE_NEON_LOAD4_4REG) || (cached_type == TYPE_NEON_LOAD4_4REG_Q))))))))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_D;
        }
      else if ((cached_type == TYPE_NEON_LOAD2_ONE_LANE) || ((cached_type == TYPE_NEON_LOAD2_ONE_LANE_Q) || ((cached_type == TYPE_NEON_LOAD3_ALL_LANES) || ((cached_type == TYPE_NEON_LOAD3_ALL_LANES_Q) || ((cached_type == TYPE_NEON_LOAD4_ALL_LANES) || (cached_type == TYPE_NEON_LOAD4_ALL_LANES_Q))))))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_E;
        }
      else if ((cached_type == TYPE_NEON_LOAD4_ONE_LANE) || (cached_type == TYPE_NEON_LOAD4_ONE_LANE_Q))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_LOAD_F;
        }
      else if ((cached_type == TYPE_F_STORES) || ((cached_type == TYPE_F_STORED) || ((cached_type == TYPE_NEON_STORE1_1REG) || (cached_type == TYPE_NEON_STORE1_1REG_Q))))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_A;
        }
      else if ((cached_type == TYPE_NEON_STORE1_2REG) || (cached_type == TYPE_NEON_STORE1_2REG_Q))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_B;
        }
      else if ((cached_type == TYPE_NEON_STORE1_3REG) || (cached_type == TYPE_NEON_STORE1_3REG_Q))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_C;
        }
      else if ((cached_type == TYPE_NEON_STORE1_4REG) || (cached_type == TYPE_NEON_STORE1_4REG_Q))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_D;
        }
      else if ((cached_type == TYPE_NEON_STORE1_ONE_LANE) || ((cached_type == TYPE_NEON_STORE1_ONE_LANE_Q) || ((cached_type == TYPE_NEON_STORE2_ONE_LANE) || (cached_type == TYPE_NEON_STORE2_ONE_LANE_Q))))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_E;
        }
      else if ((cached_type == TYPE_NEON_STORE2_2REG) || ((cached_type == TYPE_NEON_STORE2_2REG_Q) || ((cached_type == TYPE_NEON_STORE3_ONE_LANE) || ((cached_type == TYPE_NEON_STORE3_ONE_LANE_Q) || ((cached_type == TYPE_NEON_STORE4_ONE_LANE) || (cached_type == TYPE_NEON_STORE4_ONE_LANE_Q))))))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_F;
        }
      else if ((cached_type == TYPE_NEON_STORE2_4REG) || ((cached_type == TYPE_NEON_STORE2_4REG_Q) || ((cached_type == TYPE_NEON_STORE4_4REG) || (cached_type == TYPE_NEON_STORE4_4REG_Q))))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_G;
        }
      else if ((cached_type == TYPE_NEON_STORE3_3REG) || (cached_type == TYPE_NEON_STORE3_3REG_Q))
        {
	  return CORTEX_A15_NEON_TYPE_NEON_STORE_H;
        }
      else
        {
	  return CORTEX_A15_NEON_TYPE_UNKNOWN;
        }

    case 2411:  /* neon_vst3qbv4sf */
    case 2410:  /* neon_vst3qbv4si */
    case 2409:  /* neon_vst3qbv8hf */
    case 2408:  /* neon_vst3qbv8hi */
    case 2407:  /* neon_vst3qbv16qi */
    case 2406:  /* neon_vst3qav4sf */
    case 2405:  /* neon_vst3qav4si */
    case 2404:  /* neon_vst3qav8hf */
    case 2403:  /* neon_vst3qav8hi */
    case 2402:  /* neon_vst3qav16qi */
      return CORTEX_A15_NEON_TYPE_NEON_STORE_H;

    case 2476:  /* neon_vst4_lanev4sf */
    case 2475:  /* neon_vst4_lanev4si */
    case 2474:  /* neon_vst4_lanev8hf */
    case 2473:  /* neon_vst4_lanev8hi */
    case 2467:  /* neon_vst4qbv4sf */
    case 2466:  /* neon_vst4qbv4si */
    case 2465:  /* neon_vst4qbv8hf */
    case 2464:  /* neon_vst4qbv8hi */
    case 2463:  /* neon_vst4qbv16qi */
    case 2462:  /* neon_vst4qav4sf */
    case 2461:  /* neon_vst4qav4si */
    case 2460:  /* neon_vst4qav8hf */
    case 2459:  /* neon_vst4qav8hi */
    case 2458:  /* neon_vst4qav16qi */
    case 2355:  /* neon_vst2v4sf */
    case 2354:  /* neon_vst2v4si */
    case 2353:  /* neon_vst2v8hf */
    case 2352:  /* neon_vst2v8hi */
    case 2351:  /* neon_vst2v16qi */
      return CORTEX_A15_NEON_TYPE_NEON_STORE_G;

    case 2472:  /* neon_vst4_lanev2sf */
    case 2471:  /* neon_vst4_lanev2si */
    case 2470:  /* neon_vst4_lanev4hf */
    case 2469:  /* neon_vst4_lanev4hi */
    case 2468:  /* neon_vst4_lanev8qi */
    case 2420:  /* neon_vst3_lanev4sf */
    case 2419:  /* neon_vst3_lanev4si */
    case 2418:  /* neon_vst3_lanev8hf */
    case 2417:  /* neon_vst3_lanev8hi */
    case 2416:  /* neon_vst3_lanev2sf */
    case 2415:  /* neon_vst3_lanev2si */
    case 2414:  /* neon_vst3_lanev4hf */
    case 2413:  /* neon_vst3_lanev4hi */
    case 2412:  /* neon_vst3_lanev8qi */
      return CORTEX_A15_NEON_TYPE_NEON_STORE_F;

    case 2364:  /* neon_vst2_lanev4sf */
    case 2363:  /* neon_vst2_lanev4si */
    case 2362:  /* neon_vst2_lanev8hf */
    case 2361:  /* neon_vst2_lanev8hi */
    case 2360:  /* neon_vst2_lanev2sf */
    case 2359:  /* neon_vst2_lanev2si */
    case 2358:  /* neon_vst2_lanev4hf */
    case 2357:  /* neon_vst2_lanev4hi */
    case 2356:  /* neon_vst2_lanev8qi */
    case 2318:  /* neon_vst1_lanev2di */
    case 2317:  /* neon_vst1_lanev4sf */
    case 2316:  /* neon_vst1_lanev4si */
    case 2315:  /* neon_vst1_lanev8hf */
    case 2314:  /* neon_vst1_lanev8hi */
    case 2313:  /* neon_vst1_lanev16qi */
    case 2312:  /* neon_vst1_lanedi */
    case 2311:  /* neon_vst1_lanev2sf */
    case 2310:  /* neon_vst1_lanev2si */
    case 2309:  /* neon_vst1_lanev4hf */
    case 2308:  /* neon_vst1_lanev4hi */
    case 2307:  /* neon_vst1_lanev8qi */
      return CORTEX_A15_NEON_TYPE_NEON_STORE_E;

    case 2306:  /* neon_vst1v2di */
    case 2305:  /* neon_vst1di */
    case 2304:  /* neon_vst1v4sf */
    case 2303:  /* neon_vst1v2sf */
    case 2302:  /* neon_vst1v8hf */
    case 2301:  /* neon_vst1v4hf */
    case 2300:  /* neon_vst1v4si */
    case 2299:  /* neon_vst1v2si */
    case 2298:  /* neon_vst1v8hi */
    case 2297:  /* neon_vst1v4hi */
    case 2296:  /* neon_vst1v16qi */
    case 2295:  /* neon_vst1v8qi */
    case 942:  /* *movmisalignv2di_neon_store */
    case 941:  /* *movmisalignv4sf_neon_store */
    case 940:  /* *movmisalignv4si_neon_store */
    case 939:  /* *movmisalignv8hf_neon_store */
    case 938:  /* *movmisalignv8hi_neon_store */
    case 937:  /* *movmisalignv16qi_neon_store */
    case 930:  /* *movmisaligndi_neon_store */
    case 929:  /* *movmisalignv2sf_neon_store */
    case 928:  /* *movmisalignv2si_neon_store */
    case 927:  /* *movmisalignv4hf_neon_store */
    case 926:  /* *movmisalignv4hi_neon_store */
    case 925:  /* *movmisalignv8qi_neon_store */
    case 746:  /* *push_multi_vfp */
      return CORTEX_A15_NEON_TYPE_NEON_STORE_A;

    case 2445:  /* neon_vld4_lanev4sf */
    case 2444:  /* neon_vld4_lanev4si */
    case 2443:  /* neon_vld4_lanev8hf */
    case 2442:  /* neon_vld4_lanev8hi */
    case 2441:  /* neon_vld4_lanev2sf */
    case 2440:  /* neon_vld4_lanev2si */
    case 2439:  /* neon_vld4_lanev4hf */
    case 2438:  /* neon_vld4_lanev4hi */
    case 2437:  /* neon_vld4_lanev8qi */
      return CORTEX_A15_NEON_TYPE_NEON_LOAD_F;

    case 2338:  /* neon_vld2_lanev4sf */
    case 2337:  /* neon_vld2_lanev4si */
    case 2336:  /* neon_vld2_lanev8hf */
    case 2335:  /* neon_vld2_lanev8hi */
    case 2334:  /* neon_vld2_lanev2sf */
    case 2333:  /* neon_vld2_lanev2si */
    case 2332:  /* neon_vld2_lanev4hf */
    case 2331:  /* neon_vld2_lanev4hi */
    case 2330:  /* neon_vld2_lanev8qi */
      return CORTEX_A15_NEON_TYPE_NEON_LOAD_E;

    case 2436:  /* neon_vld4qbv4sf */
    case 2435:  /* neon_vld4qbv4si */
    case 2434:  /* neon_vld4qbv8hf */
    case 2433:  /* neon_vld4qbv8hi */
    case 2432:  /* neon_vld4qbv16qi */
    case 2431:  /* neon_vld4qav4sf */
    case 2430:  /* neon_vld4qav4si */
    case 2429:  /* neon_vld4qav8hf */
    case 2428:  /* neon_vld4qav8hi */
    case 2427:  /* neon_vld4qav16qi */
    case 2389:  /* neon_vld3_lanev4sf */
    case 2388:  /* neon_vld3_lanev4si */
    case 2387:  /* neon_vld3_lanev8hf */
    case 2386:  /* neon_vld3_lanev8hi */
    case 2385:  /* neon_vld3_lanev2sf */
    case 2384:  /* neon_vld3_lanev2si */
    case 2383:  /* neon_vld3_lanev4hf */
    case 2382:  /* neon_vld3_lanev4hi */
    case 2381:  /* neon_vld3_lanev8qi */
    case 2380:  /* neon_vld3qbv4sf */
    case 2379:  /* neon_vld3qbv4si */
    case 2378:  /* neon_vld3qbv8hf */
    case 2377:  /* neon_vld3qbv8hi */
    case 2376:  /* neon_vld3qbv16qi */
    case 2375:  /* neon_vld3qav4sf */
    case 2374:  /* neon_vld3qav4si */
    case 2373:  /* neon_vld3qav8hf */
    case 2372:  /* neon_vld3qav8hi */
    case 2371:  /* neon_vld3qav16qi */
      return CORTEX_A15_NEON_TYPE_NEON_LOAD_D;

    case 2329:  /* neon_vld2v4sf */
    case 2328:  /* neon_vld2v4si */
    case 2327:  /* neon_vld2v8hf */
    case 2326:  /* neon_vld2v8hi */
    case 2325:  /* neon_vld2v16qi */
    case 2294:  /* neon_vld1_dupv2di */
    case 2293:  /* neon_vld1_dupv4sf */
    case 2292:  /* neon_vld1_dupv4si */
    case 2291:  /* neon_vld1_dupv8hf */
    case 2290:  /* neon_vld1_dupv8hi */
    case 2289:  /* neon_vld1_dupv16qi */
    case 2288:  /* neon_vld1_dupv2sf */
    case 2287:  /* neon_vld1_dupv2si */
    case 2286:  /* neon_vld1_dupv4hf */
    case 2285:  /* neon_vld1_dupv4hi */
    case 2284:  /* neon_vld1_dupv8qi */
    case 2283:  /* neon_vld1_lanev2di */
    case 2282:  /* neon_vld1_lanev4sf */
    case 2281:  /* neon_vld1_lanev4si */
    case 2280:  /* neon_vld1_lanev8hf */
    case 2279:  /* neon_vld1_lanev8hi */
    case 2278:  /* neon_vld1_lanev16qi */
    case 2277:  /* neon_vld1_lanedi */
    case 2276:  /* neon_vld1_lanev2sf */
    case 2275:  /* neon_vld1_lanev2si */
    case 2274:  /* neon_vld1_lanev4hf */
    case 2273:  /* neon_vld1_lanev4hi */
    case 2272:  /* neon_vld1_lanev8qi */
      return CORTEX_A15_NEON_TYPE_NEON_LOAD_C;

    case 2271:  /* neon_vld1v2di */
    case 2270:  /* neon_vld1di */
    case 2269:  /* neon_vld1v4sf */
    case 2268:  /* neon_vld1v2sf */
    case 2267:  /* neon_vld1v8hf */
    case 2266:  /* neon_vld1v4hf */
    case 2265:  /* neon_vld1v4si */
    case 2264:  /* neon_vld1v2si */
    case 2263:  /* neon_vld1v8hi */
    case 2262:  /* neon_vld1v4hi */
    case 2261:  /* neon_vld1v16qi */
    case 2260:  /* neon_vld1v8qi */
    case 948:  /* *movmisalignv2di_neon_load */
    case 947:  /* *movmisalignv4sf_neon_load */
    case 946:  /* *movmisalignv4si_neon_load */
    case 945:  /* *movmisalignv8hf_neon_load */
    case 944:  /* *movmisalignv8hi_neon_load */
    case 943:  /* *movmisalignv16qi_neon_load */
    case 936:  /* *movmisaligndi_neon_load */
    case 935:  /* *movmisalignv2sf_neon_load */
    case 934:  /* *movmisalignv2si_neon_load */
    case 933:  /* *movmisalignv4hf_neon_load */
    case 932:  /* *movmisalignv4hi_neon_load */
    case 931:  /* *movmisalignv8qi_neon_load */
      return CORTEX_A15_NEON_TYPE_NEON_LOAD_A;

    case 1802:  /* neon_vget_lanev4sf_zext_internal */
    case 1801:  /* neon_vget_lanev4si_zext_internal */
    case 1800:  /* neon_vget_lanev8hf_zext_internal */
    case 1799:  /* neon_vget_lanev8hi_zext_internal */
    case 1798:  /* neon_vget_lanev16qi_zext_internal */
    case 1797:  /* neon_vget_lanev4sf_sext_internal */
    case 1796:  /* neon_vget_lanev4si_sext_internal */
    case 1795:  /* neon_vget_lanev8hf_sext_internal */
    case 1794:  /* neon_vget_lanev8hi_sext_internal */
    case 1793:  /* neon_vget_lanev16qi_sext_internal */
    case 1792:  /* neon_vget_lanev2sf_zext_internal */
    case 1791:  /* neon_vget_lanev2si_zext_internal */
    case 1790:  /* neon_vget_lanev4hi_zext_internal */
    case 1789:  /* neon_vget_lanev8qi_zext_internal */
    case 1788:  /* neon_vget_lanev2sf_sext_internal */
    case 1787:  /* neon_vget_lanev2si_sext_internal */
    case 1786:  /* neon_vget_lanev4hi_sext_internal */
    case 1785:  /* neon_vget_lanev8qi_sext_internal */
      return CORTEX_A15_NEON_TYPE_NEON_TO_GP;

    case 2258:  /* *neon_vuzpv8hf_insn */
    case 2257:  /* *neon_vuzpv4sf_insn */
    case 2255:  /* *neon_vuzpv4si_insn */
    case 2253:  /* *neon_vuzpv8hi_insn */
    case 2251:  /* *neon_vuzpv16qi_insn */
    case 2248:  /* *neon_vzipv8hf_insn */
    case 2247:  /* *neon_vzipv4sf_insn */
    case 2245:  /* *neon_vzipv4si_insn */
    case 2243:  /* *neon_vzipv8hi_insn */
    case 2241:  /* *neon_vzipv16qi_insn */
      return CORTEX_A15_NEON_TYPE_NEON_ZIP_Q;

    case 2229:  /* neon_vtbx4v8qi */
    case 2228:  /* neon_vtbx3v8qi */
    case 2222:  /* neon_vtbl4v8qi */
    case 2221:  /* neon_vtbl3v8qi */
      return CORTEX_A15_NEON_TYPE_NEON_TBL3_TBL4;

    case 1808:  /* neon_vdup_nv8hf */
    case 1806:  /* neon_vdup_nv8hi */
    case 1805:  /* neon_vdup_nv16qi */
      return CORTEX_A15_NEON_TYPE_NEON_FROM_GP_Q;

    case 1807:  /* neon_vdup_nv4hf */
    case 1804:  /* neon_vdup_nv4hi */
    case 1803:  /* neon_vdup_nv8qi */
      return CORTEX_A15_NEON_TYPE_NEON_FROM_GP;

    case 2238:  /* *neon_vtrnv8hf_insn */
    case 2237:  /* *neon_vtrnv4sf_insn */
    case 2235:  /* *neon_vtrnv4si_insn */
    case 2233:  /* *neon_vtrnv8hi_insn */
    case 2231:  /* *neon_vtrnv16qi_insn */
    case 2012:  /* neon_vbslv2di_internal */
    case 2010:  /* neon_vbslv4sf_internal */
    case 2008:  /* neon_vbslv8hf_internal */
    case 2006:  /* neon_vbslv4si_internal */
    case 2004:  /* neon_vbslv8hi_internal */
    case 2002:  /* neon_vbslv16qi_internal */
    case 2000:  /* neon_vrev16v16qi */
    case 1998:  /* neon_vrev32v8hi */
    case 1997:  /* neon_vrev32v16qi */
    case 1994:  /* neon_vrev64v2di */
    case 1993:  /* neon_vrev64v4sf */
    case 1991:  /* neon_vrev64v8hf */
    case 1989:  /* neon_vrev64v4si */
    case 1987:  /* neon_vrev64v8hi */
    case 1985:  /* neon_vrev64v16qi */
    case 1835:  /* *neon_vswpv2di */
    case 1833:  /* *neon_vswpv4sf */
    case 1831:  /* *neon_vswpv8hf */
    case 1829:  /* *neon_vswpv4si */
    case 1827:  /* *neon_vswpv8hi */
    case 1825:  /* *neon_vswpv16qi */
    case 1774:  /* popcountv16qi2 */
    case 1772:  /* clzv4si2 */
    case 1770:  /* clzv8hi2 */
    case 1768:  /* clzv16qi2 */
    case 1766:  /* neon_vclsv4si */
    case 1764:  /* neon_vclsv8hi */
    case 1762:  /* neon_vclsv16qi */
    case 1754:  /* neon_bswapv2di */
    case 1753:  /* neon_bswapv4si */
    case 1751:  /* neon_bswapv8hi */
      return CORTEX_A15_NEON_TYPE_NEON_BITOPS_Q;

    case 2524:  /* neon_vec_pack_trunc_v2di */
    case 2523:  /* neon_vec_pack_trunc_v4si */
    case 2522:  /* neon_vec_pack_trunc_v8hi */
    case 2512:  /* neon_unpacku_v2si */
    case 2511:  /* neon_unpacks_v2si */
    case 2510:  /* neon_unpacku_v4hi */
    case 2509:  /* neon_unpacks_v4hi */
    case 2508:  /* neon_unpacku_v8qi */
    case 2507:  /* neon_unpacks_v8qi */
    case 2259:  /* *neon_vuzpv4hf_insn */
    case 2256:  /* *neon_vuzpv2sf_insn */
    case 2254:  /* *neon_vuzpv2si_insn */
    case 2252:  /* *neon_vuzpv4hi_insn */
    case 2250:  /* *neon_vuzpv8qi_insn */
    case 2249:  /* *neon_vzipv4hf_insn */
    case 2246:  /* *neon_vzipv2sf_insn */
    case 2244:  /* *neon_vzipv2si_insn */
    case 2242:  /* *neon_vzipv4hi_insn */
    case 2240:  /* *neon_vzipv8qi_insn */
    case 2239:  /* *neon_vtrnv4hf_insn */
    case 2236:  /* *neon_vtrnv2sf_insn */
    case 2234:  /* *neon_vtrnv2si_insn */
    case 2232:  /* *neon_vtrnv4hi_insn */
    case 2230:  /* *neon_vtrnv8qi_insn */
    case 2227:  /* neon_vtbx2v8qi */
    case 2226:  /* neon_vtbx1v8qi */
    case 2220:  /* neon_vtbl2v8qi */
    case 2219:  /* neon_vtbl1v8qi */
    case 2011:  /* neon_vbsldi_internal */
    case 2009:  /* neon_vbslv2sf_internal */
    case 2007:  /* neon_vbslv4hf_internal */
    case 2005:  /* neon_vbslv2si_internal */
    case 2003:  /* neon_vbslv4hi_internal */
    case 2001:  /* neon_vbslv8qi_internal */
    case 1999:  /* neon_vrev16v8qi */
    case 1996:  /* neon_vrev32v4hi */
    case 1995:  /* neon_vrev32v8qi */
    case 1992:  /* neon_vrev64v2sf */
    case 1990:  /* neon_vrev64v4hf */
    case 1988:  /* neon_vrev64v2si */
    case 1986:  /* neon_vrev64v4hi */
    case 1984:  /* neon_vrev64v8qi */
    case 1983:  /* neon_vextv2di */
    case 1982:  /* neon_vextdi */
    case 1981:  /* neon_vextv4sf */
    case 1980:  /* neon_vextv2sf */
    case 1979:  /* neon_vextv8hf */
    case 1978:  /* neon_vextv4hf */
    case 1977:  /* neon_vextv4si */
    case 1976:  /* neon_vextv2si */
    case 1975:  /* neon_vextv8hi */
    case 1974:  /* neon_vextv4hi */
    case 1973:  /* neon_vextv16qi */
    case 1972:  /* neon_vextv8qi */
    case 1834:  /* *neon_vswpdi */
    case 1832:  /* *neon_vswpv2sf */
    case 1830:  /* *neon_vswpv4hf */
    case 1828:  /* *neon_vswpv2si */
    case 1826:  /* *neon_vswpv4hi */
    case 1824:  /* *neon_vswpv8qi */
    case 1823:  /* neon_vdup_lanev4hf_internal */
    case 1822:  /* neon_vdup_lanev8hf_internal */
    case 1821:  /* neon_vdup_lanev4sf_internal */
    case 1820:  /* neon_vdup_lanev2sf_internal */
    case 1819:  /* neon_vdup_lanev4si_internal */
    case 1818:  /* neon_vdup_lanev2si_internal */
    case 1817:  /* neon_vdup_lanev8hi_internal */
    case 1816:  /* neon_vdup_lanev4hi_internal */
    case 1815:  /* neon_vdup_lanev16qi_internal */
    case 1814:  /* neon_vdup_lanev8qi_internal */
    case 1773:  /* popcountv8qi2 */
    case 1771:  /* clzv2si2 */
    case 1769:  /* clzv4hi2 */
    case 1767:  /* clzv8qi2 */
    case 1765:  /* neon_vclsv2si */
    case 1763:  /* neon_vclsv4hi */
    case 1761:  /* neon_vclsv8qi */
    case 1752:  /* neon_bswapv2si */
    case 1750:  /* neon_bswapv4hi */
    case 1128:  /* one_cmplv2di2 */
    case 1127:  /* one_cmplv4sf2 */
    case 1126:  /* one_cmplv2sf2 */
    case 1125:  /* one_cmplv8hf2 */
    case 1124:  /* one_cmplv4hf2 */
    case 1123:  /* one_cmplv4si2 */
    case 1122:  /* one_cmplv2si2 */
    case 1121:  /* one_cmplv8hi2 */
    case 1120:  /* one_cmplv4hi2 */
    case 1119:  /* one_cmplv16qi2 */
    case 1118:  /* one_cmplv8qi2 */
      return CORTEX_A15_NEON_TYPE_NEON_BITOPS;

    case 1784:  /* neon_vrsqrtev4sf */
    case 1783:  /* neon_vrsqrtev4si */
    case 1780:  /* neon_vrecpev4sf */
    case 1779:  /* neon_vrecpev4si */
    case 1775:  /* neon_vrecpev8hf */
    case 1162:  /* neon_vrsqrtev8hf */
      return CORTEX_A15_NEON_TYPE_NEON_FP_RECPE_RSQRTE_Q;

    case 1782:  /* neon_vrsqrtev2sf */
    case 1781:  /* neon_vrsqrtev2si */
    case 1778:  /* neon_vrecpev2sf */
    case 1777:  /* neon_vrecpev2si */
    case 1776:  /* neon_vrecpev4hf */
    case 1163:  /* neon_vrsqrtev4hf */
      return CORTEX_A15_NEON_TYPE_NEON_FP_RECPE_RSQRTE;

    case 1035:  /* fmsubv8hf4_intrinsic */
    case 1034:  /* fmsubv4sf4_intrinsic */
    case 1032:  /* *fmsubv4sf4 */
    case 1029:  /* fmav8hf4_intrinsic */
    case 1028:  /* fmav4sf4_intrinsic */
    case 1026:  /* fmav4sf4 */
    case 1015:  /* mulv8hf3addv8hf_neon */
      return CORTEX_A15_NEON_TYPE_NEON_FP_MLA_Q;

    case 1036:  /* fmsubv4hf4_intrinsic */
    case 1033:  /* fmsubv2sf4_intrinsic */
    case 1031:  /* *fmsubv2sf4 */
    case 1030:  /* fmav4hf4_intrinsic */
    case 1027:  /* fmav2sf4_intrinsic */
    case 1025:  /* fmav2sf4 */
    case 1016:  /* mulv4hf3addv4hf_neon */
      return CORTEX_A15_NEON_TYPE_NEON_FP_MLA;

    case 1924:  /* neon_vmul_lanev8hf */
      return CORTEX_A15_NEON_TYPE_NEON_FP_MUL_Q;

    case 1925:  /* neon_vmul_lanev4hf */
      return CORTEX_A15_NEON_TYPE_NEON_FP_MUL;

    case 1859:  /* neon_vcvtv4hfv4sf */
    case 1858:  /* neon_vcvtv4sfv4hf */
      return CORTEX_A15_NEON_TYPE_NEON_FP_CVT16;

    case 1891:  /* neon_vcvtpuv8hf */
    case 1890:  /* neon_vcvtpsv8hf */
    case 1889:  /* neon_vcvtnuv8hf */
    case 1888:  /* neon_vcvtnsv8hf */
    case 1887:  /* neon_vcvtmuv8hf */
    case 1886:  /* neon_vcvtmsv8hf */
    case 1885:  /* neon_vcvtauv8hf */
    case 1884:  /* neon_vcvtasv8hf */
    case 1883:  /* neon_vcvtu_nv8hi */
    case 1882:  /* neon_vcvts_nv8hi */
    case 1879:  /* neon_vcvtu_nv4si */
    case 1878:  /* neon_vcvts_nv4si */
    case 1873:  /* neon_vcvtu_nv8hf */
    case 1872:  /* neon_vcvts_nv8hf */
    case 1871:  /* neon_vcvtu_nv4sf */
    case 1870:  /* neon_vcvts_nv4sf */
    case 1865:  /* neon_vcvtuv8hf */
    case 1864:  /* neon_vcvtsv8hf */
    case 1863:  /* neon_vcvtuv8hi */
    case 1862:  /* neon_vcvtsv8hi */
    case 1857:  /* neon_vcvtuv4si */
    case 1856:  /* neon_vcvtsv4si */
    case 1853:  /* neon_vcvtuv4sf */
    case 1852:  /* neon_vcvtsv4sf */
    case 1849:  /* fixuns_truncv4sfv4si2 */
    case 1847:  /* fix_truncv4sfv4si2 */
    case 1845:  /* floatunsv4siv4sf2 */
    case 1843:  /* floatv4siv4sf2 */
    case 1060:  /* neon_vcvtauv4sfv4si */
    case 1059:  /* neon_vcvtmuv4sfv4si */
    case 1058:  /* neon_vcvtpuv4sfv4si */
    case 1057:  /* neon_vcvtav4sfv4si */
    case 1056:  /* neon_vcvtmv4sfv4si */
    case 1055:  /* neon_vcvtpv4sfv4si */
      return CORTEX_A15_NEON_TYPE_NEON_FP_CVT_INT_Q;

    case 1899:  /* neon_vcvtpuv4hf */
    case 1898:  /* neon_vcvtpsv4hf */
    case 1897:  /* neon_vcvtnuv4hf */
    case 1896:  /* neon_vcvtnsv4hf */
    case 1895:  /* neon_vcvtmuv4hf */
    case 1894:  /* neon_vcvtmsv4hf */
    case 1893:  /* neon_vcvtauv4hf */
    case 1892:  /* neon_vcvtasv4hf */
    case 1881:  /* neon_vcvtu_nv4hi */
    case 1880:  /* neon_vcvts_nv4hi */
    case 1877:  /* neon_vcvtu_nv2si */
    case 1876:  /* neon_vcvts_nv2si */
    case 1875:  /* neon_vcvtu_nv4hf */
    case 1874:  /* neon_vcvts_nv4hf */
    case 1869:  /* neon_vcvtu_nv2sf */
    case 1868:  /* neon_vcvts_nv2sf */
    case 1867:  /* neon_vcvtuv4hf */
    case 1866:  /* neon_vcvtsv4hf */
    case 1861:  /* neon_vcvtuv4hi */
    case 1860:  /* neon_vcvtsv4hi */
    case 1855:  /* neon_vcvtuv2si */
    case 1854:  /* neon_vcvtsv2si */
    case 1851:  /* neon_vcvtuv2sf */
    case 1850:  /* neon_vcvtsv2sf */
    case 1848:  /* fixuns_truncv2sfv2si2 */
    case 1846:  /* fix_truncv2sfv2si2 */
    case 1844:  /* floatunsv2siv2sf2 */
    case 1842:  /* floatv2siv2sf2 */
    case 1054:  /* neon_vcvtauv2sfv2si */
    case 1053:  /* neon_vcvtmuv2sfv2si */
    case 1052:  /* neon_vcvtpuv2sfv2si */
    case 1051:  /* neon_vcvtav2sfv2si */
    case 1050:  /* neon_vcvtmv2sfv2si */
    case 1049:  /* neon_vcvtpv2sfv2si */
      return CORTEX_A15_NEON_TYPE_NEON_FP_CVT_INT;

    case 1629:  /* neon_vabdfv4sf */
    case 1603:  /* neon_vcaltv8hf_fp16insn_unspec */
    case 1602:  /* neon_vcalev8hf_fp16insn_unspec */
    case 1601:  /* neon_vcagtv8hf_fp16insn_unspec */
    case 1600:  /* neon_vcagev8hf_fp16insn_unspec */
    case 1595:  /* neon_vcalev8hf_fp16insn */
    case 1594:  /* neon_vcaltv8hf_fp16insn */
    case 1593:  /* neon_vcagev8hf_fp16insn */
    case 1592:  /* neon_vcagtv8hf_fp16insn */
    case 1591:  /* neon_vcagtv4sf_insn_unspec */
    case 1590:  /* neon_vcagev4sf_insn_unspec */
    case 1587:  /* neon_vcagev4sf_insn */
    case 1586:  /* neon_vcagtv4sf_insn */
    case 1566:  /* neon_vclev8hf_fp16insn_unspec */
    case 1565:  /* neon_vcltv8hf_fp16insn_unspec */
    case 1564:  /* neon_vcgev8hf_fp16insn_unspec */
    case 1563:  /* neon_vcgtv8hf_fp16insn_unspec */
    case 1562:  /* neon_vceqv8hf_fp16insn_unspec */
    case 1551:  /* neon_vclev4sf_insn_unspec */
    case 1550:  /* neon_vcltv4sf_insn_unspec */
    case 1549:  /* neon_vcgev4sf_insn_unspec */
    case 1548:  /* neon_vcgtv4sf_insn_unspec */
    case 1547:  /* neon_vceqv4sf_insn_unspec */
    case 1280:  /* quad_halves_plusv4sf */
      return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH_Q;

    case 1735:  /* neon_vpminfv4sf */
    case 1734:  /* neon_vpmaxfv4sf */
    case 1733:  /* neon_vpminfv2sf */
    case 1732:  /* neon_vpmaxfv2sf */
    case 1695:  /* fminv4sf3 */
    case 1694:  /* fmaxv4sf3 */
    case 1693:  /* fminv2sf3 */
    case 1692:  /* fmaxv2sf3 */
    case 1691:  /* neon_vminnmv4hf */
    case 1690:  /* neon_vmaxnmv4hf */
    case 1689:  /* neon_vminnmv8hf */
    case 1688:  /* neon_vmaxnmv8hf */
    case 1685:  /* neon_vminfv4hf */
    case 1684:  /* neon_vmaxfv4hf */
    case 1683:  /* neon_vminfv8hf */
    case 1682:  /* neon_vmaxfv8hf */
    case 1681:  /* neon_vminfv4sf */
    case 1680:  /* neon_vmaxfv4sf */
    case 1679:  /* neon_vminfv2sf */
    case 1678:  /* neon_vmaxfv2sf */
    case 1628:  /* neon_vabdfv2sf */
    case 1607:  /* neon_vcaltv4hf_fp16insn_unspec */
    case 1606:  /* neon_vcalev4hf_fp16insn_unspec */
    case 1605:  /* neon_vcagtv4hf_fp16insn_unspec */
    case 1604:  /* neon_vcagev4hf_fp16insn_unspec */
    case 1599:  /* neon_vcalev4hf_fp16insn */
    case 1598:  /* neon_vcaltv4hf_fp16insn */
    case 1597:  /* neon_vcagev4hf_fp16insn */
    case 1596:  /* neon_vcagtv4hf_fp16insn */
    case 1589:  /* neon_vcagtv2sf_insn_unspec */
    case 1588:  /* neon_vcagev2sf_insn_unspec */
    case 1585:  /* neon_vcagev2sf_insn */
    case 1584:  /* neon_vcagtv2sf_insn */
    case 1571:  /* neon_vclev4hf_fp16insn_unspec */
    case 1570:  /* neon_vcltv4hf_fp16insn_unspec */
    case 1569:  /* neon_vcgev4hf_fp16insn_unspec */
    case 1568:  /* neon_vcgtv4hf_fp16insn_unspec */
    case 1567:  /* neon_vceqv4hf_fp16insn_unspec */
    case 1546:  /* neon_vclev2sf_insn_unspec */
    case 1545:  /* neon_vcltv2sf_insn_unspec */
    case 1544:  /* neon_vcgev2sf_insn_unspec */
    case 1543:  /* neon_vcgtv2sf_insn_unspec */
    case 1542:  /* neon_vceqv2sf_insn_unspec */
    case 1282:  /* quad_halves_smaxv4sf */
    case 1281:  /* quad_halves_sminv4sf */
      return CORTEX_A15_NEON_TYPE_NEON_FP_ARITH;

    case 2218:  /* neon_vsli_nv2di */
    case 2216:  /* neon_vsli_nv4si */
    case 2214:  /* neon_vsli_nv8hi */
    case 2212:  /* neon_vsli_nv16qi */
    case 2210:  /* neon_vsri_nv2di */
    case 2208:  /* neon_vsri_nv4si */
    case 2206:  /* neon_vsri_nv8hi */
    case 2204:  /* neon_vsri_nv16qi */
    case 1223:  /* ashlv2di3_unsigned */
    case 1222:  /* ashlv4si3_unsigned */
    case 1220:  /* ashlv8hi3_unsigned */
    case 1218:  /* ashlv16qi3_unsigned */
    case 1216:  /* ashlv2di3_signed */
    case 1215:  /* ashlv4si3_signed */
    case 1213:  /* ashlv8hi3_signed */
    case 1211:  /* ashlv16qi3_signed */
      return CORTEX_A15_NEON_TYPE_NEON_SHIFT_REG_BASIC_Q;

    case 2217:  /* neon_vsli_ndi */
    case 2215:  /* neon_vsli_nv2si */
    case 2213:  /* neon_vsli_nv4hi */
    case 2211:  /* neon_vsli_nv8qi */
    case 2209:  /* neon_vsri_ndi */
    case 2207:  /* neon_vsri_nv2si */
    case 2205:  /* neon_vsri_nv4hi */
    case 2203:  /* neon_vsri_nv8qi */
    case 1228:  /* unsigned_shift_di3_neon */
    case 1227:  /* signed_shift_di3_neon */
    case 1221:  /* ashlv2si3_unsigned */
    case 1219:  /* ashlv4hi3_unsigned */
    case 1217:  /* ashlv8qi3_unsigned */
    case 1214:  /* ashlv2si3_signed */
    case 1212:  /* ashlv4hi3_signed */
    case 1210:  /* ashlv8qi3_signed */
      return CORTEX_A15_NEON_TYPE_NEON_SHIFT_REG_BASIC;

    case 2164:  /* neon_vqshlu_nv2di */
    case 2163:  /* neon_vqshlu_ndi */
    case 2162:  /* neon_vqshlu_nv4si */
    case 2161:  /* neon_vqshlu_nv2si */
    case 2160:  /* neon_vqshlu_nv8hi */
    case 2159:  /* neon_vqshlu_nv4hi */
    case 2158:  /* neon_vqshlu_nv16qi */
    case 2157:  /* neon_vqshlu_nv8qi */
    case 2156:  /* neon_vqshl_u_nv2di */
    case 2155:  /* neon_vqshl_s_nv2di */
    case 2154:  /* neon_vqshl_u_ndi */
    case 2153:  /* neon_vqshl_s_ndi */
    case 2152:  /* neon_vqshl_u_nv4si */
    case 2151:  /* neon_vqshl_s_nv4si */
    case 2150:  /* neon_vqshl_u_nv2si */
    case 2149:  /* neon_vqshl_s_nv2si */
    case 2148:  /* neon_vqshl_u_nv8hi */
    case 2147:  /* neon_vqshl_s_nv8hi */
    case 2146:  /* neon_vqshl_u_nv4hi */
    case 2145:  /* neon_vqshl_s_nv4hi */
    case 2144:  /* neon_vqshl_u_nv16qi */
    case 2143:  /* neon_vqshl_s_nv16qi */
    case 2142:  /* neon_vqshl_u_nv8qi */
    case 2141:  /* neon_vqshl_s_nv8qi */
    case 2132:  /* neon_vqrshrun_nv2di */
    case 2131:  /* neon_vqshrun_nv2di */
    case 2130:  /* neon_vqrshrun_nv4si */
    case 2129:  /* neon_vqshrun_nv4si */
    case 2128:  /* neon_vqrshrun_nv8hi */
    case 2127:  /* neon_vqshrun_nv8hi */
    case 2126:  /* neon_vqrshrnu_nv2di */
    case 2125:  /* neon_vqrshrns_nv2di */
    case 2124:  /* neon_vqshrnu_nv2di */
    case 2123:  /* neon_vqshrns_nv2di */
    case 2122:  /* neon_vqrshrnu_nv4si */
    case 2121:  /* neon_vqrshrns_nv4si */
    case 2120:  /* neon_vqshrnu_nv4si */
    case 2119:  /* neon_vqshrns_nv4si */
    case 2118:  /* neon_vqrshrnu_nv8hi */
    case 2117:  /* neon_vqrshrns_nv8hi */
    case 2116:  /* neon_vqshrnu_nv8hi */
    case 2115:  /* neon_vqshrns_nv8hi */
    case 2076:  /* neon_vqrshluv2di */
    case 2075:  /* neon_vqrshlsv2di */
    case 2074:  /* neon_vqshluv2di */
    case 2073:  /* neon_vqshlsv2di */
    case 2072:  /* neon_vqrshludi */
    case 2071:  /* neon_vqrshlsdi */
    case 2070:  /* neon_vqshludi */
    case 2069:  /* neon_vqshlsdi */
    case 2068:  /* neon_vqrshluv4si */
    case 2067:  /* neon_vqrshlsv4si */
    case 2066:  /* neon_vqshluv4si */
    case 2065:  /* neon_vqshlsv4si */
    case 2064:  /* neon_vqrshluv2si */
    case 2063:  /* neon_vqrshlsv2si */
    case 2062:  /* neon_vqshluv2si */
    case 2061:  /* neon_vqshlsv2si */
    case 2060:  /* neon_vqrshluv8hi */
    case 2059:  /* neon_vqrshlsv8hi */
    case 2058:  /* neon_vqshluv8hi */
    case 2057:  /* neon_vqshlsv8hi */
    case 2056:  /* neon_vqrshluv4hi */
    case 2055:  /* neon_vqrshlsv4hi */
    case 2054:  /* neon_vqshluv4hi */
    case 2053:  /* neon_vqshlsv4hi */
    case 2052:  /* neon_vqrshluv16qi */
    case 2051:  /* neon_vqrshlsv16qi */
    case 2050:  /* neon_vqshluv16qi */
    case 2049:  /* neon_vqshlsv16qi */
    case 2048:  /* neon_vqrshluv8qi */
    case 2047:  /* neon_vqrshlsv8qi */
    case 2046:  /* neon_vqshluv8qi */
    case 2045:  /* neon_vqshlsv8qi */
    case 1911:  /* neon_vqmovunv2di */
    case 1910:  /* neon_vqmovunv4si */
    case 1909:  /* neon_vqmovunv8hi */
    case 1908:  /* neon_vqmovnuv2di */
    case 1907:  /* neon_vqmovnsv2di */
    case 1906:  /* neon_vqmovnuv4si */
    case 1905:  /* neon_vqmovnsv4si */
    case 1904:  /* neon_vqmovnuv8hi */
    case 1903:  /* neon_vqmovnsv8hi */
      return CORTEX_A15_NEON_TYPE_NEON_SHIFT_IMM_COMPLEX;

    case 2506:  /* neon_vec_ushiftl_v2si */
    case 2505:  /* neon_vec_sshiftl_v2si */
    case 2504:  /* neon_vec_ushiftl_v4hi */
    case 2503:  /* neon_vec_sshiftl_v4hi */
    case 2502:  /* neon_vec_ushiftl_v8qi */
    case 2501:  /* neon_vec_sshiftl_v8qi */
    case 2488:  /* neon_vec_unpacku_hi_v4si */
    case 2487:  /* neon_vec_unpacks_hi_v4si */
    case 2486:  /* neon_vec_unpacku_hi_v8hi */
    case 2485:  /* neon_vec_unpacks_hi_v8hi */
    case 2484:  /* neon_vec_unpacku_hi_v16qi */
    case 2483:  /* neon_vec_unpacks_hi_v16qi */
    case 2482:  /* neon_vec_unpacku_lo_v4si */
    case 2481:  /* neon_vec_unpacks_lo_v4si */
    case 2480:  /* neon_vec_unpacku_lo_v8hi */
    case 2479:  /* neon_vec_unpacks_lo_v8hi */
    case 2478:  /* neon_vec_unpacku_lo_v16qi */
    case 2477:  /* neon_vec_unpacks_lo_v16qi */
    case 2170:  /* neon_vshllu_nv2si */
    case 2169:  /* neon_vshlls_nv2si */
    case 2168:  /* neon_vshllu_nv4hi */
    case 2167:  /* neon_vshlls_nv4hi */
    case 2166:  /* neon_vshllu_nv8qi */
    case 2165:  /* neon_vshlls_nv8qi */
    case 2140:  /* neon_vshl_nv2di */
    case 2139:  /* neon_vshl_ndi */
    case 2138:  /* neon_vshl_nv4si */
    case 2137:  /* neon_vshl_nv2si */
    case 2136:  /* neon_vshl_nv8hi */
    case 2135:  /* neon_vshl_nv4hi */
    case 2134:  /* neon_vshl_nv16qi */
    case 2133:  /* neon_vshl_nv8qi */
    case 2114:  /* neon_vrshrn_nv2di */
    case 2113:  /* neon_vshrn_nv2di */
    case 2112:  /* neon_vrshrn_nv4si */
    case 2111:  /* neon_vshrn_nv4si */
    case 2110:  /* neon_vrshrn_nv8hi */
    case 2109:  /* neon_vshrn_nv8hi */
    case 2108:  /* neon_vrshru_nv2di */
    case 2107:  /* neon_vrshrs_nv2di */
    case 2106:  /* neon_vshru_nv2di */
    case 2105:  /* neon_vshrs_nv2di */
    case 2104:  /* neon_vrshru_ndi */
    case 2103:  /* neon_vrshrs_ndi */
    case 2102:  /* neon_vshru_ndi */
    case 2101:  /* neon_vshrs_ndi */
    case 2100:  /* neon_vrshru_nv4si */
    case 2099:  /* neon_vrshrs_nv4si */
    case 2098:  /* neon_vshru_nv4si */
    case 2097:  /* neon_vshrs_nv4si */
    case 2096:  /* neon_vrshru_nv2si */
    case 2095:  /* neon_vrshrs_nv2si */
    case 2094:  /* neon_vshru_nv2si */
    case 2093:  /* neon_vshrs_nv2si */
    case 2092:  /* neon_vrshru_nv8hi */
    case 2091:  /* neon_vrshrs_nv8hi */
    case 2090:  /* neon_vshru_nv8hi */
    case 2089:  /* neon_vshrs_nv8hi */
    case 2088:  /* neon_vrshru_nv4hi */
    case 2087:  /* neon_vrshrs_nv4hi */
    case 2086:  /* neon_vshru_nv4hi */
    case 2085:  /* neon_vshrs_nv4hi */
    case 2084:  /* neon_vrshru_nv16qi */
    case 2083:  /* neon_vrshrs_nv16qi */
    case 2082:  /* neon_vshru_nv16qi */
    case 2081:  /* neon_vshrs_nv16qi */
    case 2080:  /* neon_vrshru_nv8qi */
    case 2079:  /* neon_vrshrs_nv8qi */
    case 2078:  /* neon_vshru_nv8qi */
    case 2077:  /* neon_vshrs_nv8qi */
    case 2044:  /* neon_vrshluv2di */
    case 2043:  /* neon_vrshlsv2di */
    case 2042:  /* neon_vshluv2di */
    case 2041:  /* neon_vshlsv2di */
    case 2040:  /* neon_vrshludi */
    case 2039:  /* neon_vrshlsdi */
    case 2038:  /* neon_vshludi */
    case 2037:  /* neon_vshlsdi */
    case 2036:  /* neon_vrshluv4si */
    case 2035:  /* neon_vrshlsv4si */
    case 2034:  /* neon_vshluv4si */
    case 2033:  /* neon_vshlsv4si */
    case 2032:  /* neon_vrshluv2si */
    case 2031:  /* neon_vrshlsv2si */
    case 2030:  /* neon_vshluv2si */
    case 2029:  /* neon_vshlsv2si */
    case 2028:  /* neon_vrshluv8hi */
    case 2027:  /* neon_vrshlsv8hi */
    case 2026:  /* neon_vshluv8hi */
    case 2025:  /* neon_vshlsv8hi */
    case 2024:  /* neon_vrshluv4hi */
    case 2023:  /* neon_vrshlsv4hi */
    case 2022:  /* neon_vshluv4hi */
    case 2021:  /* neon_vshlsv4hi */
    case 2020:  /* neon_vrshluv16qi */
    case 2019:  /* neon_vrshlsv16qi */
    case 2018:  /* neon_vshluv16qi */
    case 2017:  /* neon_vshlsv16qi */
    case 2016:  /* neon_vrshluv8qi */
    case 2015:  /* neon_vrshlsv8qi */
    case 2014:  /* neon_vshluv8qi */
    case 2013:  /* neon_vshlsv8qi */
    case 1917:  /* neon_vmovluv2si */
    case 1916:  /* neon_vmovlsv2si */
    case 1915:  /* neon_vmovluv4hi */
    case 1914:  /* neon_vmovlsv4hi */
    case 1913:  /* neon_vmovluv8qi */
    case 1912:  /* neon_vmovlsv8qi */
    case 1902:  /* neon_vmovnv2di */
    case 1901:  /* neon_vmovnv4si */
    case 1900:  /* neon_vmovnv8hi */
    case 1230:  /* lshrdi3_neon_imm_noclobber */
    case 1229:  /* ashrdi3_neon_imm_noclobber */
    case 1209:  /* vlshrv4si3_imm */
    case 1208:  /* vlshrv2si3_imm */
    case 1207:  /* vlshrv8hi3_imm */
    case 1206:  /* vlshrv4hi3_imm */
    case 1205:  /* vlshrv16qi3_imm */
    case 1204:  /* vlshrv8qi3_imm */
    case 1203:  /* vashrv4si3_imm */
    case 1202:  /* vashrv2si3_imm */
    case 1201:  /* vashrv8hi3_imm */
    case 1200:  /* vashrv4hi3_imm */
    case 1199:  /* vashrv16qi3_imm */
    case 1198:  /* vashrv8qi3_imm */
      return CORTEX_A15_NEON_TYPE_NEON_SHIFT_IMM_BASIC;

    case 2202:  /* neon_vrsrau_nv2di */
    case 2201:  /* neon_vrsras_nv2di */
    case 2200:  /* neon_vsrau_nv2di */
    case 2199:  /* neon_vsras_nv2di */
    case 2198:  /* neon_vrsrau_ndi */
    case 2197:  /* neon_vrsras_ndi */
    case 2196:  /* neon_vsrau_ndi */
    case 2195:  /* neon_vsras_ndi */
    case 2194:  /* neon_vrsrau_nv4si */
    case 2193:  /* neon_vrsras_nv4si */
    case 2192:  /* neon_vsrau_nv4si */
    case 2191:  /* neon_vsras_nv4si */
    case 2190:  /* neon_vrsrau_nv2si */
    case 2189:  /* neon_vrsras_nv2si */
    case 2188:  /* neon_vsrau_nv2si */
    case 2187:  /* neon_vsras_nv2si */
    case 2186:  /* neon_vrsrau_nv8hi */
    case 2185:  /* neon_vrsras_nv8hi */
    case 2184:  /* neon_vsrau_nv8hi */
    case 2183:  /* neon_vsras_nv8hi */
    case 2182:  /* neon_vrsrau_nv4hi */
    case 2181:  /* neon_vrsras_nv4hi */
    case 2180:  /* neon_vsrau_nv4hi */
    case 2179:  /* neon_vsras_nv4hi */
    case 2178:  /* neon_vrsrau_nv16qi */
    case 2177:  /* neon_vrsras_nv16qi */
    case 2176:  /* neon_vsrau_nv16qi */
    case 2175:  /* neon_vsras_nv16qi */
    case 2174:  /* neon_vrsrau_nv8qi */
    case 2173:  /* neon_vrsras_nv8qi */
    case 2172:  /* neon_vsrau_nv8qi */
    case 2171:  /* neon_vsras_nv8qi */
      return CORTEX_A15_NEON_TYPE_NEON_SHIFT_ACC;

    case 1971:  /* neon_vqdmlsl_lanev2si */
    case 1970:  /* neon_vqdmlsl_lanev4hi */
    case 1959:  /* neon_vqdmlal_lanev2si */
    case 1958:  /* neon_vqdmlal_lanev4hi */
    case 1442:  /* neon_vqdmlslv2si */
    case 1441:  /* neon_vqdmlslv4hi */
    case 1440:  /* neon_vqdmlalv2si */
    case 1439:  /* neon_vqdmlalv4hi */
    case 1438:  /* neon_vqrdmlshv4si */
    case 1437:  /* neon_vqrdmlahv4si */
    case 1436:  /* neon_vqrdmlshv8hi */
    case 1435:  /* neon_vqrdmlahv8hi */
    case 1434:  /* neon_vqrdmlshv2si */
    case 1433:  /* neon_vqrdmlahv2si */
    case 1432:  /* neon_vqrdmlshv4hi */
    case 1431:  /* neon_vqrdmlahv4hi */
      return CORTEX_A15_NEON_TYPE_NEON_SAT_MLA_LONG;

    case 1943:  /* neon_vqrdmlsh_lanev4si */
    case 1942:  /* neon_vqrdmlah_lanev4si */
    case 1941:  /* neon_vqrdmlsh_lanev8hi */
    case 1940:  /* neon_vqrdmlah_lanev8hi */
      return CORTEX_A15_NEON_TYPE_NEON_MLA_Q;

    case 1969:  /* neon_vmlslu_lanev2si */
    case 1968:  /* neon_vmlsls_lanev2si */
    case 1967:  /* neon_vmlslu_lanev4hi */
    case 1966:  /* neon_vmlsls_lanev4hi */
    case 1957:  /* neon_vmlalu_lanev2si */
    case 1956:  /* neon_vmlals_lanev2si */
    case 1955:  /* neon_vmlalu_lanev4hi */
    case 1954:  /* neon_vmlals_lanev4hi */
    case 1947:  /* neon_vqrdmlsh_lanev2si */
    case 1946:  /* neon_vqrdmlah_lanev2si */
    case 1945:  /* neon_vqrdmlsh_lanev4hi */
    case 1944:  /* neon_vqrdmlah_lanev4hi */
    case 1422:  /* neon_vmlsluv2si */
    case 1421:  /* neon_vmlslsv2si */
    case 1420:  /* neon_vmlsluv4hi */
    case 1419:  /* neon_vmlslsv4hi */
    case 1418:  /* neon_vmlsluv8qi */
    case 1417:  /* neon_vmlslsv8qi */
    case 1408:  /* neon_vmlaluv2si */
    case 1407:  /* neon_vmlalsv2si */
    case 1406:  /* neon_vmlaluv4hi */
    case 1405:  /* neon_vmlalsv4hi */
    case 1404:  /* neon_vmlaluv8qi */
    case 1403:  /* neon_vmlalsv8qi */
      return CORTEX_A15_NEON_TYPE_NEON_MLA;

    case 1939:  /* neon_vqrdmulh_lanev2si */
    case 1938:  /* neon_vqdmulh_lanev2si */
    case 1937:  /* neon_vqrdmulh_lanev4hi */
    case 1936:  /* neon_vqdmulh_lanev4hi */
    case 1935:  /* neon_vqrdmulh_lanev4si */
    case 1934:  /* neon_vqdmulh_lanev4si */
    case 1933:  /* neon_vqrdmulh_lanev8hi */
    case 1932:  /* neon_vqdmulh_lanev8hi */
    case 1430:  /* neon_vqrdmulhv4si */
    case 1429:  /* neon_vqdmulhv4si */
    case 1428:  /* neon_vqrdmulhv8hi */
    case 1427:  /* neon_vqdmulhv8hi */
    case 1393:  /* neon_vmulfv8hf */
      return CORTEX_A15_NEON_TYPE_NEON_MULTIPLY_Q;

    case 2518:  /* neon_vec_umult_v2si */
    case 2517:  /* neon_vec_smult_v2si */
    case 2516:  /* neon_vec_umult_v4hi */
    case 2515:  /* neon_vec_smult_v4hi */
    case 2514:  /* neon_vec_umult_v8qi */
    case 2513:  /* neon_vec_smult_v8qi */
    case 2500:  /* neon_vec_umult_hi_v4si */
    case 2499:  /* neon_vec_smult_hi_v4si */
    case 2498:  /* neon_vec_umult_hi_v8hi */
    case 2497:  /* neon_vec_smult_hi_v8hi */
    case 2496:  /* neon_vec_umult_hi_v16qi */
    case 2495:  /* neon_vec_smult_hi_v16qi */
    case 2494:  /* neon_vec_umult_lo_v4si */
    case 2493:  /* neon_vec_smult_lo_v4si */
    case 2492:  /* neon_vec_umult_lo_v8hi */
    case 2491:  /* neon_vec_smult_lo_v8hi */
    case 2490:  /* neon_vec_umult_lo_v16qi */
    case 2489:  /* neon_vec_smult_lo_v16qi */
    case 1931:  /* neon_vqdmull_lanev2si */
    case 1930:  /* neon_vqdmull_lanev4hi */
    case 1929:  /* neon_vmullu_lanev2si */
    case 1928:  /* neon_vmulls_lanev2si */
    case 1927:  /* neon_vmullu_lanev4hi */
    case 1926:  /* neon_vmulls_lanev4hi */
    case 1453:  /* neon_vqdmullv2si */
    case 1452:  /* neon_vqdmullv4hi */
    case 1451:  /* neon_vmullpv2si */
    case 1450:  /* neon_vmulluv2si */
    case 1449:  /* neon_vmullsv2si */
    case 1448:  /* neon_vmullpv4hi */
    case 1447:  /* neon_vmulluv4hi */
    case 1446:  /* neon_vmullsv4hi */
    case 1445:  /* neon_vmullpv8qi */
    case 1444:  /* neon_vmulluv8qi */
    case 1443:  /* neon_vmullsv8qi */
    case 1426:  /* neon_vqrdmulhv2si */
    case 1425:  /* neon_vqdmulhv2si */
    case 1424:  /* neon_vqrdmulhv4hi */
    case 1423:  /* neon_vqdmulhv4hi */
    case 1394:  /* neon_vmulfv4hf */
      return CORTEX_A15_NEON_TYPE_NEON_MULTIPLY;

    case 1760:  /* neon_vqnegv4si */
    case 1759:  /* neon_vqnegv2si */
    case 1758:  /* neon_vqnegv8hi */
    case 1757:  /* neon_vqnegv4hi */
    case 1756:  /* neon_vqnegv16qi */
    case 1755:  /* neon_vqnegv8qi */
    case 1749:  /* neon_vqabsv4si */
    case 1748:  /* neon_vqabsv2si */
    case 1747:  /* neon_vqabsv8hi */
    case 1746:  /* neon_vqabsv4hi */
    case 1745:  /* neon_vqabsv16qi */
    case 1744:  /* neon_vqabsv8qi */
    case 1731:  /* neon_vpminuv2si */
    case 1730:  /* neon_vpminsv2si */
    case 1729:  /* neon_vpmaxuv2si */
    case 1728:  /* neon_vpmaxsv2si */
    case 1727:  /* neon_vpminuv4hi */
    case 1726:  /* neon_vpminsv4hi */
    case 1725:  /* neon_vpmaxuv4hi */
    case 1724:  /* neon_vpmaxsv4hi */
    case 1723:  /* neon_vpminuv8qi */
    case 1722:  /* neon_vpminsv8qi */
    case 1721:  /* neon_vpmaxuv8qi */
    case 1720:  /* neon_vpmaxsv8qi */
    case 1687:  /* neon_vpminfv4hf */
    case 1686:  /* neon_vpmaxfv4hf */
    case 1677:  /* neon_vminuv4si */
    case 1676:  /* neon_vminsv4si */
    case 1675:  /* neon_vmaxuv4si */
    case 1674:  /* neon_vmaxsv4si */
    case 1673:  /* neon_vminuv2si */
    case 1672:  /* neon_vminsv2si */
    case 1671:  /* neon_vmaxuv2si */
    case 1670:  /* neon_vmaxsv2si */
    case 1669:  /* neon_vminuv8hi */
    case 1668:  /* neon_vminsv8hi */
    case 1667:  /* neon_vmaxuv8hi */
    case 1666:  /* neon_vmaxsv8hi */
    case 1665:  /* neon_vminuv4hi */
    case 1664:  /* neon_vminsv4hi */
    case 1663:  /* neon_vmaxuv4hi */
    case 1662:  /* neon_vmaxsv4hi */
    case 1661:  /* neon_vminuv16qi */
    case 1660:  /* neon_vminsv16qi */
    case 1659:  /* neon_vmaxuv16qi */
    case 1658:  /* neon_vmaxsv16qi */
    case 1657:  /* neon_vminuv8qi */
    case 1656:  /* neon_vminsv8qi */
    case 1655:  /* neon_vmaxuv8qi */
    case 1654:  /* neon_vmaxsv8qi */
    case 1583:  /* neon_vcgeuv4si */
    case 1582:  /* neon_vcgtuv4si */
    case 1581:  /* neon_vcgeuv2si */
    case 1580:  /* neon_vcgtuv2si */
    case 1579:  /* neon_vcgeuv8hi */
    case 1578:  /* neon_vcgtuv8hi */
    case 1577:  /* neon_vcgeuv4hi */
    case 1576:  /* neon_vcgtuv4hi */
    case 1575:  /* neon_vcgeuv16qi */
    case 1574:  /* neon_vcgtuv16qi */
    case 1573:  /* neon_vcgeuv8qi */
    case 1572:  /* neon_vcgtuv8qi */
    case 1501:  /* neon_vrsubhnv2di */
    case 1500:  /* neon_vsubhnv2di */
    case 1499:  /* neon_vrsubhnv4si */
    case 1498:  /* neon_vsubhnv4si */
    case 1497:  /* neon_vrsubhnv8hi */
    case 1496:  /* neon_vsubhnv8hi */
    case 1495:  /* neon_vhsubuv4si */
    case 1494:  /* neon_vhsubsv4si */
    case 1493:  /* neon_vhsubuv2si */
    case 1492:  /* neon_vhsubsv2si */
    case 1491:  /* neon_vhsubuv8hi */
    case 1490:  /* neon_vhsubsv8hi */
    case 1489:  /* neon_vhsubuv4hi */
    case 1488:  /* neon_vhsubsv4hi */
    case 1487:  /* neon_vhsubuv16qi */
    case 1486:  /* neon_vhsubsv16qi */
    case 1485:  /* neon_vhsubuv8qi */
    case 1484:  /* neon_vhsubsv8qi */
    case 1483:  /* neon_vqsubuv2di */
    case 1482:  /* neon_vqsubsv2di */
    case 1481:  /* neon_vqsubudi */
    case 1480:  /* neon_vqsubsdi */
    case 1479:  /* neon_vqsubuv4si */
    case 1478:  /* neon_vqsubsv4si */
    case 1477:  /* neon_vqsubuv2si */
    case 1476:  /* neon_vqsubsv2si */
    case 1475:  /* neon_vqsubuv8hi */
    case 1474:  /* neon_vqsubsv8hi */
    case 1473:  /* neon_vqsubuv4hi */
    case 1472:  /* neon_vqsubsv4hi */
    case 1471:  /* neon_vqsubuv16qi */
    case 1470:  /* neon_vqsubsv16qi */
    case 1469:  /* neon_vqsubuv8qi */
    case 1468:  /* neon_vqsubsv8qi */
    case 1388:  /* neon_vraddhnv2di */
    case 1387:  /* neon_vaddhnv2di */
    case 1386:  /* neon_vraddhnv4si */
    case 1385:  /* neon_vaddhnv4si */
    case 1384:  /* neon_vraddhnv8hi */
    case 1383:  /* neon_vaddhnv8hi */
    case 1382:  /* neon_vqadduv2di */
    case 1381:  /* neon_vqaddsv2di */
    case 1380:  /* neon_vqaddudi */
    case 1379:  /* neon_vqaddsdi */
    case 1378:  /* neon_vqadduv4si */
    case 1377:  /* neon_vqaddsv4si */
    case 1376:  /* neon_vqadduv2si */
    case 1375:  /* neon_vqaddsv2si */
    case 1374:  /* neon_vqadduv8hi */
    case 1373:  /* neon_vqaddsv8hi */
    case 1372:  /* neon_vqadduv4hi */
    case 1371:  /* neon_vqaddsv4hi */
    case 1370:  /* neon_vqadduv16qi */
    case 1369:  /* neon_vqaddsv16qi */
    case 1368:  /* neon_vqadduv8qi */
    case 1367:  /* neon_vqaddsv8qi */
    case 1366:  /* neon_vhadduv4si */
    case 1365:  /* neon_vhaddsv4si */
    case 1364:  /* neon_vrhadduv4si */
    case 1363:  /* neon_vrhaddsv4si */
    case 1362:  /* neon_vhadduv2si */
    case 1361:  /* neon_vhaddsv2si */
    case 1360:  /* neon_vrhadduv2si */
    case 1359:  /* neon_vrhaddsv2si */
    case 1358:  /* neon_vhadduv8hi */
    case 1357:  /* neon_vhaddsv8hi */
    case 1356:  /* neon_vrhadduv8hi */
    case 1355:  /* neon_vrhaddsv8hi */
    case 1354:  /* neon_vhadduv4hi */
    case 1353:  /* neon_vhaddsv4hi */
    case 1352:  /* neon_vrhadduv4hi */
    case 1351:  /* neon_vrhaddsv4hi */
    case 1350:  /* neon_vhadduv16qi */
    case 1349:  /* neon_vhaddsv16qi */
    case 1348:  /* neon_vrhadduv16qi */
    case 1347:  /* neon_vrhaddsv16qi */
    case 1346:  /* neon_vhadduv8qi */
    case 1345:  /* neon_vhaddsv8qi */
    case 1344:  /* neon_vrhadduv8qi */
    case 1343:  /* neon_vrhaddsv8qi */
    case 1328:  /* *us_subv2sf_neon */
    case 1327:  /* *us_subv2si_neon */
    case 1326:  /* *us_subv4hi_neon */
    case 1325:  /* *us_subv8qi_neon */
    case 1324:  /* *ss_subv2sf_neon */
    case 1323:  /* *ss_subv2si_neon */
    case 1322:  /* *ss_subv4hi_neon */
    case 1321:  /* *ss_subv8qi_neon */
    case 1320:  /* *us_addv2sf_neon */
    case 1319:  /* *us_addv2si_neon */
    case 1318:  /* *us_addv4hi_neon */
    case 1317:  /* *us_addv8qi_neon */
    case 1316:  /* *ss_addv2sf_neon */
    case 1315:  /* *ss_addv2si_neon */
    case 1314:  /* *ss_addv4hi_neon */
    case 1313:  /* *ss_addv8qi_neon */
    case 1312:  /* neon_vpumaxv2si */
    case 1311:  /* neon_vpumaxv4hi */
    case 1310:  /* neon_vpumaxv8qi */
    case 1309:  /* neon_vpuminv2si */
    case 1308:  /* neon_vpuminv4hi */
    case 1307:  /* neon_vpuminv8qi */
    case 1292:  /* quad_halves_umaxv16qi */
    case 1291:  /* quad_halves_uminv16qi */
    case 1290:  /* quad_halves_smaxv16qi */
    case 1289:  /* quad_halves_sminv16qi */
    case 1287:  /* quad_halves_umaxv8hi */
    case 1286:  /* quad_halves_uminv8hi */
    case 1285:  /* quad_halves_smaxv8hi */
    case 1284:  /* quad_halves_sminv8hi */
    case 1279:  /* quad_halves_umaxv4si */
    case 1278:  /* quad_halves_uminv4si */
    case 1277:  /* quad_halves_smaxv4si */
    case 1276:  /* quad_halves_sminv4si */
    case 1175:  /* *umaxv4si3_neon */
    case 1174:  /* *umaxv2si3_neon */
    case 1173:  /* *umaxv8hi3_neon */
    case 1172:  /* *umaxv4hi3_neon */
    case 1171:  /* *umaxv16qi3_neon */
    case 1170:  /* *umaxv8qi3_neon */
    case 1169:  /* *uminv4si3_neon */
    case 1168:  /* *uminv2si3_neon */
    case 1167:  /* *uminv8hi3_neon */
    case 1166:  /* *uminv4hi3_neon */
    case 1165:  /* *uminv16qi3_neon */
    case 1164:  /* *uminv8qi3_neon */
    case 1149:  /* negv4hf2 */
    case 1148:  /* absv4hf2 */
    case 1147:  /* negv8hf2 */
    case 1146:  /* absv8hf2 */
      return CORTEX_A15_NEON_TYPE_NEON_ARITH_COMPLEX;

    case 1707:  /* neon_vpaddluv4si */
    case 1706:  /* neon_vpaddlsv4si */
    case 1705:  /* neon_vpaddluv2si */
    case 1704:  /* neon_vpaddlsv2si */
    case 1703:  /* neon_vpaddluv8hi */
    case 1702:  /* neon_vpaddlsv8hi */
    case 1701:  /* neon_vpaddluv4hi */
    case 1700:  /* neon_vpaddlsv4hi */
    case 1699:  /* neon_vpaddluv16qi */
    case 1698:  /* neon_vpaddlsv16qi */
    case 1697:  /* neon_vpaddluv8qi */
    case 1696:  /* neon_vpaddlsv8qi */
    case 1613:  /* neon_vtstv4si */
    case 1612:  /* neon_vtstv2si */
    case 1611:  /* neon_vtstv8hi */
    case 1610:  /* neon_vtstv4hi */
    case 1609:  /* neon_vtstv16qi */
    case 1608:  /* neon_vtstv8qi */
    case 1467:  /* neon_vsubwuv2si */
    case 1466:  /* neon_vsubwsv2si */
    case 1465:  /* neon_vsubwuv4hi */
    case 1464:  /* neon_vsubwsv4hi */
    case 1463:  /* neon_vsubwuv8qi */
    case 1462:  /* neon_vsubwsv8qi */
    case 1461:  /* neon_vsubluv2si */
    case 1460:  /* neon_vsublsv2si */
    case 1459:  /* neon_vsubluv4hi */
    case 1458:  /* neon_vsublsv4hi */
    case 1457:  /* neon_vsubluv8qi */
    case 1456:  /* neon_vsublsv8qi */
    case 1342:  /* neon_vaddwuv2si */
    case 1341:  /* neon_vaddwsv2si */
    case 1340:  /* neon_vaddwuv4hi */
    case 1339:  /* neon_vaddwsv4hi */
    case 1338:  /* neon_vaddwuv8qi */
    case 1337:  /* neon_vaddwsv8qi */
    case 1336:  /* neon_vaddluv2si */
    case 1335:  /* neon_vaddlsv2si */
    case 1334:  /* neon_vaddluv4hi */
    case 1333:  /* neon_vaddlsv4hi */
    case 1332:  /* neon_vaddluv8qi */
    case 1331:  /* neon_vaddlsv8qi */
    case 1298:  /* neon_vpaddv4hf */
    case 1293:  /* arm_reduc_plus_internal_v2di */
    case 1288:  /* quad_halves_plusv16qi */
    case 1283:  /* quad_halves_plusv8hi */
    case 1275:  /* quad_halves_plusv4si */
    case 1274:  /* widen_usumv2si3 */
    case 1273:  /* widen_usumv4hi3 */
    case 1272:  /* widen_usumv8qi3 */
    case 1271:  /* vec_sel_widen_usum_hiv4siv2si3 */
    case 1270:  /* vec_sel_widen_usum_hiv4siv4hi3 */
    case 1269:  /* vec_sel_widen_usum_hiv4siv8qi3 */
    case 1268:  /* vec_sel_widen_usum_hiv8hiv2si3 */
    case 1267:  /* vec_sel_widen_usum_hiv8hiv4hi3 */
    case 1266:  /* vec_sel_widen_usum_hiv8hiv8qi3 */
    case 1265:  /* vec_sel_widen_usum_hiv16qiv2si3 */
    case 1264:  /* vec_sel_widen_usum_hiv16qiv4hi3 */
    case 1263:  /* vec_sel_widen_usum_hiv16qiv8qi3 */
    case 1262:  /* vec_sel_widen_usum_lov4siv2si3 */
    case 1261:  /* vec_sel_widen_usum_lov4siv4hi3 */
    case 1260:  /* vec_sel_widen_usum_lov4siv8qi3 */
    case 1259:  /* vec_sel_widen_usum_lov8hiv2si3 */
    case 1258:  /* vec_sel_widen_usum_lov8hiv4hi3 */
    case 1257:  /* vec_sel_widen_usum_lov8hiv8qi3 */
    case 1256:  /* vec_sel_widen_usum_lov16qiv2si3 */
    case 1255:  /* vec_sel_widen_usum_lov16qiv4hi3 */
    case 1254:  /* vec_sel_widen_usum_lov16qiv8qi3 */
    case 1253:  /* widen_ssumv2si3 */
    case 1252:  /* widen_ssumv4hi3 */
    case 1251:  /* widen_ssumv8qi3 */
    case 1250:  /* vec_sel_widen_ssum_hiv4siv2si3 */
    case 1249:  /* vec_sel_widen_ssum_hiv4siv4hi3 */
    case 1248:  /* vec_sel_widen_ssum_hiv4siv8qi3 */
    case 1247:  /* vec_sel_widen_ssum_hiv8hiv2si3 */
    case 1246:  /* vec_sel_widen_ssum_hiv8hiv4hi3 */
    case 1245:  /* vec_sel_widen_ssum_hiv8hiv8qi3 */
    case 1244:  /* vec_sel_widen_ssum_hiv16qiv2si3 */
    case 1243:  /* vec_sel_widen_ssum_hiv16qiv4hi3 */
    case 1242:  /* vec_sel_widen_ssum_hiv16qiv8qi3 */
    case 1241:  /* vec_sel_widen_ssum_lov4siv2si3 */
    case 1240:  /* vec_sel_widen_ssum_lov4siv4hi3 */
    case 1239:  /* vec_sel_widen_ssum_lov4siv8qi3 */
    case 1238:  /* vec_sel_widen_ssum_lov8hiv2si3 */
    case 1237:  /* vec_sel_widen_ssum_lov8hiv4hi3 */
    case 1236:  /* vec_sel_widen_ssum_lov8hiv8qi3 */
    case 1235:  /* vec_sel_widen_ssum_lov16qiv2si3 */
    case 1234:  /* vec_sel_widen_ssum_lov16qiv4hi3 */
    case 1233:  /* vec_sel_widen_ssum_lov16qiv8qi3 */
    case 1117:  /* xorv2di3 */
    case 1116:  /* xorv4sf3 */
    case 1115:  /* xorv2sf3 */
    case 1114:  /* xorv8hf3 */
    case 1113:  /* xorv4hf3 */
    case 1112:  /* xorv4si3 */
    case 1111:  /* xorv2si3 */
    case 1110:  /* xorv8hi3 */
    case 1109:  /* xorv4hi3 */
    case 1108:  /* xorv16qi3 */
    case 1107:  /* xorv8qi3 */
    case 1105:  /* bicv2di3_neon */
    case 1104:  /* bicv4sf3_neon */
    case 1103:  /* bicv2sf3_neon */
    case 1102:  /* bicv8hf3_neon */
    case 1101:  /* bicv4hf3_neon */
    case 1100:  /* bicv4si3_neon */
    case 1099:  /* bicv2si3_neon */
    case 1098:  /* bicv8hi3_neon */
    case 1097:  /* bicv4hi3_neon */
    case 1096:  /* bicv16qi3_neon */
    case 1095:  /* bicv8qi3_neon */
    case 1093:  /* ornv2di3_neon */
    case 1092:  /* ornv4sf3_neon */
    case 1091:  /* ornv2sf3_neon */
    case 1090:  /* ornv8hf3_neon */
    case 1089:  /* ornv4hf3_neon */
    case 1088:  /* ornv4si3_neon */
    case 1087:  /* ornv2si3_neon */
    case 1086:  /* ornv8hi3_neon */
    case 1085:  /* ornv4hi3_neon */
    case 1084:  /* ornv16qi3_neon */
    case 1083:  /* ornv8qi3_neon */
    case 1082:  /* andv2di3 */
    case 1081:  /* andv4sf3 */
    case 1080:  /* andv2sf3 */
    case 1079:  /* andv8hf3 */
    case 1078:  /* andv4hf3 */
    case 1077:  /* andv4si3 */
    case 1076:  /* andv2si3 */
    case 1075:  /* andv8hi3 */
    case 1074:  /* andv4hi3 */
    case 1073:  /* andv16qi3 */
    case 1072:  /* andv8qi3 */
    case 1071:  /* iorv2di3 */
    case 1070:  /* iorv4sf3 */
    case 1069:  /* iorv2sf3 */
    case 1068:  /* iorv8hf3 */
    case 1067:  /* iorv4hf3 */
    case 1066:  /* iorv4si3 */
    case 1065:  /* iorv2si3 */
    case 1064:  /* iorv8hi3 */
    case 1063:  /* iorv4hi3 */
    case 1062:  /* iorv16qi3 */
    case 1061:  /* iorv8qi3 */
    case 997:  /* subv4hf3_fp16 */
    case 996:  /* subv8hf3_fp16 */
      return CORTEX_A15_NEON_TYPE_NEON_ARITH_BASIC;

    case 1647:  /* neon_vabauv4si */
    case 1646:  /* neon_vabasv4si */
    case 1643:  /* neon_vabauv8hi */
    case 1642:  /* neon_vabasv8hi */
    case 1639:  /* neon_vabauv16qi */
    case 1638:  /* neon_vabasv16qi */
      return CORTEX_A15_NEON_TYPE_NEON_ARITH_ACC_Q;

    case 1719:  /* neon_vpadaluv4si */
    case 1718:  /* neon_vpadalsv4si */
    case 1717:  /* neon_vpadaluv2si */
    case 1716:  /* neon_vpadalsv2si */
    case 1715:  /* neon_vpadaluv8hi */
    case 1714:  /* neon_vpadalsv8hi */
    case 1713:  /* neon_vpadaluv4hi */
    case 1712:  /* neon_vpadalsv4hi */
    case 1711:  /* neon_vpadaluv16qi */
    case 1710:  /* neon_vpadalsv16qi */
    case 1709:  /* neon_vpadaluv8qi */
    case 1708:  /* neon_vpadalsv8qi */
    case 1653:  /* neon_vabaluv2si */
    case 1652:  /* neon_vabalsv2si */
    case 1651:  /* neon_vabaluv4hi */
    case 1650:  /* neon_vabalsv4hi */
    case 1649:  /* neon_vabaluv8qi */
    case 1648:  /* neon_vabalsv8qi */
    case 1645:  /* neon_vabauv2si */
    case 1644:  /* neon_vabasv2si */
    case 1641:  /* neon_vabauv4hi */
    case 1640:  /* neon_vabasv4hi */
    case 1637:  /* neon_vabauv8qi */
    case 1636:  /* neon_vabasv8qi */
      return CORTEX_A15_NEON_TYPE_NEON_ARITH_ACC;

    case 1626:  /* neon_vabdv8hf */
    case 1625:  /* neon_vabduv4si */
    case 1624:  /* neon_vabdsv4si */
    case 1621:  /* neon_vabduv8hi */
    case 1620:  /* neon_vabdsv8hi */
    case 1617:  /* neon_vabduv16qi */
    case 1616:  /* neon_vabdsv16qi */
      return CORTEX_A15_NEON_TYPE_NEON_ABD_Q;

    case 1635:  /* neon_vabdluv2si */
    case 1634:  /* neon_vabdlsv2si */
    case 1633:  /* neon_vabdluv4hi */
    case 1632:  /* neon_vabdlsv4hi */
    case 1631:  /* neon_vabdluv8qi */
    case 1630:  /* neon_vabdlsv8qi */
    case 1627:  /* neon_vabdv4hf */
    case 1623:  /* neon_vabduv2si */
    case 1622:  /* neon_vabdsv2si */
    case 1619:  /* neon_vabduv4hi */
    case 1618:  /* neon_vabdsv4hi */
    case 1615:  /* neon_vabduv8qi */
    case 1614:  /* neon_vabdsv8qi */
      return CORTEX_A15_NEON_TYPE_NEON_ABD;

    default:
      return CORTEX_A15_NEON_TYPE_UNKNOWN;

    }
}

enum attr_cortex_a9_neon_type
get_attr_cortex_a9_neon_type (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  enum attr_type cached_type ATTRIBUTE_UNUSED;

  switch (recog_memoized (insn))
    {
    case 2546:  /* neon_vabdv2di_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 2545:  /* neon_vabdv4sf_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 2544:  /* neon_vabdv2sf_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 2543:  /* neon_vabdv8hf_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 2542:  /* neon_vabdv4hf_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 2541:  /* neon_vabdv4si_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 2540:  /* neon_vabdv2si_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 2539:  /* neon_vabdv8hi_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 2538:  /* neon_vabdv4hi_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 2537:  /* neon_vabdv16qi_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 2536:  /* neon_vabdv8qi_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 2535:  /* neon_vabdv2di_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 2534:  /* neon_vabdv4sf_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 2533:  /* neon_vabdv2sf_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 2532:  /* neon_vabdv8hf_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 2531:  /* neon_vabdv4hf_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 2530:  /* neon_vabdv4si_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 2529:  /* neon_vabdv2si_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 2528:  /* neon_vabdv8hi_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 2527:  /* neon_vabdv4hi_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 2526:  /* neon_vabdv16qi_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 2525:  /* neon_vabdv8qi_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 2457:  /* neon_vst4di */
      if ((64) == (64))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST1_3_4_REGS;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST2_4_REGS_VST3_VST4;
        }

    case 2456:  /* neon_vst4v2sf */
    case 2455:  /* neon_vst4v2si */
      if ((32) == (64))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST1_3_4_REGS;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST2_4_REGS_VST3_VST4;
        }

    case 2454:  /* neon_vst4v4hf */
    case 2453:  /* neon_vst4v4hi */
      if ((16) == (64))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST1_3_4_REGS;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST2_4_REGS_VST3_VST4;
        }

    case 2452:  /* neon_vst4v8qi */
      if ((8) == (64))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST1_3_4_REGS;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST2_4_REGS_VST3_VST4;
        }

    case 2401:  /* neon_vst3di */
      if ((64) == (64))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST1_3_4_REGS;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST3_VST4_LANE;
        }

    case 2400:  /* neon_vst3v2sf */
    case 2399:  /* neon_vst3v2si */
      if ((32) == (64))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST1_3_4_REGS;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST3_VST4_LANE;
        }

    case 2398:  /* neon_vst3v4hf */
    case 2397:  /* neon_vst3v4hi */
      if ((16) == (64))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST1_3_4_REGS;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST3_VST4_LANE;
        }

    case 2396:  /* neon_vst3v8qi */
      if ((8) == (64))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST1_3_4_REGS;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST3_VST4_LANE;
        }

    case 2451:  /* neon_vld4_dupdi */
    case 2395:  /* neon_vld3_dupdi */
      if (! ((1) > (1)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD1_1_2_REGS;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD2_4_REGS;
        }

    case 2450:  /* neon_vld4_dupv2sf */
    case 2449:  /* neon_vld4_dupv2si */
    case 2394:  /* neon_vld3_dupv2sf */
    case 2393:  /* neon_vld3_dupv2si */
      if (! ((2) > (1)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD1_1_2_REGS;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD2_4_REGS;
        }

    case 2448:  /* neon_vld4_dupv4hf */
    case 2447:  /* neon_vld4_dupv4hi */
    case 2392:  /* neon_vld3_dupv4hf */
    case 2391:  /* neon_vld3_dupv4hi */
      if (! ((4) > (1)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD1_1_2_REGS;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD2_4_REGS;
        }

    case 2446:  /* neon_vld4_dupv8qi */
    case 2390:  /* neon_vld3_dupv8qi */
      if (! ((8) > (1)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD1_1_2_REGS;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD2_4_REGS;
        }

    case 2426:  /* neon_vld4di */
    case 2370:  /* neon_vld3di */
      if ((64) == (64))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD1_3_4_REGS;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD3_VLD4;
        }

    case 2425:  /* neon_vld4v2sf */
    case 2424:  /* neon_vld4v2si */
    case 2369:  /* neon_vld3v2sf */
    case 2368:  /* neon_vld3v2si */
      if ((32) == (64))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD1_3_4_REGS;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD3_VLD4;
        }

    case 2423:  /* neon_vld4v4hf */
    case 2422:  /* neon_vld4v4hi */
    case 2367:  /* neon_vld3v4hf */
    case 2366:  /* neon_vld3v4hi */
      if ((16) == (64))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD1_3_4_REGS;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD3_VLD4;
        }

    case 2421:  /* neon_vld4v8qi */
    case 2365:  /* neon_vld3v8qi */
      if ((8) == (64))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD1_3_4_REGS;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD3_VLD4;
        }

    case 2350:  /* neon_vst2di */
      if ((64) == (64))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST1_1_2_REGS_VST2_2_REGS;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST1_VST2_LANE;
        }

    case 2349:  /* neon_vst2v2sf */
    case 2348:  /* neon_vst2v2si */
      if ((32) == (64))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST1_1_2_REGS_VST2_2_REGS;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST1_VST2_LANE;
        }

    case 2347:  /* neon_vst2v4hf */
    case 2346:  /* neon_vst2v4hi */
      if ((16) == (64))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST1_1_2_REGS_VST2_2_REGS;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST1_VST2_LANE;
        }

    case 2345:  /* neon_vst2v8qi */
      if ((8) == (64))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST1_1_2_REGS_VST2_2_REGS;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST1_VST2_LANE;
        }

    case 2344:  /* neon_vld2_dupdi */
      if (! ((1) > (1)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD1_1_2_REGS;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD2_2_REGS_VLD1_VLD2_ALL_LANES;
        }

    case 2343:  /* neon_vld2_dupv2sf */
    case 2342:  /* neon_vld2_dupv2si */
      if (! ((2) > (1)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD1_1_2_REGS;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD2_2_REGS_VLD1_VLD2_ALL_LANES;
        }

    case 2341:  /* neon_vld2_dupv4hf */
    case 2340:  /* neon_vld2_dupv4hi */
      if (! ((4) > (1)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD1_1_2_REGS;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD2_2_REGS_VLD1_VLD2_ALL_LANES;
        }

    case 2339:  /* neon_vld2_dupv8qi */
      if (! ((8) > (1)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD1_1_2_REGS;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD2_2_REGS_VLD1_VLD2_ALL_LANES;
        }

    case 1965:  /* neon_vmls_lanev4sf */
    case 1953:  /* neon_vmla_lanev4sf */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MLA_QQQ_32_QQD_32_SCALAR;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VMLA_QQQ_SCALAR;
        }

    case 1964:  /* neon_vmls_lanev4si */
    case 1952:  /* neon_vmla_lanev4si */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MLA_QQQ_32_QQD_32_SCALAR;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VMLA_QQQ_SCALAR;
        }

    case 1963:  /* neon_vmls_lanev8hi */
    case 1951:  /* neon_vmla_lanev8hi */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MLA_DDD_32_QQD_16_DDD_32_SCALAR_QDD_64_32_LONG_SCALAR_QDD_64_32_LONG;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VMLA_QQQ_SCALAR;
        }

    case 1962:  /* neon_vmls_lanev2sf */
    case 1950:  /* neon_vmla_lanev2sf */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MLA_DDD_32_QQD_16_DDD_32_SCALAR_QDD_64_32_LONG_SCALAR_QDD_64_32_LONG;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VMLA_DDD_SCALAR;
        }

    case 1961:  /* neon_vmls_lanev2si */
    case 1949:  /* neon_vmla_lanev2si */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MLA_DDD_32_QQD_16_DDD_32_SCALAR_QDD_64_32_LONG_SCALAR_QDD_64_32_LONG;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VMLA_DDD_SCALAR;
        }

    case 1960:  /* neon_vmls_lanev4hi */
    case 1948:  /* neon_vmla_lanev4hi */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MLA_DDD_16_SCALAR_QDD_32_16_LONG_SCALAR;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VMLA_DDD_SCALAR;
        }

    case 1923:  /* neon_vmul_lanev4sf */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MUL_QQD_32_SCALAR;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VMUL_QQD;
        }

    case 1922:  /* neon_vmul_lanev4si */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MUL_QQD_32_SCALAR;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VMUL_QQD;
        }

    case 1921:  /* neon_vmul_lanev8hi */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MUL_QDD_64_32_LONG_QQD_16_DDD_32_SCALAR_64_32_LONG_SCALAR;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VMUL_QQD;
        }

    case 1920:  /* neon_vmul_lanev2sf */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MUL_QDD_64_32_LONG_QQD_16_DDD_32_SCALAR_64_32_LONG_SCALAR;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VMUL_DDD;
        }

    case 1919:  /* neon_vmul_lanev2si */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MUL_QDD_64_32_LONG_QQD_16_DDD_32_SCALAR_64_32_LONG_SCALAR;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VMUL_DDD;
        }

    case 1918:  /* neon_vmul_lanev4hi */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MUL_DDD_16_SCALAR_32_16_LONG_SCALAR;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VMUL_DDD;
        }

    case 1812:  /* neon_vdup_nv4sf */
    case 1811:  /* neon_vdup_nv4si */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_BP_SIMPLE;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MCR_2_MCRR;
        }

    case 1810:  /* neon_vdup_nv2sf */
    case 1809:  /* neon_vdup_nv2si */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_BP_SIMPLE;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MCR;
        }

    case 1556:  /* neon_vcltv8hf_fp16insn */
    case 1555:  /* neon_vclev8hf_fp16insn */
    case 1554:  /* neon_vcgev8hf_fp16insn */
    case 1553:  /* neon_vcgtv8hf_fp16insn */
    case 1552:  /* neon_vceqv8hf_fp16insn */
    case 1541:  /* neon_vcltv4sf_insn */
    case 1540:  /* neon_vclev4sf_insn */
    case 1539:  /* neon_vcgev4sf_insn */
    case 1538:  /* neon_vcgtv4sf_insn */
    case 1537:  /* neon_vceqv4sf_insn */
    case 1531:  /* neon_vcltv4si_insn */
    case 1530:  /* neon_vclev4si_insn */
    case 1529:  /* neon_vcgev4si_insn */
    case 1528:  /* neon_vcgtv4si_insn */
    case 1527:  /* neon_vceqv4si_insn */
    case 1521:  /* neon_vcltv8hi_insn */
    case 1520:  /* neon_vclev8hi_insn */
    case 1519:  /* neon_vcgev8hi_insn */
    case 1518:  /* neon_vcgtv8hi_insn */
    case 1517:  /* neon_vceqv8hi_insn */
    case 1511:  /* neon_vcltv16qi_insn */
    case 1510:  /* neon_vclev16qi_insn */
    case 1509:  /* neon_vcgev16qi_insn */
    case 1508:  /* neon_vcgtv16qi_insn */
    case 1507:  /* neon_vceqv16qi_insn */
      if ((cached_type = get_attr_type (insn)) == TYPE_NEON_COMPARE_ZERO_Q)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_4;
        }
      else if (cached_type == TYPE_NEON_COMPARE_Q)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_UNKNOWN;
        }

    case 1561:  /* neon_vcltv4hf_fp16insn */
    case 1560:  /* neon_vclev4hf_fp16insn */
    case 1559:  /* neon_vcgev4hf_fp16insn */
    case 1558:  /* neon_vcgtv4hf_fp16insn */
    case 1557:  /* neon_vceqv4hf_fp16insn */
    case 1536:  /* neon_vcltv2sf_insn */
    case 1535:  /* neon_vclev2sf_insn */
    case 1534:  /* neon_vcgev2sf_insn */
    case 1533:  /* neon_vcgtv2sf_insn */
    case 1532:  /* neon_vceqv2sf_insn */
    case 1526:  /* neon_vcltv2si_insn */
    case 1525:  /* neon_vclev2si_insn */
    case 1524:  /* neon_vcgev2si_insn */
    case 1523:  /* neon_vcgtv2si_insn */
    case 1522:  /* neon_vceqv2si_insn */
    case 1516:  /* neon_vcltv4hi_insn */
    case 1515:  /* neon_vclev4hi_insn */
    case 1514:  /* neon_vcgev4hi_insn */
    case 1513:  /* neon_vcgtv4hi_insn */
    case 1512:  /* neon_vceqv4hi_insn */
    case 1506:  /* neon_vcltv8qi_insn */
    case 1505:  /* neon_vclev8qi_insn */
    case 1504:  /* neon_vcgev8qi_insn */
    case 1503:  /* neon_vcgtv8qi_insn */
    case 1502:  /* neon_vceqv8qi_insn */
      if ((cached_type = get_attr_type (insn)) == TYPE_NEON_COMPARE_ZERO)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_4;
        }
      else if (cached_type == TYPE_NEON_COMPARE)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_UNKNOWN;
        }

    case 1306:  /* neon_vpsmaxv2sf */
    case 1302:  /* neon_vpsminv2sf */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VSUM;
        }

    case 1305:  /* neon_vpsmaxv2si */
    case 1304:  /* neon_vpsmaxv4hi */
    case 1303:  /* neon_vpsmaxv8qi */
    case 1301:  /* neon_vpsminv2si */
    case 1300:  /* neon_vpsminv4hi */
    case 1299:  /* neon_vpsminv8qi */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VSUM;
        }

    case 1297:  /* neon_vpadd_internalv2sf */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_3;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VSUM;
        }

    case 1296:  /* neon_vpadd_internalv2si */
    case 1295:  /* neon_vpadd_internalv4hi */
    case 1294:  /* neon_vpadd_internalv8qi */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_3;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VSUM;
        }

    case 1224:  /* neon_load_count */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD1_1_2_REGS;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MCR;
        }

    case 1197:  /* vashlv4si3 */
    case 1195:  /* vashlv8hi3 */
    case 1193:  /* vashlv16qi3 */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_SHIFT_1;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_SHIFT_3;
        }

    case 1191:  /* *smaxv4sf3_neon */
    case 1183:  /* *sminv4sf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 1190:  /* *smaxv2sf3_neon */
    case 1182:  /* *sminv2sf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 1189:  /* *smaxv4si3_neon */
    case 1187:  /* *smaxv8hi3_neon */
    case 1185:  /* *smaxv16qi3_neon */
    case 1181:  /* *sminv4si3_neon */
    case 1179:  /* *sminv8hi3_neon */
    case 1177:  /* *sminv16qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 1188:  /* *smaxv2si3_neon */
    case 1186:  /* *smaxv4hi3_neon */
    case 1184:  /* *smaxv8qi3_neon */
    case 1180:  /* *sminv2si3_neon */
    case 1178:  /* *sminv4hi3_neon */
    case 1176:  /* *sminv8qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 1144:  /* negv4sf2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_3;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 1143:  /* negv2sf2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_3;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 1142:  /* negv4si2 */
    case 1140:  /* negv8hi2 */
    case 1138:  /* negv16qi2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_3;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 1141:  /* negv2si2 */
    case 1139:  /* negv4hi2 */
    case 1137:  /* negv8qi2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_3;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 1136:  /* absv4sf2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_4;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 1135:  /* absv2sf2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_4;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 1134:  /* absv4si2 */
    case 1132:  /* absv8hi2 */
    case 1130:  /* absv16qi2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_4;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 1133:  /* absv2si2 */
    case 1131:  /* absv4hi2 */
    case 1129:  /* absv8qi2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_4;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 1106:  /* bicdi3_neon */
    case 1094:  /* orndi3_neon */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_1;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_UNKNOWN;
        }

    case 1416:  /* neon_vmlsv4sf_unspec */
    case 1402:  /* neon_vmlav4sf_unspec */
    case 1024:  /* mulv4sf3negv4sfaddv4sf_neon */
    case 1014:  /* mulv4sf3addv4sf_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MLA_QQQ_32_QQD_32_SCALAR;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VMLA_QQQ;
        }

    case 1415:  /* neon_vmlsv2sf_unspec */
    case 1401:  /* neon_vmlav2sf_unspec */
    case 1023:  /* mulv2sf3negv2sfaddv2sf_neon */
    case 1013:  /* mulv2sf3addv2sf_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MLA_DDD_32_QQD_16_DDD_32_SCALAR_QDD_64_32_LONG_SCALAR_QDD_64_32_LONG;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VMLA_DDD;
        }

    case 1414:  /* neon_vmlsv4si_unspec */
    case 1400:  /* neon_vmlav4si_unspec */
    case 1022:  /* mulv4si3negv4siaddv4si_neon */
    case 1012:  /* mulv4si3addv4si_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MLA_QQQ_32_QQD_32_SCALAR;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VMLA_QQQ;
        }

    case 1413:  /* neon_vmlsv2si_unspec */
    case 1399:  /* neon_vmlav2si_unspec */
    case 1021:  /* mulv2si3negv2siaddv2si_neon */
    case 1011:  /* mulv2si3addv2si_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MLA_DDD_32_QQD_16_DDD_32_SCALAR_QDD_64_32_LONG_SCALAR_QDD_64_32_LONG;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VMLA_DDD;
        }

    case 1412:  /* neon_vmlsv8hi_unspec */
    case 1410:  /* neon_vmlsv16qi_unspec */
    case 1398:  /* neon_vmlav8hi_unspec */
    case 1396:  /* neon_vmlav16qi_unspec */
    case 1020:  /* mulv8hi3negv8hiaddv8hi_neon */
    case 1018:  /* mulv16qi3negv16qiaddv16qi_neon */
    case 1010:  /* mulv8hi3addv8hi_neon */
    case 1008:  /* mulv16qi3addv16qi_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MLA_QQQ_8_16;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VMLA_QQQ;
        }

    case 1411:  /* neon_vmlsv4hi_unspec */
    case 1409:  /* neon_vmlsv8qi_unspec */
    case 1397:  /* neon_vmlav4hi_unspec */
    case 1395:  /* neon_vmlav8qi_unspec */
    case 1019:  /* mulv4hi3negv4hiaddv4hi_neon */
    case 1017:  /* mulv8qi3negv8qiaddv8qi_neon */
    case 1009:  /* mulv4hi3addv4hi_neon */
    case 1007:  /* mulv8qi3addv8qi_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MLA_DDD_8_16_QDD_16_8_LONG_32_16_LONG;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VMLA_DDD;
        }

    case 1392:  /* neon_vmulfv4sf */
    case 1006:  /* *mulv4sf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MUL_QQD_32_SCALAR;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 1391:  /* neon_vmulfv2sf */
    case 1005:  /* *mulv2sf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MUL_QDD_64_32_LONG_QQD_16_DDD_32_SCALAR_64_32_LONG_SCALAR;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 1004:  /* *mulv4si3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MUL_QQD_32_SCALAR;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 1003:  /* *mulv2si3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MUL_QDD_64_32_LONG_QQD_16_DDD_32_SCALAR_64_32_LONG_SCALAR;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 1390:  /* neon_vmulpv16qi */
    case 1002:  /* *mulv8hi3_neon */
    case 1000:  /* *mulv16qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MUL_QQQ_8_16_32_DDD_32;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 1389:  /* neon_vmulpv8qi */
    case 1001:  /* *mulv4hi3_neon */
    case 999:  /* *mulv8qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MUL_DDD_8_16_QDD_16_8_LONG_32_16_LONG;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 998:  /* subdi3_neon */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0xe))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_2;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_UNKNOWN;
        }

    case 1455:  /* neon_vsubv4sf_unspec */
    case 994:  /* *subv4sf3_neon */
    case 992:  /* *subv8hf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_2;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 1454:  /* neon_vsubv2sf_unspec */
    case 993:  /* *subv2sf3_neon */
    case 991:  /* *subv4hf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_2;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 995:  /* *subv2di3_neon */
    case 990:  /* *subv4si3_neon */
    case 988:  /* *subv8hi3_neon */
    case 986:  /* *subv16qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_2;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 989:  /* *subv2si3_neon */
    case 987:  /* *subv4hi3_neon */
    case 985:  /* *subv8qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_2;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 984:  /* adddi3_neon */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x9))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_1;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_UNKNOWN;
        }

    case 1330:  /* neon_vaddv4sf_unspec */
    case 982:  /* addv8hf3_fp16 */
    case 980:  /* *addv4sf3_neon */
    case 978:  /* *addv8hf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_1;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 1329:  /* neon_vaddv2sf_unspec */
    case 983:  /* addv4hf3_fp16 */
    case 979:  /* *addv2sf3_neon */
    case 977:  /* *addv4hf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_1;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 981:  /* *addv2di3_neon */
    case 976:  /* *addv4si3_neon */
    case 974:  /* *addv8hi3_neon */
    case 972:  /* *addv16qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_1;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 975:  /* *addv2si3_neon */
    case 973:  /* *addv4hi3_neon */
    case 971:  /* *addv8qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_1;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 970:  /* vec_extractv2di */
    case 969:  /* vec_extractv4sf */
    case 968:  /* vec_extractv4si */
    case 967:  /* vec_extractv8hf */
    case 966:  /* vec_extractv8hi */
    case 965:  /* vec_extractv16qi */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST1_VST2_LANE;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MRRC;
        }

    case 964:  /* vec_extractv2sf */
    case 963:  /* vec_extractv2si */
    case 962:  /* vec_extractv4hf */
    case 961:  /* vec_extractv4hi */
    case 960:  /* vec_extractv8qi */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST1_VST2_LANE;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MRC;
        }

    case 959:  /* vec_setv2di_internal */
    case 958:  /* vec_setv4sf_internal */
    case 957:  /* vec_setv4si_internal */
    case 956:  /* vec_setv8hf_internal */
    case 955:  /* vec_setv8hi_internal */
    case 954:  /* vec_setv16qi_internal */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD2_2_REGS_VLD1_VLD2_ALL_LANES;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MCR_2_MCRR;
        }

    case 953:  /* vec_setv2sf_internal */
    case 952:  /* vec_setv2si_internal */
    case 951:  /* vec_setv4hf_internal */
    case 950:  /* vec_setv4hi_internal */
    case 949:  /* vec_setv8qi_internal */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD2_2_REGS_VLD1_VLD2_ALL_LANES;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MCR;
        }

    case 924:  /* *neon_movxi */
    case 923:  /* *neon_movci */
    case 922:  /* *neon_movoi */
    case 921:  /* *neon_movei */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VMOV;
        }
      else if (!((1 << which_alternative) & 0x3))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD1_1_2_REGS;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST1_1_2_REGS_VST2_2_REGS;
        }

    case 920:  /* *neon_movti */
    case 919:  /* *neon_movv2di */
    case 918:  /* *neon_movv4sf */
    case 917:  /* *neon_movv4si */
    case 916:  /* *neon_movv8hf */
    case 915:  /* *neon_movv8hi */
    case 914:  /* *neon_movv16qi */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x5))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VMOV;
        }
      else if (which_alternative == 3)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD1_1_2_REGS;
        }
      else if (which_alternative == 7)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD1_3_4_REGS;
        }
      else if (which_alternative == 1)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST1_1_2_REGS_VST2_2_REGS;
        }
      else if (!((1 << which_alternative) & 0xff))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST1_3_4_REGS;
        }
      else if (which_alternative == 5)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MCR_2_MCRR;
        }
      else if (which_alternative == 4)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MRRC;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_UNKNOWN;
        }

    case 913:  /* *neon_movdi */
    case 912:  /* *neon_movv2sf */
    case 911:  /* *neon_movv2si */
    case 910:  /* *neon_movv4hf */
    case 909:  /* *neon_movv4hi */
    case 908:  /* *neon_movv8qi */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x5))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VMOV;
        }
      else if (((1 << which_alternative) & 0x88))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD1_1_2_REGS;
        }
      else if (!((1 << which_alternative) & 0xfd))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST1_1_2_REGS_VST2_2_REGS;
        }
      else if (which_alternative == 5)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MCR;
        }
      else if (which_alternative == 4)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MRC;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_UNKNOWN;
        }

    case 4014:  /* *p *movdf_vfp */
    case 640:  /* *thumb2_movdf_vfp */
    case 639:  /* *movdf_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 3)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VMOV;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_UNKNOWN;
        }

    case 635:  /* *movhf_vfp_neon */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD1_1_2_REGS;
        }
      else if (which_alternative == 1)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST1_1_2_REGS_VST2_2_REGS;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_UNKNOWN;
        }

    case 4011:  /* *p *movhf_vfp_fp16 */
    case 634:  /* *movhf_vfp_fp16 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 7)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD1_1_2_REGS;
        }
      else if (which_alternative == 8)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST1_1_2_REGS_VST2_2_REGS;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_UNKNOWN;
        }

    case 3670:  /* *p one_cmpldi2 */
    case 156:  /* one_cmpldi2 */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0x6))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VMOV;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_UNKNOWN;
        }

    case 108:  /* *xordi3_insn */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0x1e))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_1;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_UNKNOWN;
        }

    case 102:  /* *iordi3_insn */
    case 79:  /* *anddi3_insn */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0x3c))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_1;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_UNKNOWN;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
      if (((cached_type = get_attr_type (insn)) == TYPE_NEON_LOGIC) || ((cached_type == TYPE_NEON_LOGIC_Q) || ((cached_type == TYPE_NEON_BSL) || ((cached_type == TYPE_NEON_CLS) || ((cached_type == TYPE_NEON_CNT) || ((cached_type == TYPE_NEON_ADD) || (cached_type == TYPE_NEON_ADD_Q)))))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_1;
        }
      else if ((cached_type == TYPE_NEON_ADD_WIDEN) || ((cached_type == TYPE_NEON_SUB_WIDEN) || ((cached_type == TYPE_NEON_SUB) || (cached_type == TYPE_NEON_SUB_Q))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_2;
        }
      else if ((cached_type == TYPE_NEON_NEG) || ((cached_type == TYPE_NEON_NEG_Q) || ((cached_type == TYPE_NEON_REDUC_ADD) || ((cached_type == TYPE_NEON_REDUC_ADD_Q) || ((cached_type == TYPE_NEON_REDUC_ADD_LONG) || ((cached_type == TYPE_NEON_ADD_LONG) || (cached_type == TYPE_NEON_SUB_LONG)))))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_3;
        }
      else if ((cached_type == TYPE_NEON_ABS) || ((cached_type == TYPE_NEON_ABS_Q) || ((cached_type == TYPE_NEON_COMPARE_ZERO) || ((cached_type == TYPE_NEON_COMPARE_ZERO_Q) || ((cached_type == TYPE_NEON_ADD_HALVE_NARROW_Q) || ((cached_type == TYPE_NEON_SUB_HALVE_NARROW_Q) || ((cached_type == TYPE_NEON_ADD_HALVE) || ((cached_type == TYPE_NEON_ADD_HALVE_Q) || ((cached_type == TYPE_NEON_QADD) || ((cached_type == TYPE_NEON_QADD_Q) || ((cached_type == TYPE_NEON_TST) || (cached_type == TYPE_NEON_TST_Q))))))))))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_4;
        }
      else if ((cached_type == TYPE_NEON_ABD_LONG) || ((cached_type == TYPE_NEON_SUB_HALVE) || ((cached_type == TYPE_NEON_SUB_HALVE_Q) || ((cached_type == TYPE_NEON_QSUB) || ((cached_type == TYPE_NEON_QSUB_Q) || ((cached_type == TYPE_NEON_ABD) || ((cached_type == TYPE_NEON_ABD_Q) || ((cached_type == TYPE_NEON_COMPARE) || ((cached_type == TYPE_NEON_COMPARE_Q) || ((cached_type == TYPE_NEON_MINMAX) || ((cached_type == TYPE_NEON_MINMAX_Q) || ((cached_type == TYPE_NEON_REDUC_MINMAX) || (cached_type == TYPE_NEON_REDUC_MINMAX_Q)))))))))))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_INT_5;
        }
      else if ((cached_type == TYPE_NEON_QNEG) || ((cached_type == TYPE_NEON_QNEG_Q) || ((cached_type == TYPE_NEON_QABS) || (cached_type == TYPE_NEON_QABS_Q))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VQNEG_VQABS;
        }
      else if ((cached_type == TYPE_NEON_MOVE) || (cached_type == TYPE_NEON_MOVE_Q))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VMOV;
        }
      else if ((cached_type == TYPE_NEON_BSL_Q) || ((cached_type == TYPE_NEON_CLS_Q) || (cached_type == TYPE_NEON_CNT_Q)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_BIT_OPS_Q;
        }
      else if ((cached_type == TYPE_NEON_ARITH_ACC) || (cached_type == TYPE_NEON_REDUC_ADD_ACC))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VABA;
        }
      else if (cached_type == TYPE_NEON_ARITH_ACC_Q)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VABA_QQQ;
        }
      else if ((cached_type == TYPE_NEON_SHIFT_IMM) || ((cached_type == TYPE_NEON_SHIFT_IMM_Q) || ((cached_type == TYPE_NEON_SHIFT_IMM_LONG) || ((cached_type == TYPE_NEON_SHIFT_IMM_NARROW_Q) || (cached_type == TYPE_NEON_SHIFT_REG)))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_SHIFT_1;
        }
      else if ((cached_type == TYPE_NEON_SAT_SHIFT_IMM) || ((cached_type == TYPE_NEON_SAT_SHIFT_IMM_Q) || ((cached_type == TYPE_NEON_SAT_SHIFT_IMM_NARROW_Q) || (cached_type == TYPE_NEON_SAT_SHIFT_REG))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_SHIFT_2;
        }
      else if (cached_type == TYPE_NEON_SHIFT_REG_Q)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_SHIFT_3;
        }
      else if (cached_type == TYPE_NEON_SAT_SHIFT_REG_Q)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VQSHL_VRSHL_VQRSHL_QQQ;
        }
      else if ((cached_type == TYPE_NEON_SHIFT_ACC) || (cached_type == TYPE_NEON_SHIFT_ACC_Q))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VSRA_VRSRA;
        }
      else if ((cached_type == TYPE_NEON_MUL_B) || ((cached_type == TYPE_NEON_MUL_H) || ((cached_type == TYPE_NEON_MUL_B_LONG) || ((cached_type == TYPE_NEON_MUL_H_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_B) || ((cached_type == TYPE_NEON_SAT_MUL_H) || ((cached_type == TYPE_NEON_SAT_MUL_B_LONG) || (cached_type == TYPE_NEON_SAT_MUL_H_LONG))))))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MUL_DDD_8_16_QDD_16_8_LONG_32_16_LONG;
        }
      else if ((cached_type == TYPE_NEON_MUL_B_Q) || ((cached_type == TYPE_NEON_MUL_H_Q) || ((cached_type == TYPE_NEON_SAT_MUL_B_Q) || (cached_type == TYPE_NEON_SAT_MUL_H_Q))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MUL_QQQ_8_16_32_DDD_32;
        }
      else if ((cached_type == TYPE_NEON_MUL_S) || ((cached_type == TYPE_NEON_MUL_S_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_S) || ((cached_type == TYPE_NEON_SAT_MUL_S_LONG) || ((cached_type == TYPE_NEON_MUL_H_SCALAR_Q) || ((cached_type == TYPE_NEON_SAT_MUL_H_SCALAR_Q) || ((cached_type == TYPE_NEON_MUL_S_SCALAR) || ((cached_type == TYPE_NEON_SAT_MUL_S_SCALAR) || ((cached_type == TYPE_NEON_MUL_S_SCALAR_LONG) || (cached_type == TYPE_NEON_SAT_MUL_S_SCALAR_LONG))))))))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MUL_QDD_64_32_LONG_QQD_16_DDD_32_SCALAR_64_32_LONG_SCALAR;
        }
      else if ((cached_type == TYPE_NEON_MLA_B) || ((cached_type == TYPE_NEON_MLA_H) || ((cached_type == TYPE_NEON_MLA_B_LONG) || ((cached_type == TYPE_NEON_MLA_H_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_B_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_H_LONG) || (cached_type == TYPE_NEON_SAT_MLA_H_SCALAR_LONG)))))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MLA_DDD_8_16_QDD_16_8_LONG_32_16_LONG;
        }
      else if ((cached_type == TYPE_NEON_MLA_B_Q) || (cached_type == TYPE_NEON_MLA_H_Q))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MLA_QQQ_8_16;
        }
      else if ((cached_type == TYPE_NEON_MLA_S) || ((cached_type == TYPE_NEON_MLA_S_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_S_LONG) || ((cached_type == TYPE_NEON_MLA_H_SCALAR_Q) || ((cached_type == TYPE_NEON_MLA_S_SCALAR) || ((cached_type == TYPE_NEON_MLA_S_SCALAR_LONG) || (cached_type == TYPE_NEON_SAT_MLA_S_SCALAR_LONG)))))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MLA_DDD_32_QQD_16_DDD_32_SCALAR_QDD_64_32_LONG_SCALAR_QDD_64_32_LONG;
        }
      else if ((cached_type == TYPE_NEON_MLA_S_Q) || (cached_type == TYPE_NEON_MLA_S_SCALAR_Q))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MLA_QQQ_32_QQD_32_SCALAR;
        }
      else if ((cached_type == TYPE_NEON_MUL_H_SCALAR) || ((cached_type == TYPE_NEON_SAT_MUL_H_SCALAR) || ((cached_type == TYPE_NEON_MUL_H_SCALAR_LONG) || (cached_type == TYPE_NEON_SAT_MUL_H_SCALAR_LONG))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MUL_DDD_16_SCALAR_32_16_LONG_SCALAR;
        }
      else if ((cached_type == TYPE_NEON_MUL_S_Q) || ((cached_type == TYPE_NEON_SAT_MUL_S_Q) || (cached_type == TYPE_NEON_MUL_S_SCALAR_Q)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MUL_QQD_32_SCALAR;
        }
      else if ((cached_type == TYPE_NEON_MLA_H_SCALAR) || (cached_type == TYPE_NEON_MLA_H_SCALAR_LONG))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MLA_DDD_16_SCALAR_QDD_32_16_LONG_SCALAR;
        }
      else if ((cached_type == TYPE_NEON_FP_ABD_S) || ((cached_type == TYPE_NEON_FP_ABS_S) || ((cached_type == TYPE_NEON_FP_NEG_S) || ((cached_type == TYPE_NEON_FP_ADDSUB_S) || ((cached_type == TYPE_NEON_FP_COMPARE_S) || ((cached_type == TYPE_NEON_FP_MINMAX_S) || ((cached_type == TYPE_NEON_FP_MUL_S) || ((cached_type == TYPE_NEON_FP_RECPE_S) || ((cached_type == TYPE_NEON_FP_RSQRTE_S) || ((cached_type == TYPE_NEON_FP_TO_INT_S) || (cached_type == TYPE_NEON_INT_TO_FP_S)))))))))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }
      else if ((cached_type == TYPE_NEON_FP_ABD_S_Q) || ((cached_type == TYPE_NEON_FP_ABS_S_Q) || ((cached_type == TYPE_NEON_FP_NEG_S_Q) || ((cached_type == TYPE_NEON_FP_ADDSUB_S_Q) || ((cached_type == TYPE_NEON_FP_COMPARE_S_Q) || ((cached_type == TYPE_NEON_FP_MINMAX_S_Q) || ((cached_type == TYPE_NEON_FP_MUL_S_Q) || ((cached_type == TYPE_NEON_FP_RECPE_S_Q) || ((cached_type == TYPE_NEON_FP_RSQRTE_S_Q) || ((cached_type == TYPE_NEON_FP_TO_INT_S_Q) || (cached_type == TYPE_NEON_INT_TO_FP_S_Q)))))))))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }
      else if ((cached_type == TYPE_NEON_FP_REDUC_ADD_S) || ((cached_type == TYPE_NEON_FP_REDUC_MINMAX_S) || ((cached_type == TYPE_NEON_FP_REDUC_ADD_S_Q) || (cached_type == TYPE_NEON_FP_REDUC_MINMAX_S_Q))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VSUM;
        }
      else if (cached_type == TYPE_NEON_FP_MUL_S_SCALAR)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VMUL_DDD;
        }
      else if (cached_type == TYPE_NEON_FP_MUL_S_SCALAR_Q)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VMUL_QQD;
        }
      else if (cached_type == TYPE_NEON_FP_MLA_S)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VMLA_DDD;
        }
      else if (cached_type == TYPE_NEON_FP_MLA_S_Q)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VMLA_QQQ;
        }
      else if (cached_type == TYPE_NEON_FP_MLA_S_SCALAR)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VMLA_DDD_SCALAR;
        }
      else if (cached_type == TYPE_NEON_FP_MLA_S_SCALAR_Q)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VMLA_QQQ_SCALAR;
        }
      else if ((cached_type == TYPE_NEON_FP_RECPS_S) || (cached_type == TYPE_NEON_FP_RSQRTS_S))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VRECPS_VRSQRTS_DDD;
        }
      else if ((cached_type == TYPE_NEON_FP_RECPS_S_Q) || (cached_type == TYPE_NEON_FP_RSQRTS_S_Q))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_FP_VRECPS_VRSQRTS_QQQ;
        }
      else if ((cached_type == TYPE_NEON_MOVE_NARROW_Q) || ((cached_type == TYPE_NEON_DUP) || ((cached_type == TYPE_NEON_DUP_Q) || ((cached_type == TYPE_NEON_PERMUTE) || ((cached_type == TYPE_NEON_ZIP) || ((cached_type == TYPE_NEON_EXT) || ((cached_type == TYPE_NEON_REV) || (cached_type == TYPE_NEON_REV_Q))))))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_BP_SIMPLE;
        }
      else if ((cached_type == TYPE_NEON_PERMUTE_Q) || ((cached_type == TYPE_NEON_EXT_Q) || ((cached_type == TYPE_NEON_TBL1) || (cached_type == TYPE_NEON_TBL2))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_BP_2CYCLE;
        }
      else if ((cached_type == TYPE_NEON_ZIP_Q) || ((cached_type == TYPE_NEON_TBL3) || (cached_type == TYPE_NEON_TBL4)))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_BP_3CYCLE;
        }
      else if (cached_type == TYPE_NEON_LDR)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_LDR;
        }
      else if (cached_type == TYPE_NEON_STR)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_STR;
        }
      else if ((cached_type == TYPE_NEON_LOAD1_1REG) || ((cached_type == TYPE_NEON_LOAD1_1REG_Q) || ((cached_type == TYPE_NEON_LOAD1_2REG) || ((cached_type == TYPE_NEON_LOAD1_2REG_Q) || ((cached_type == TYPE_NEON_LOAD2_2REG) || (cached_type == TYPE_NEON_LOAD2_2REG_Q))))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD1_1_2_REGS;
        }
      else if ((cached_type == TYPE_NEON_LOAD1_3REG) || ((cached_type == TYPE_NEON_LOAD1_3REG_Q) || ((cached_type == TYPE_NEON_LOAD1_4REG) || (cached_type == TYPE_NEON_LOAD1_4REG_Q))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD1_3_4_REGS;
        }
      else if ((cached_type == TYPE_NEON_LOAD1_ALL_LANES) || ((cached_type == TYPE_NEON_LOAD1_ALL_LANES_Q) || ((cached_type == TYPE_NEON_LOAD2_ALL_LANES) || (cached_type == TYPE_NEON_LOAD2_ALL_LANES_Q))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD2_2_REGS_VLD1_VLD2_ALL_LANES;
        }
      else if ((cached_type == TYPE_NEON_LOAD3_ALL_LANES) || ((cached_type == TYPE_NEON_LOAD3_ALL_LANES_Q) || ((cached_type == TYPE_NEON_LOAD4_ALL_LANES) || ((cached_type == TYPE_NEON_LOAD4_ALL_LANES_Q) || ((cached_type == TYPE_NEON_LOAD2_4REG) || (cached_type == TYPE_NEON_LOAD2_4REG_Q))))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD2_4_REGS;
        }
      else if ((cached_type == TYPE_NEON_LOAD3_3REG) || ((cached_type == TYPE_NEON_LOAD3_3REG_Q) || ((cached_type == TYPE_NEON_LOAD4_4REG) || (cached_type == TYPE_NEON_LOAD4_4REG_Q))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD3_VLD4;
        }
      else if ((cached_type == TYPE_NEON_LOAD1_ONE_LANE) || ((cached_type == TYPE_NEON_LOAD1_ONE_LANE_Q) || ((cached_type == TYPE_NEON_LOAD2_ONE_LANE) || (cached_type == TYPE_NEON_LOAD2_ONE_LANE_Q))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD1_VLD2_LANE;
        }
      else if ((cached_type == TYPE_NEON_LOAD3_ONE_LANE) || ((cached_type == TYPE_NEON_LOAD3_ONE_LANE_Q) || ((cached_type == TYPE_NEON_LOAD4_ONE_LANE) || (cached_type == TYPE_NEON_LOAD4_ONE_LANE_Q))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VLD3_VLD4_LANE;
        }
      else if ((cached_type == TYPE_NEON_STORE1_1REG) || ((cached_type == TYPE_NEON_STORE1_1REG_Q) || ((cached_type == TYPE_NEON_STORE1_2REG) || ((cached_type == TYPE_NEON_STORE1_2REG_Q) || ((cached_type == TYPE_NEON_STORE2_2REG) || (cached_type == TYPE_NEON_STORE2_2REG_Q))))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST1_1_2_REGS_VST2_2_REGS;
        }
      else if ((cached_type == TYPE_NEON_STORE1_3REG) || ((cached_type == TYPE_NEON_STORE1_3REG_Q) || ((cached_type == TYPE_NEON_STORE1_4REG) || (cached_type == TYPE_NEON_STORE1_4REG_Q))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST1_3_4_REGS;
        }
      else if ((cached_type == TYPE_NEON_STORE2_4REG) || ((cached_type == TYPE_NEON_STORE2_4REG_Q) || ((cached_type == TYPE_NEON_STORE3_3REG) || ((cached_type == TYPE_NEON_STORE3_3REG_Q) || ((cached_type == TYPE_NEON_STORE4_4REG) || (cached_type == TYPE_NEON_STORE4_4REG_Q))))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST2_4_REGS_VST3_VST4;
        }
      else if ((cached_type == TYPE_NEON_STORE1_ONE_LANE) || ((cached_type == TYPE_NEON_STORE1_ONE_LANE_Q) || ((cached_type == TYPE_NEON_STORE2_ONE_LANE) || (cached_type == TYPE_NEON_STORE2_ONE_LANE_Q))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST1_VST2_LANE;
        }
      else if ((cached_type == TYPE_NEON_STORE3_ONE_LANE) || ((cached_type == TYPE_NEON_STORE3_ONE_LANE_Q) || ((cached_type == TYPE_NEON_STORE4_ONE_LANE) || (cached_type == TYPE_NEON_STORE4_ONE_LANE_Q))))
        {
	  return CORTEX_A9_NEON_TYPE_NEON_VST3_VST4_LANE;
        }
      else if (cached_type == TYPE_NEON_FROM_GP)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MCR;
        }
      else if (cached_type == TYPE_NEON_FROM_GP_Q)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MCR_2_MCRR;
        }
      else if (cached_type == TYPE_NEON_TO_GP)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MRC;
        }
      else if (cached_type == TYPE_NEON_TO_GP_Q)
        {
	  return CORTEX_A9_NEON_TYPE_NEON_MRRC;
        }
      else
        {
	  return CORTEX_A9_NEON_TYPE_UNKNOWN;
        }

    case 1802:  /* neon_vget_lanev4sf_zext_internal */
    case 1801:  /* neon_vget_lanev4si_zext_internal */
    case 1800:  /* neon_vget_lanev8hf_zext_internal */
    case 1799:  /* neon_vget_lanev8hi_zext_internal */
    case 1798:  /* neon_vget_lanev16qi_zext_internal */
    case 1797:  /* neon_vget_lanev4sf_sext_internal */
    case 1796:  /* neon_vget_lanev4si_sext_internal */
    case 1795:  /* neon_vget_lanev8hf_sext_internal */
    case 1794:  /* neon_vget_lanev8hi_sext_internal */
    case 1793:  /* neon_vget_lanev16qi_sext_internal */
      return CORTEX_A9_NEON_TYPE_NEON_MRRC;

    case 1792:  /* neon_vget_lanev2sf_zext_internal */
    case 1791:  /* neon_vget_lanev2si_zext_internal */
    case 1790:  /* neon_vget_lanev4hi_zext_internal */
    case 1789:  /* neon_vget_lanev8qi_zext_internal */
    case 1788:  /* neon_vget_lanev2sf_sext_internal */
    case 1787:  /* neon_vget_lanev2si_sext_internal */
    case 1786:  /* neon_vget_lanev4hi_sext_internal */
    case 1785:  /* neon_vget_lanev8qi_sext_internal */
      return CORTEX_A9_NEON_TYPE_NEON_MRC;

    case 1808:  /* neon_vdup_nv8hf */
    case 1806:  /* neon_vdup_nv8hi */
    case 1805:  /* neon_vdup_nv16qi */
      return CORTEX_A9_NEON_TYPE_NEON_MCR_2_MCRR;

    case 1807:  /* neon_vdup_nv4hf */
    case 1804:  /* neon_vdup_nv4hi */
    case 1803:  /* neon_vdup_nv8qi */
      return CORTEX_A9_NEON_TYPE_NEON_MCR;

    case 2472:  /* neon_vst4_lanev2sf */
    case 2471:  /* neon_vst4_lanev2si */
    case 2470:  /* neon_vst4_lanev4hf */
    case 2469:  /* neon_vst4_lanev4hi */
    case 2468:  /* neon_vst4_lanev8qi */
    case 2420:  /* neon_vst3_lanev4sf */
    case 2419:  /* neon_vst3_lanev4si */
    case 2418:  /* neon_vst3_lanev8hf */
    case 2417:  /* neon_vst3_lanev8hi */
    case 2416:  /* neon_vst3_lanev2sf */
    case 2415:  /* neon_vst3_lanev2si */
    case 2414:  /* neon_vst3_lanev4hf */
    case 2413:  /* neon_vst3_lanev4hi */
    case 2412:  /* neon_vst3_lanev8qi */
      return CORTEX_A9_NEON_TYPE_NEON_VST3_VST4_LANE;

    case 2364:  /* neon_vst2_lanev4sf */
    case 2363:  /* neon_vst2_lanev4si */
    case 2362:  /* neon_vst2_lanev8hf */
    case 2361:  /* neon_vst2_lanev8hi */
    case 2360:  /* neon_vst2_lanev2sf */
    case 2359:  /* neon_vst2_lanev2si */
    case 2358:  /* neon_vst2_lanev4hf */
    case 2357:  /* neon_vst2_lanev4hi */
    case 2356:  /* neon_vst2_lanev8qi */
    case 2318:  /* neon_vst1_lanev2di */
    case 2317:  /* neon_vst1_lanev4sf */
    case 2316:  /* neon_vst1_lanev4si */
    case 2315:  /* neon_vst1_lanev8hf */
    case 2314:  /* neon_vst1_lanev8hi */
    case 2313:  /* neon_vst1_lanev16qi */
    case 2312:  /* neon_vst1_lanedi */
    case 2311:  /* neon_vst1_lanev2sf */
    case 2310:  /* neon_vst1_lanev2si */
    case 2309:  /* neon_vst1_lanev4hf */
    case 2308:  /* neon_vst1_lanev4hi */
    case 2307:  /* neon_vst1_lanev8qi */
      return CORTEX_A9_NEON_TYPE_NEON_VST1_VST2_LANE;

    case 2445:  /* neon_vld4_lanev4sf */
    case 2444:  /* neon_vld4_lanev4si */
    case 2443:  /* neon_vld4_lanev8hf */
    case 2442:  /* neon_vld4_lanev8hi */
    case 2441:  /* neon_vld4_lanev2sf */
    case 2440:  /* neon_vld4_lanev2si */
    case 2439:  /* neon_vld4_lanev4hf */
    case 2438:  /* neon_vld4_lanev4hi */
    case 2437:  /* neon_vld4_lanev8qi */
    case 2389:  /* neon_vld3_lanev4sf */
    case 2388:  /* neon_vld3_lanev4si */
    case 2387:  /* neon_vld3_lanev8hf */
    case 2386:  /* neon_vld3_lanev8hi */
    case 2385:  /* neon_vld3_lanev2sf */
    case 2384:  /* neon_vld3_lanev2si */
    case 2383:  /* neon_vld3_lanev4hf */
    case 2382:  /* neon_vld3_lanev4hi */
    case 2381:  /* neon_vld3_lanev8qi */
      return CORTEX_A9_NEON_TYPE_NEON_VLD3_VLD4_LANE;

    case 2338:  /* neon_vld2_lanev4sf */
    case 2337:  /* neon_vld2_lanev4si */
    case 2336:  /* neon_vld2_lanev8hf */
    case 2335:  /* neon_vld2_lanev8hi */
    case 2334:  /* neon_vld2_lanev2sf */
    case 2333:  /* neon_vld2_lanev2si */
    case 2332:  /* neon_vld2_lanev4hf */
    case 2331:  /* neon_vld2_lanev4hi */
    case 2330:  /* neon_vld2_lanev8qi */
    case 2283:  /* neon_vld1_lanev2di */
    case 2282:  /* neon_vld1_lanev4sf */
    case 2281:  /* neon_vld1_lanev4si */
    case 2280:  /* neon_vld1_lanev8hf */
    case 2279:  /* neon_vld1_lanev8hi */
    case 2278:  /* neon_vld1_lanev16qi */
    case 2277:  /* neon_vld1_lanedi */
    case 2276:  /* neon_vld1_lanev2sf */
    case 2275:  /* neon_vld1_lanev2si */
    case 2274:  /* neon_vld1_lanev4hf */
    case 2273:  /* neon_vld1_lanev4hi */
    case 2272:  /* neon_vld1_lanev8qi */
      return CORTEX_A9_NEON_TYPE_NEON_VLD1_VLD2_LANE;

    case 2476:  /* neon_vst4_lanev4sf */
    case 2475:  /* neon_vst4_lanev4si */
    case 2474:  /* neon_vst4_lanev8hf */
    case 2473:  /* neon_vst4_lanev8hi */
    case 2467:  /* neon_vst4qbv4sf */
    case 2466:  /* neon_vst4qbv4si */
    case 2465:  /* neon_vst4qbv8hf */
    case 2464:  /* neon_vst4qbv8hi */
    case 2463:  /* neon_vst4qbv16qi */
    case 2462:  /* neon_vst4qav4sf */
    case 2461:  /* neon_vst4qav4si */
    case 2460:  /* neon_vst4qav8hf */
    case 2459:  /* neon_vst4qav8hi */
    case 2458:  /* neon_vst4qav16qi */
    case 2411:  /* neon_vst3qbv4sf */
    case 2410:  /* neon_vst3qbv4si */
    case 2409:  /* neon_vst3qbv8hf */
    case 2408:  /* neon_vst3qbv8hi */
    case 2407:  /* neon_vst3qbv16qi */
    case 2406:  /* neon_vst3qav4sf */
    case 2405:  /* neon_vst3qav4si */
    case 2404:  /* neon_vst3qav8hf */
    case 2403:  /* neon_vst3qav8hi */
    case 2402:  /* neon_vst3qav16qi */
    case 2355:  /* neon_vst2v4sf */
    case 2354:  /* neon_vst2v4si */
    case 2353:  /* neon_vst2v8hf */
    case 2352:  /* neon_vst2v8hi */
    case 2351:  /* neon_vst2v16qi */
      return CORTEX_A9_NEON_TYPE_NEON_VST2_4_REGS_VST3_VST4;

    case 2306:  /* neon_vst1v2di */
    case 2305:  /* neon_vst1di */
    case 2304:  /* neon_vst1v4sf */
    case 2303:  /* neon_vst1v2sf */
    case 2302:  /* neon_vst1v8hf */
    case 2301:  /* neon_vst1v4hf */
    case 2300:  /* neon_vst1v4si */
    case 2299:  /* neon_vst1v2si */
    case 2298:  /* neon_vst1v8hi */
    case 2297:  /* neon_vst1v4hi */
    case 2296:  /* neon_vst1v16qi */
    case 2295:  /* neon_vst1v8qi */
    case 942:  /* *movmisalignv2di_neon_store */
    case 941:  /* *movmisalignv4sf_neon_store */
    case 940:  /* *movmisalignv4si_neon_store */
    case 939:  /* *movmisalignv8hf_neon_store */
    case 938:  /* *movmisalignv8hi_neon_store */
    case 937:  /* *movmisalignv16qi_neon_store */
    case 930:  /* *movmisaligndi_neon_store */
    case 929:  /* *movmisalignv2sf_neon_store */
    case 928:  /* *movmisalignv2si_neon_store */
    case 927:  /* *movmisalignv4hf_neon_store */
    case 926:  /* *movmisalignv4hi_neon_store */
    case 925:  /* *movmisalignv8qi_neon_store */
      return CORTEX_A9_NEON_TYPE_NEON_VST1_1_2_REGS_VST2_2_REGS;

    case 2436:  /* neon_vld4qbv4sf */
    case 2435:  /* neon_vld4qbv4si */
    case 2434:  /* neon_vld4qbv8hf */
    case 2433:  /* neon_vld4qbv8hi */
    case 2432:  /* neon_vld4qbv16qi */
    case 2431:  /* neon_vld4qav4sf */
    case 2430:  /* neon_vld4qav4si */
    case 2429:  /* neon_vld4qav8hf */
    case 2428:  /* neon_vld4qav8hi */
    case 2427:  /* neon_vld4qav16qi */
    case 2380:  /* neon_vld3qbv4sf */
    case 2379:  /* neon_vld3qbv4si */
    case 2378:  /* neon_vld3qbv8hf */
    case 2377:  /* neon_vld3qbv8hi */
    case 2376:  /* neon_vld3qbv16qi */
    case 2375:  /* neon_vld3qav4sf */
    case 2374:  /* neon_vld3qav4si */
    case 2373:  /* neon_vld3qav8hf */
    case 2372:  /* neon_vld3qav8hi */
    case 2371:  /* neon_vld3qav16qi */
      return CORTEX_A9_NEON_TYPE_NEON_VLD3_VLD4;

    case 2294:  /* neon_vld1_dupv2di */
    case 2293:  /* neon_vld1_dupv4sf */
    case 2292:  /* neon_vld1_dupv4si */
    case 2291:  /* neon_vld1_dupv8hf */
    case 2290:  /* neon_vld1_dupv8hi */
    case 2289:  /* neon_vld1_dupv16qi */
    case 2288:  /* neon_vld1_dupv2sf */
    case 2287:  /* neon_vld1_dupv2si */
    case 2286:  /* neon_vld1_dupv4hf */
    case 2285:  /* neon_vld1_dupv4hi */
    case 2284:  /* neon_vld1_dupv8qi */
      return CORTEX_A9_NEON_TYPE_NEON_VLD2_2_REGS_VLD1_VLD2_ALL_LANES;

    case 2329:  /* neon_vld2v4sf */
    case 2328:  /* neon_vld2v4si */
    case 2327:  /* neon_vld2v8hf */
    case 2326:  /* neon_vld2v8hi */
    case 2325:  /* neon_vld2v16qi */
    case 2324:  /* neon_vld2di */
    case 2323:  /* neon_vld2v2sf */
    case 2322:  /* neon_vld2v2si */
    case 2321:  /* neon_vld2v4hf */
    case 2320:  /* neon_vld2v4hi */
    case 2319:  /* neon_vld2v8qi */
    case 2271:  /* neon_vld1v2di */
    case 2270:  /* neon_vld1di */
    case 2269:  /* neon_vld1v4sf */
    case 2268:  /* neon_vld1v2sf */
    case 2267:  /* neon_vld1v8hf */
    case 2266:  /* neon_vld1v4hf */
    case 2265:  /* neon_vld1v4si */
    case 2264:  /* neon_vld1v2si */
    case 2263:  /* neon_vld1v8hi */
    case 2262:  /* neon_vld1v4hi */
    case 2261:  /* neon_vld1v16qi */
    case 2260:  /* neon_vld1v8qi */
    case 948:  /* *movmisalignv2di_neon_load */
    case 947:  /* *movmisalignv4sf_neon_load */
    case 946:  /* *movmisalignv4si_neon_load */
    case 945:  /* *movmisalignv8hf_neon_load */
    case 944:  /* *movmisalignv8hi_neon_load */
    case 943:  /* *movmisalignv16qi_neon_load */
    case 936:  /* *movmisaligndi_neon_load */
    case 935:  /* *movmisalignv2sf_neon_load */
    case 934:  /* *movmisalignv2si_neon_load */
    case 933:  /* *movmisalignv4hf_neon_load */
    case 932:  /* *movmisalignv4hi_neon_load */
    case 931:  /* *movmisalignv8qi_neon_load */
      return CORTEX_A9_NEON_TYPE_NEON_VLD1_1_2_REGS;

    case 2258:  /* *neon_vuzpv8hf_insn */
    case 2257:  /* *neon_vuzpv4sf_insn */
    case 2255:  /* *neon_vuzpv4si_insn */
    case 2253:  /* *neon_vuzpv8hi_insn */
    case 2251:  /* *neon_vuzpv16qi_insn */
    case 2248:  /* *neon_vzipv8hf_insn */
    case 2247:  /* *neon_vzipv4sf_insn */
    case 2245:  /* *neon_vzipv4si_insn */
    case 2243:  /* *neon_vzipv8hi_insn */
    case 2241:  /* *neon_vzipv16qi_insn */
    case 2229:  /* neon_vtbx4v8qi */
    case 2228:  /* neon_vtbx3v8qi */
    case 2222:  /* neon_vtbl4v8qi */
    case 2221:  /* neon_vtbl3v8qi */
      return CORTEX_A9_NEON_TYPE_NEON_BP_3CYCLE;

    case 2238:  /* *neon_vtrnv8hf_insn */
    case 2237:  /* *neon_vtrnv4sf_insn */
    case 2235:  /* *neon_vtrnv4si_insn */
    case 2233:  /* *neon_vtrnv8hi_insn */
    case 2231:  /* *neon_vtrnv16qi_insn */
    case 2227:  /* neon_vtbx2v8qi */
    case 2226:  /* neon_vtbx1v8qi */
    case 2220:  /* neon_vtbl2v8qi */
    case 2219:  /* neon_vtbl1v8qi */
    case 1983:  /* neon_vextv2di */
    case 1981:  /* neon_vextv4sf */
    case 1979:  /* neon_vextv8hf */
    case 1977:  /* neon_vextv4si */
    case 1975:  /* neon_vextv8hi */
    case 1973:  /* neon_vextv16qi */
    case 1835:  /* *neon_vswpv2di */
    case 1833:  /* *neon_vswpv4sf */
    case 1831:  /* *neon_vswpv8hf */
    case 1829:  /* *neon_vswpv4si */
    case 1827:  /* *neon_vswpv8hi */
    case 1825:  /* *neon_vswpv16qi */
      return CORTEX_A9_NEON_TYPE_NEON_BP_2CYCLE;

    case 2524:  /* neon_vec_pack_trunc_v2di */
    case 2523:  /* neon_vec_pack_trunc_v4si */
    case 2522:  /* neon_vec_pack_trunc_v8hi */
    case 2259:  /* *neon_vuzpv4hf_insn */
    case 2256:  /* *neon_vuzpv2sf_insn */
    case 2254:  /* *neon_vuzpv2si_insn */
    case 2252:  /* *neon_vuzpv4hi_insn */
    case 2250:  /* *neon_vuzpv8qi_insn */
    case 2249:  /* *neon_vzipv4hf_insn */
    case 2246:  /* *neon_vzipv2sf_insn */
    case 2244:  /* *neon_vzipv2si_insn */
    case 2242:  /* *neon_vzipv4hi_insn */
    case 2240:  /* *neon_vzipv8qi_insn */
    case 2239:  /* *neon_vtrnv4hf_insn */
    case 2236:  /* *neon_vtrnv2sf_insn */
    case 2234:  /* *neon_vtrnv2si_insn */
    case 2232:  /* *neon_vtrnv4hi_insn */
    case 2230:  /* *neon_vtrnv8qi_insn */
    case 2000:  /* neon_vrev16v16qi */
    case 1999:  /* neon_vrev16v8qi */
    case 1998:  /* neon_vrev32v8hi */
    case 1997:  /* neon_vrev32v16qi */
    case 1996:  /* neon_vrev32v4hi */
    case 1995:  /* neon_vrev32v8qi */
    case 1994:  /* neon_vrev64v2di */
    case 1993:  /* neon_vrev64v4sf */
    case 1992:  /* neon_vrev64v2sf */
    case 1991:  /* neon_vrev64v8hf */
    case 1990:  /* neon_vrev64v4hf */
    case 1989:  /* neon_vrev64v4si */
    case 1988:  /* neon_vrev64v2si */
    case 1987:  /* neon_vrev64v8hi */
    case 1986:  /* neon_vrev64v4hi */
    case 1985:  /* neon_vrev64v16qi */
    case 1984:  /* neon_vrev64v8qi */
    case 1982:  /* neon_vextdi */
    case 1980:  /* neon_vextv2sf */
    case 1978:  /* neon_vextv4hf */
    case 1976:  /* neon_vextv2si */
    case 1974:  /* neon_vextv4hi */
    case 1972:  /* neon_vextv8qi */
    case 1834:  /* *neon_vswpdi */
    case 1832:  /* *neon_vswpv2sf */
    case 1830:  /* *neon_vswpv4hf */
    case 1828:  /* *neon_vswpv2si */
    case 1826:  /* *neon_vswpv4hi */
    case 1824:  /* *neon_vswpv8qi */
    case 1823:  /* neon_vdup_lanev4hf_internal */
    case 1822:  /* neon_vdup_lanev8hf_internal */
    case 1821:  /* neon_vdup_lanev4sf_internal */
    case 1820:  /* neon_vdup_lanev2sf_internal */
    case 1819:  /* neon_vdup_lanev4si_internal */
    case 1818:  /* neon_vdup_lanev2si_internal */
    case 1817:  /* neon_vdup_lanev8hi_internal */
    case 1816:  /* neon_vdup_lanev4hi_internal */
    case 1815:  /* neon_vdup_lanev16qi_internal */
    case 1814:  /* neon_vdup_lanev8qi_internal */
    case 1754:  /* neon_bswapv2di */
    case 1753:  /* neon_bswapv4si */
    case 1752:  /* neon_bswapv2si */
    case 1751:  /* neon_bswapv8hi */
    case 1750:  /* neon_bswapv4hi */
      return CORTEX_A9_NEON_TYPE_NEON_BP_SIMPLE;

    case 1742:  /* neon_vrsqrtsv8hf */
    case 1741:  /* neon_vrsqrtsv4sf */
    case 1738:  /* neon_vrecpsv8hf */
    case 1737:  /* neon_vrecpsv4sf */
      return CORTEX_A9_NEON_TYPE_NEON_FP_VRECPS_VRSQRTS_QQQ;

    case 1743:  /* neon_vrsqrtsv4hf */
    case 1740:  /* neon_vrsqrtsv2sf */
    case 1739:  /* neon_vrecpsv4hf */
    case 1736:  /* neon_vrecpsv2sf */
      return CORTEX_A9_NEON_TYPE_NEON_FP_VRECPS_VRSQRTS_DDD;

    case 1035:  /* fmsubv8hf4_intrinsic */
    case 1034:  /* fmsubv4sf4_intrinsic */
    case 1032:  /* *fmsubv4sf4 */
    case 1029:  /* fmav8hf4_intrinsic */
    case 1028:  /* fmav4sf4_intrinsic */
    case 1026:  /* fmav4sf4 */
    case 1015:  /* mulv8hf3addv8hf_neon */
      return CORTEX_A9_NEON_TYPE_NEON_FP_VMLA_QQQ;

    case 1036:  /* fmsubv4hf4_intrinsic */
    case 1033:  /* fmsubv2sf4_intrinsic */
    case 1031:  /* *fmsubv2sf4 */
    case 1030:  /* fmav4hf4_intrinsic */
    case 1027:  /* fmav2sf4_intrinsic */
    case 1025:  /* fmav2sf4 */
    case 1016:  /* mulv4hf3addv4hf_neon */
      return CORTEX_A9_NEON_TYPE_NEON_FP_VMLA_DDD;

    case 1924:  /* neon_vmul_lanev8hf */
      return CORTEX_A9_NEON_TYPE_NEON_FP_VMUL_QQD;

    case 1925:  /* neon_vmul_lanev4hf */
      return CORTEX_A9_NEON_TYPE_NEON_FP_VMUL_DDD;

    case 1735:  /* neon_vpminfv4sf */
    case 1734:  /* neon_vpmaxfv4sf */
    case 1733:  /* neon_vpminfv2sf */
    case 1732:  /* neon_vpmaxfv2sf */
    case 1282:  /* quad_halves_smaxv4sf */
    case 1281:  /* quad_halves_sminv4sf */
    case 1280:  /* quad_halves_plusv4sf */
      return CORTEX_A9_NEON_TYPE_NEON_FP_VSUM;

    case 1891:  /* neon_vcvtpuv8hf */
    case 1890:  /* neon_vcvtpsv8hf */
    case 1889:  /* neon_vcvtnuv8hf */
    case 1888:  /* neon_vcvtnsv8hf */
    case 1887:  /* neon_vcvtmuv8hf */
    case 1886:  /* neon_vcvtmsv8hf */
    case 1885:  /* neon_vcvtauv8hf */
    case 1884:  /* neon_vcvtasv8hf */
    case 1883:  /* neon_vcvtu_nv8hi */
    case 1882:  /* neon_vcvts_nv8hi */
    case 1879:  /* neon_vcvtu_nv4si */
    case 1878:  /* neon_vcvts_nv4si */
    case 1873:  /* neon_vcvtu_nv8hf */
    case 1872:  /* neon_vcvts_nv8hf */
    case 1871:  /* neon_vcvtu_nv4sf */
    case 1870:  /* neon_vcvts_nv4sf */
    case 1865:  /* neon_vcvtuv8hf */
    case 1864:  /* neon_vcvtsv8hf */
    case 1863:  /* neon_vcvtuv8hi */
    case 1862:  /* neon_vcvtsv8hi */
    case 1857:  /* neon_vcvtuv4si */
    case 1856:  /* neon_vcvtsv4si */
    case 1853:  /* neon_vcvtuv4sf */
    case 1852:  /* neon_vcvtsv4sf */
    case 1849:  /* fixuns_truncv4sfv4si2 */
    case 1847:  /* fix_truncv4sfv4si2 */
    case 1845:  /* floatunsv4siv4sf2 */
    case 1843:  /* floatv4siv4sf2 */
    case 1784:  /* neon_vrsqrtev4sf */
    case 1783:  /* neon_vrsqrtev4si */
    case 1780:  /* neon_vrecpev4sf */
    case 1779:  /* neon_vrecpev4si */
    case 1775:  /* neon_vrecpev8hf */
    case 1695:  /* fminv4sf3 */
    case 1694:  /* fmaxv4sf3 */
    case 1689:  /* neon_vminnmv8hf */
    case 1688:  /* neon_vmaxnmv8hf */
    case 1683:  /* neon_vminfv8hf */
    case 1682:  /* neon_vmaxfv8hf */
    case 1681:  /* neon_vminfv4sf */
    case 1680:  /* neon_vmaxfv4sf */
    case 1629:  /* neon_vabdfv4sf */
    case 1603:  /* neon_vcaltv8hf_fp16insn_unspec */
    case 1602:  /* neon_vcalev8hf_fp16insn_unspec */
    case 1601:  /* neon_vcagtv8hf_fp16insn_unspec */
    case 1600:  /* neon_vcagev8hf_fp16insn_unspec */
    case 1595:  /* neon_vcalev8hf_fp16insn */
    case 1594:  /* neon_vcaltv8hf_fp16insn */
    case 1593:  /* neon_vcagev8hf_fp16insn */
    case 1592:  /* neon_vcagtv8hf_fp16insn */
    case 1591:  /* neon_vcagtv4sf_insn_unspec */
    case 1590:  /* neon_vcagev4sf_insn_unspec */
    case 1587:  /* neon_vcagev4sf_insn */
    case 1586:  /* neon_vcagtv4sf_insn */
    case 1566:  /* neon_vclev8hf_fp16insn_unspec */
    case 1565:  /* neon_vcltv8hf_fp16insn_unspec */
    case 1564:  /* neon_vcgev8hf_fp16insn_unspec */
    case 1563:  /* neon_vcgtv8hf_fp16insn_unspec */
    case 1562:  /* neon_vceqv8hf_fp16insn_unspec */
    case 1551:  /* neon_vclev4sf_insn_unspec */
    case 1550:  /* neon_vcltv4sf_insn_unspec */
    case 1549:  /* neon_vcgev4sf_insn_unspec */
    case 1548:  /* neon_vcgtv4sf_insn_unspec */
    case 1547:  /* neon_vceqv4sf_insn_unspec */
    case 1162:  /* neon_vrsqrtev8hf */
    case 1060:  /* neon_vcvtauv4sfv4si */
    case 1059:  /* neon_vcvtmuv4sfv4si */
    case 1058:  /* neon_vcvtpuv4sfv4si */
    case 1057:  /* neon_vcvtav4sfv4si */
    case 1056:  /* neon_vcvtmv4sfv4si */
    case 1055:  /* neon_vcvtpv4sfv4si */
      return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;

    case 1899:  /* neon_vcvtpuv4hf */
    case 1898:  /* neon_vcvtpsv4hf */
    case 1897:  /* neon_vcvtnuv4hf */
    case 1896:  /* neon_vcvtnsv4hf */
    case 1895:  /* neon_vcvtmuv4hf */
    case 1894:  /* neon_vcvtmsv4hf */
    case 1893:  /* neon_vcvtauv4hf */
    case 1892:  /* neon_vcvtasv4hf */
    case 1881:  /* neon_vcvtu_nv4hi */
    case 1880:  /* neon_vcvts_nv4hi */
    case 1877:  /* neon_vcvtu_nv2si */
    case 1876:  /* neon_vcvts_nv2si */
    case 1875:  /* neon_vcvtu_nv4hf */
    case 1874:  /* neon_vcvts_nv4hf */
    case 1869:  /* neon_vcvtu_nv2sf */
    case 1868:  /* neon_vcvts_nv2sf */
    case 1867:  /* neon_vcvtuv4hf */
    case 1866:  /* neon_vcvtsv4hf */
    case 1861:  /* neon_vcvtuv4hi */
    case 1860:  /* neon_vcvtsv4hi */
    case 1855:  /* neon_vcvtuv2si */
    case 1854:  /* neon_vcvtsv2si */
    case 1851:  /* neon_vcvtuv2sf */
    case 1850:  /* neon_vcvtsv2sf */
    case 1848:  /* fixuns_truncv2sfv2si2 */
    case 1846:  /* fix_truncv2sfv2si2 */
    case 1844:  /* floatunsv2siv2sf2 */
    case 1842:  /* floatv2siv2sf2 */
    case 1782:  /* neon_vrsqrtev2sf */
    case 1781:  /* neon_vrsqrtev2si */
    case 1778:  /* neon_vrecpev2sf */
    case 1777:  /* neon_vrecpev2si */
    case 1776:  /* neon_vrecpev4hf */
    case 1693:  /* fminv2sf3 */
    case 1692:  /* fmaxv2sf3 */
    case 1691:  /* neon_vminnmv4hf */
    case 1690:  /* neon_vmaxnmv4hf */
    case 1685:  /* neon_vminfv4hf */
    case 1684:  /* neon_vmaxfv4hf */
    case 1679:  /* neon_vminfv2sf */
    case 1678:  /* neon_vmaxfv2sf */
    case 1628:  /* neon_vabdfv2sf */
    case 1607:  /* neon_vcaltv4hf_fp16insn_unspec */
    case 1606:  /* neon_vcalev4hf_fp16insn_unspec */
    case 1605:  /* neon_vcagtv4hf_fp16insn_unspec */
    case 1604:  /* neon_vcagev4hf_fp16insn_unspec */
    case 1599:  /* neon_vcalev4hf_fp16insn */
    case 1598:  /* neon_vcaltv4hf_fp16insn */
    case 1597:  /* neon_vcagev4hf_fp16insn */
    case 1596:  /* neon_vcagtv4hf_fp16insn */
    case 1589:  /* neon_vcagtv2sf_insn_unspec */
    case 1588:  /* neon_vcagev2sf_insn_unspec */
    case 1585:  /* neon_vcagev2sf_insn */
    case 1584:  /* neon_vcagtv2sf_insn */
    case 1571:  /* neon_vclev4hf_fp16insn_unspec */
    case 1570:  /* neon_vcltv4hf_fp16insn_unspec */
    case 1569:  /* neon_vcgev4hf_fp16insn_unspec */
    case 1568:  /* neon_vcgtv4hf_fp16insn_unspec */
    case 1567:  /* neon_vceqv4hf_fp16insn_unspec */
    case 1546:  /* neon_vclev2sf_insn_unspec */
    case 1545:  /* neon_vcltv2sf_insn_unspec */
    case 1544:  /* neon_vcgev2sf_insn_unspec */
    case 1543:  /* neon_vcgtv2sf_insn_unspec */
    case 1542:  /* neon_vceqv2sf_insn_unspec */
    case 1163:  /* neon_vrsqrtev4hf */
    case 1054:  /* neon_vcvtauv2sfv2si */
    case 1053:  /* neon_vcvtmuv2sfv2si */
    case 1052:  /* neon_vcvtpuv2sfv2si */
    case 1051:  /* neon_vcvtav2sfv2si */
    case 1050:  /* neon_vcvtmv2sfv2si */
    case 1049:  /* neon_vcvtpv2sfv2si */
      return CORTEX_A9_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;

    case 2202:  /* neon_vrsrau_nv2di */
    case 2201:  /* neon_vrsras_nv2di */
    case 2200:  /* neon_vsrau_nv2di */
    case 2199:  /* neon_vsras_nv2di */
    case 2198:  /* neon_vrsrau_ndi */
    case 2197:  /* neon_vrsras_ndi */
    case 2196:  /* neon_vsrau_ndi */
    case 2195:  /* neon_vsras_ndi */
    case 2194:  /* neon_vrsrau_nv4si */
    case 2193:  /* neon_vrsras_nv4si */
    case 2192:  /* neon_vsrau_nv4si */
    case 2191:  /* neon_vsras_nv4si */
    case 2190:  /* neon_vrsrau_nv2si */
    case 2189:  /* neon_vrsras_nv2si */
    case 2188:  /* neon_vsrau_nv2si */
    case 2187:  /* neon_vsras_nv2si */
    case 2186:  /* neon_vrsrau_nv8hi */
    case 2185:  /* neon_vrsras_nv8hi */
    case 2184:  /* neon_vsrau_nv8hi */
    case 2183:  /* neon_vsras_nv8hi */
    case 2182:  /* neon_vrsrau_nv4hi */
    case 2181:  /* neon_vrsras_nv4hi */
    case 2180:  /* neon_vsrau_nv4hi */
    case 2179:  /* neon_vsras_nv4hi */
    case 2178:  /* neon_vrsrau_nv16qi */
    case 2177:  /* neon_vrsras_nv16qi */
    case 2176:  /* neon_vsrau_nv16qi */
    case 2175:  /* neon_vsras_nv16qi */
    case 2174:  /* neon_vrsrau_nv8qi */
    case 2173:  /* neon_vrsras_nv8qi */
    case 2172:  /* neon_vsrau_nv8qi */
    case 2171:  /* neon_vsras_nv8qi */
      return CORTEX_A9_NEON_TYPE_NEON_VSRA_VRSRA;

    case 2218:  /* neon_vsli_nv2di */
    case 2216:  /* neon_vsli_nv4si */
    case 2214:  /* neon_vsli_nv8hi */
    case 2212:  /* neon_vsli_nv16qi */
    case 2210:  /* neon_vsri_nv2di */
    case 2208:  /* neon_vsri_nv4si */
    case 2206:  /* neon_vsri_nv8hi */
    case 2204:  /* neon_vsri_nv16qi */
    case 1223:  /* ashlv2di3_unsigned */
    case 1222:  /* ashlv4si3_unsigned */
    case 1220:  /* ashlv8hi3_unsigned */
    case 1218:  /* ashlv16qi3_unsigned */
    case 1216:  /* ashlv2di3_signed */
    case 1215:  /* ashlv4si3_signed */
    case 1213:  /* ashlv8hi3_signed */
    case 1211:  /* ashlv16qi3_signed */
      return CORTEX_A9_NEON_TYPE_NEON_SHIFT_3;

    case 2164:  /* neon_vqshlu_nv2di */
    case 2163:  /* neon_vqshlu_ndi */
    case 2162:  /* neon_vqshlu_nv4si */
    case 2161:  /* neon_vqshlu_nv2si */
    case 2160:  /* neon_vqshlu_nv8hi */
    case 2159:  /* neon_vqshlu_nv4hi */
    case 2158:  /* neon_vqshlu_nv16qi */
    case 2157:  /* neon_vqshlu_nv8qi */
    case 2156:  /* neon_vqshl_u_nv2di */
    case 2155:  /* neon_vqshl_s_nv2di */
    case 2154:  /* neon_vqshl_u_ndi */
    case 2153:  /* neon_vqshl_s_ndi */
    case 2152:  /* neon_vqshl_u_nv4si */
    case 2151:  /* neon_vqshl_s_nv4si */
    case 2150:  /* neon_vqshl_u_nv2si */
    case 2149:  /* neon_vqshl_s_nv2si */
    case 2148:  /* neon_vqshl_u_nv8hi */
    case 2147:  /* neon_vqshl_s_nv8hi */
    case 2146:  /* neon_vqshl_u_nv4hi */
    case 2145:  /* neon_vqshl_s_nv4hi */
    case 2144:  /* neon_vqshl_u_nv16qi */
    case 2143:  /* neon_vqshl_s_nv16qi */
    case 2142:  /* neon_vqshl_u_nv8qi */
    case 2141:  /* neon_vqshl_s_nv8qi */
    case 2132:  /* neon_vqrshrun_nv2di */
    case 2131:  /* neon_vqshrun_nv2di */
    case 2130:  /* neon_vqrshrun_nv4si */
    case 2129:  /* neon_vqshrun_nv4si */
    case 2128:  /* neon_vqrshrun_nv8hi */
    case 2127:  /* neon_vqshrun_nv8hi */
    case 2126:  /* neon_vqrshrnu_nv2di */
    case 2125:  /* neon_vqrshrns_nv2di */
    case 2124:  /* neon_vqshrnu_nv2di */
    case 2123:  /* neon_vqshrns_nv2di */
    case 2122:  /* neon_vqrshrnu_nv4si */
    case 2121:  /* neon_vqrshrns_nv4si */
    case 2120:  /* neon_vqshrnu_nv4si */
    case 2119:  /* neon_vqshrns_nv4si */
    case 2118:  /* neon_vqrshrnu_nv8hi */
    case 2117:  /* neon_vqrshrns_nv8hi */
    case 2116:  /* neon_vqshrnu_nv8hi */
    case 2115:  /* neon_vqshrns_nv8hi */
    case 2076:  /* neon_vqrshluv2di */
    case 2075:  /* neon_vqrshlsv2di */
    case 2074:  /* neon_vqshluv2di */
    case 2073:  /* neon_vqshlsv2di */
    case 2072:  /* neon_vqrshludi */
    case 2071:  /* neon_vqrshlsdi */
    case 2070:  /* neon_vqshludi */
    case 2069:  /* neon_vqshlsdi */
    case 2068:  /* neon_vqrshluv4si */
    case 2067:  /* neon_vqrshlsv4si */
    case 2066:  /* neon_vqshluv4si */
    case 2065:  /* neon_vqshlsv4si */
    case 2064:  /* neon_vqrshluv2si */
    case 2063:  /* neon_vqrshlsv2si */
    case 2062:  /* neon_vqshluv2si */
    case 2061:  /* neon_vqshlsv2si */
    case 2060:  /* neon_vqrshluv8hi */
    case 2059:  /* neon_vqrshlsv8hi */
    case 2058:  /* neon_vqshluv8hi */
    case 2057:  /* neon_vqshlsv8hi */
    case 2056:  /* neon_vqrshluv4hi */
    case 2055:  /* neon_vqrshlsv4hi */
    case 2054:  /* neon_vqshluv4hi */
    case 2053:  /* neon_vqshlsv4hi */
    case 2052:  /* neon_vqrshluv16qi */
    case 2051:  /* neon_vqrshlsv16qi */
    case 2050:  /* neon_vqshluv16qi */
    case 2049:  /* neon_vqshlsv16qi */
    case 2048:  /* neon_vqrshluv8qi */
    case 2047:  /* neon_vqrshlsv8qi */
    case 2046:  /* neon_vqshluv8qi */
    case 2045:  /* neon_vqshlsv8qi */
    case 1911:  /* neon_vqmovunv2di */
    case 1910:  /* neon_vqmovunv4si */
    case 1909:  /* neon_vqmovunv8hi */
    case 1908:  /* neon_vqmovnuv2di */
    case 1907:  /* neon_vqmovnsv2di */
    case 1906:  /* neon_vqmovnuv4si */
    case 1905:  /* neon_vqmovnsv4si */
    case 1904:  /* neon_vqmovnuv8hi */
    case 1903:  /* neon_vqmovnsv8hi */
      return CORTEX_A9_NEON_TYPE_NEON_SHIFT_2;

    case 2506:  /* neon_vec_ushiftl_v2si */
    case 2505:  /* neon_vec_sshiftl_v2si */
    case 2504:  /* neon_vec_ushiftl_v4hi */
    case 2503:  /* neon_vec_sshiftl_v4hi */
    case 2502:  /* neon_vec_ushiftl_v8qi */
    case 2501:  /* neon_vec_sshiftl_v8qi */
    case 2488:  /* neon_vec_unpacku_hi_v4si */
    case 2487:  /* neon_vec_unpacks_hi_v4si */
    case 2486:  /* neon_vec_unpacku_hi_v8hi */
    case 2485:  /* neon_vec_unpacks_hi_v8hi */
    case 2484:  /* neon_vec_unpacku_hi_v16qi */
    case 2483:  /* neon_vec_unpacks_hi_v16qi */
    case 2482:  /* neon_vec_unpacku_lo_v4si */
    case 2481:  /* neon_vec_unpacks_lo_v4si */
    case 2480:  /* neon_vec_unpacku_lo_v8hi */
    case 2479:  /* neon_vec_unpacks_lo_v8hi */
    case 2478:  /* neon_vec_unpacku_lo_v16qi */
    case 2477:  /* neon_vec_unpacks_lo_v16qi */
    case 2217:  /* neon_vsli_ndi */
    case 2215:  /* neon_vsli_nv2si */
    case 2213:  /* neon_vsli_nv4hi */
    case 2211:  /* neon_vsli_nv8qi */
    case 2209:  /* neon_vsri_ndi */
    case 2207:  /* neon_vsri_nv2si */
    case 2205:  /* neon_vsri_nv4hi */
    case 2203:  /* neon_vsri_nv8qi */
    case 2170:  /* neon_vshllu_nv2si */
    case 2169:  /* neon_vshlls_nv2si */
    case 2168:  /* neon_vshllu_nv4hi */
    case 2167:  /* neon_vshlls_nv4hi */
    case 2166:  /* neon_vshllu_nv8qi */
    case 2165:  /* neon_vshlls_nv8qi */
    case 2140:  /* neon_vshl_nv2di */
    case 2139:  /* neon_vshl_ndi */
    case 2138:  /* neon_vshl_nv4si */
    case 2137:  /* neon_vshl_nv2si */
    case 2136:  /* neon_vshl_nv8hi */
    case 2135:  /* neon_vshl_nv4hi */
    case 2134:  /* neon_vshl_nv16qi */
    case 2133:  /* neon_vshl_nv8qi */
    case 2114:  /* neon_vrshrn_nv2di */
    case 2113:  /* neon_vshrn_nv2di */
    case 2112:  /* neon_vrshrn_nv4si */
    case 2111:  /* neon_vshrn_nv4si */
    case 2110:  /* neon_vrshrn_nv8hi */
    case 2109:  /* neon_vshrn_nv8hi */
    case 2108:  /* neon_vrshru_nv2di */
    case 2107:  /* neon_vrshrs_nv2di */
    case 2106:  /* neon_vshru_nv2di */
    case 2105:  /* neon_vshrs_nv2di */
    case 2104:  /* neon_vrshru_ndi */
    case 2103:  /* neon_vrshrs_ndi */
    case 2102:  /* neon_vshru_ndi */
    case 2101:  /* neon_vshrs_ndi */
    case 2100:  /* neon_vrshru_nv4si */
    case 2099:  /* neon_vrshrs_nv4si */
    case 2098:  /* neon_vshru_nv4si */
    case 2097:  /* neon_vshrs_nv4si */
    case 2096:  /* neon_vrshru_nv2si */
    case 2095:  /* neon_vrshrs_nv2si */
    case 2094:  /* neon_vshru_nv2si */
    case 2093:  /* neon_vshrs_nv2si */
    case 2092:  /* neon_vrshru_nv8hi */
    case 2091:  /* neon_vrshrs_nv8hi */
    case 2090:  /* neon_vshru_nv8hi */
    case 2089:  /* neon_vshrs_nv8hi */
    case 2088:  /* neon_vrshru_nv4hi */
    case 2087:  /* neon_vrshrs_nv4hi */
    case 2086:  /* neon_vshru_nv4hi */
    case 2085:  /* neon_vshrs_nv4hi */
    case 2084:  /* neon_vrshru_nv16qi */
    case 2083:  /* neon_vrshrs_nv16qi */
    case 2082:  /* neon_vshru_nv16qi */
    case 2081:  /* neon_vshrs_nv16qi */
    case 2080:  /* neon_vrshru_nv8qi */
    case 2079:  /* neon_vrshrs_nv8qi */
    case 2078:  /* neon_vshru_nv8qi */
    case 2077:  /* neon_vshrs_nv8qi */
    case 2044:  /* neon_vrshluv2di */
    case 2043:  /* neon_vrshlsv2di */
    case 2042:  /* neon_vshluv2di */
    case 2041:  /* neon_vshlsv2di */
    case 2040:  /* neon_vrshludi */
    case 2039:  /* neon_vrshlsdi */
    case 2038:  /* neon_vshludi */
    case 2037:  /* neon_vshlsdi */
    case 2036:  /* neon_vrshluv4si */
    case 2035:  /* neon_vrshlsv4si */
    case 2034:  /* neon_vshluv4si */
    case 2033:  /* neon_vshlsv4si */
    case 2032:  /* neon_vrshluv2si */
    case 2031:  /* neon_vrshlsv2si */
    case 2030:  /* neon_vshluv2si */
    case 2029:  /* neon_vshlsv2si */
    case 2028:  /* neon_vrshluv8hi */
    case 2027:  /* neon_vrshlsv8hi */
    case 2026:  /* neon_vshluv8hi */
    case 2025:  /* neon_vshlsv8hi */
    case 2024:  /* neon_vrshluv4hi */
    case 2023:  /* neon_vrshlsv4hi */
    case 2022:  /* neon_vshluv4hi */
    case 2021:  /* neon_vshlsv4hi */
    case 2020:  /* neon_vrshluv16qi */
    case 2019:  /* neon_vrshlsv16qi */
    case 2018:  /* neon_vshluv16qi */
    case 2017:  /* neon_vshlsv16qi */
    case 2016:  /* neon_vrshluv8qi */
    case 2015:  /* neon_vrshlsv8qi */
    case 2014:  /* neon_vshluv8qi */
    case 2013:  /* neon_vshlsv8qi */
    case 1917:  /* neon_vmovluv2si */
    case 1916:  /* neon_vmovlsv2si */
    case 1915:  /* neon_vmovluv4hi */
    case 1914:  /* neon_vmovlsv4hi */
    case 1913:  /* neon_vmovluv8qi */
    case 1912:  /* neon_vmovlsv8qi */
    case 1902:  /* neon_vmovnv2di */
    case 1901:  /* neon_vmovnv4si */
    case 1900:  /* neon_vmovnv8hi */
    case 1230:  /* lshrdi3_neon_imm_noclobber */
    case 1229:  /* ashrdi3_neon_imm_noclobber */
    case 1228:  /* unsigned_shift_di3_neon */
    case 1227:  /* signed_shift_di3_neon */
    case 1225:  /* ashldi3_neon_noclobber */
    case 1221:  /* ashlv2si3_unsigned */
    case 1219:  /* ashlv4hi3_unsigned */
    case 1217:  /* ashlv8qi3_unsigned */
    case 1214:  /* ashlv2si3_signed */
    case 1212:  /* ashlv4hi3_signed */
    case 1210:  /* ashlv8qi3_signed */
    case 1209:  /* vlshrv4si3_imm */
    case 1208:  /* vlshrv2si3_imm */
    case 1207:  /* vlshrv8hi3_imm */
    case 1206:  /* vlshrv4hi3_imm */
    case 1205:  /* vlshrv16qi3_imm */
    case 1204:  /* vlshrv8qi3_imm */
    case 1203:  /* vashrv4si3_imm */
    case 1202:  /* vashrv2si3_imm */
    case 1201:  /* vashrv8hi3_imm */
    case 1200:  /* vashrv4hi3_imm */
    case 1199:  /* vashrv16qi3_imm */
    case 1198:  /* vashrv8qi3_imm */
    case 1196:  /* vashlv2si3 */
    case 1194:  /* vashlv4hi3 */
    case 1192:  /* vashlv8qi3 */
      return CORTEX_A9_NEON_TYPE_NEON_SHIFT_1;

    case 1967:  /* neon_vmlslu_lanev4hi */
    case 1966:  /* neon_vmlsls_lanev4hi */
    case 1955:  /* neon_vmlalu_lanev4hi */
    case 1954:  /* neon_vmlals_lanev4hi */
    case 1945:  /* neon_vqrdmlsh_lanev4hi */
    case 1944:  /* neon_vqrdmlah_lanev4hi */
      return CORTEX_A9_NEON_TYPE_NEON_MLA_DDD_16_SCALAR_QDD_32_16_LONG_SCALAR;

    case 1430:  /* neon_vqrdmulhv4si */
    case 1429:  /* neon_vqdmulhv4si */
    case 1393:  /* neon_vmulfv8hf */
      return CORTEX_A9_NEON_TYPE_NEON_MUL_QQD_32_SCALAR;

    case 1930:  /* neon_vqdmull_lanev4hi */
    case 1927:  /* neon_vmullu_lanev4hi */
    case 1926:  /* neon_vmulls_lanev4hi */
      return CORTEX_A9_NEON_TYPE_NEON_MUL_DDD_16_SCALAR_32_16_LONG_SCALAR;

    case 1943:  /* neon_vqrdmlsh_lanev4si */
    case 1942:  /* neon_vqrdmlah_lanev4si */
      return CORTEX_A9_NEON_TYPE_NEON_MLA_QQQ_32_QQD_32_SCALAR;

    case 1971:  /* neon_vqdmlsl_lanev2si */
    case 1969:  /* neon_vmlslu_lanev2si */
    case 1968:  /* neon_vmlsls_lanev2si */
    case 1959:  /* neon_vqdmlal_lanev2si */
    case 1957:  /* neon_vmlalu_lanev2si */
    case 1956:  /* neon_vmlals_lanev2si */
    case 1947:  /* neon_vqrdmlsh_lanev2si */
    case 1946:  /* neon_vqrdmlah_lanev2si */
    case 1941:  /* neon_vqrdmlsh_lanev8hi */
    case 1940:  /* neon_vqrdmlah_lanev8hi */
    case 1442:  /* neon_vqdmlslv2si */
    case 1440:  /* neon_vqdmlalv2si */
    case 1438:  /* neon_vqrdmlshv4si */
    case 1437:  /* neon_vqrdmlahv4si */
    case 1434:  /* neon_vqrdmlshv2si */
    case 1433:  /* neon_vqrdmlahv2si */
    case 1422:  /* neon_vmlsluv2si */
    case 1421:  /* neon_vmlslsv2si */
    case 1408:  /* neon_vmlaluv2si */
    case 1407:  /* neon_vmlalsv2si */
      return CORTEX_A9_NEON_TYPE_NEON_MLA_DDD_32_QQD_16_DDD_32_SCALAR_QDD_64_32_LONG_SCALAR_QDD_64_32_LONG;

    case 1970:  /* neon_vqdmlsl_lanev4hi */
    case 1958:  /* neon_vqdmlal_lanev4hi */
    case 1441:  /* neon_vqdmlslv4hi */
    case 1439:  /* neon_vqdmlalv4hi */
    case 1436:  /* neon_vqrdmlshv8hi */
    case 1435:  /* neon_vqrdmlahv8hi */
    case 1432:  /* neon_vqrdmlshv4hi */
    case 1431:  /* neon_vqrdmlahv4hi */
    case 1420:  /* neon_vmlsluv4hi */
    case 1419:  /* neon_vmlslsv4hi */
    case 1418:  /* neon_vmlsluv8qi */
    case 1417:  /* neon_vmlslsv8qi */
    case 1406:  /* neon_vmlaluv4hi */
    case 1405:  /* neon_vmlalsv4hi */
    case 1404:  /* neon_vmlaluv8qi */
    case 1403:  /* neon_vmlalsv8qi */
      return CORTEX_A9_NEON_TYPE_NEON_MLA_DDD_8_16_QDD_16_8_LONG_32_16_LONG;

    case 2518:  /* neon_vec_umult_v2si */
    case 2517:  /* neon_vec_smult_v2si */
    case 2500:  /* neon_vec_umult_hi_v4si */
    case 2499:  /* neon_vec_smult_hi_v4si */
    case 2494:  /* neon_vec_umult_lo_v4si */
    case 2493:  /* neon_vec_smult_lo_v4si */
    case 1937:  /* neon_vqrdmulh_lanev4hi */
    case 1936:  /* neon_vqdmulh_lanev4hi */
    case 1933:  /* neon_vqrdmulh_lanev8hi */
    case 1932:  /* neon_vqdmulh_lanev8hi */
    case 1931:  /* neon_vqdmull_lanev2si */
    case 1929:  /* neon_vmullu_lanev2si */
    case 1928:  /* neon_vmulls_lanev2si */
    case 1453:  /* neon_vqdmullv2si */
    case 1451:  /* neon_vmullpv2si */
    case 1450:  /* neon_vmulluv2si */
    case 1449:  /* neon_vmullsv2si */
    case 1426:  /* neon_vqrdmulhv2si */
    case 1425:  /* neon_vqdmulhv2si */
    case 1394:  /* neon_vmulfv4hf */
      return CORTEX_A9_NEON_TYPE_NEON_MUL_QDD_64_32_LONG_QQD_16_DDD_32_SCALAR_64_32_LONG_SCALAR;

    case 1428:  /* neon_vqrdmulhv8hi */
    case 1427:  /* neon_vqdmulhv8hi */
      return CORTEX_A9_NEON_TYPE_NEON_MUL_QQQ_8_16_32_DDD_32;

    case 2516:  /* neon_vec_umult_v4hi */
    case 2515:  /* neon_vec_smult_v4hi */
    case 2514:  /* neon_vec_umult_v8qi */
    case 2513:  /* neon_vec_smult_v8qi */
    case 2498:  /* neon_vec_umult_hi_v8hi */
    case 2497:  /* neon_vec_smult_hi_v8hi */
    case 2496:  /* neon_vec_umult_hi_v16qi */
    case 2495:  /* neon_vec_smult_hi_v16qi */
    case 2492:  /* neon_vec_umult_lo_v8hi */
    case 2491:  /* neon_vec_smult_lo_v8hi */
    case 2490:  /* neon_vec_umult_lo_v16qi */
    case 2489:  /* neon_vec_smult_lo_v16qi */
    case 1452:  /* neon_vqdmullv4hi */
    case 1448:  /* neon_vmullpv4hi */
    case 1447:  /* neon_vmulluv4hi */
    case 1446:  /* neon_vmullsv4hi */
    case 1445:  /* neon_vmullpv8qi */
    case 1444:  /* neon_vmulluv8qi */
    case 1443:  /* neon_vmullsv8qi */
    case 1424:  /* neon_vqrdmulhv4hi */
    case 1423:  /* neon_vqdmulhv4hi */
      return CORTEX_A9_NEON_TYPE_NEON_MUL_DDD_8_16_QDD_16_8_LONG_32_16_LONG;

    case 2512:  /* neon_unpacku_v2si */
    case 2511:  /* neon_unpacks_v2si */
    case 2510:  /* neon_unpacku_v4hi */
    case 2509:  /* neon_unpacks_v4hi */
    case 2508:  /* neon_unpacku_v8qi */
    case 2507:  /* neon_unpacks_v8qi */
    case 1128:  /* one_cmplv2di2 */
    case 1127:  /* one_cmplv4sf2 */
    case 1126:  /* one_cmplv2sf2 */
    case 1125:  /* one_cmplv8hf2 */
    case 1124:  /* one_cmplv4hf2 */
    case 1123:  /* one_cmplv4si2 */
    case 1122:  /* one_cmplv2si2 */
    case 1121:  /* one_cmplv8hi2 */
    case 1120:  /* one_cmplv4hi2 */
    case 1119:  /* one_cmplv16qi2 */
    case 1118:  /* one_cmplv8qi2 */
      return CORTEX_A9_NEON_TYPE_NEON_VMOV;

    case 1647:  /* neon_vabauv4si */
    case 1646:  /* neon_vabasv4si */
    case 1643:  /* neon_vabauv8hi */
    case 1642:  /* neon_vabasv8hi */
    case 1639:  /* neon_vabauv16qi */
    case 1638:  /* neon_vabasv16qi */
      return CORTEX_A9_NEON_TYPE_NEON_VABA_QQQ;

    case 1719:  /* neon_vpadaluv4si */
    case 1718:  /* neon_vpadalsv4si */
    case 1717:  /* neon_vpadaluv2si */
    case 1716:  /* neon_vpadalsv2si */
    case 1715:  /* neon_vpadaluv8hi */
    case 1714:  /* neon_vpadalsv8hi */
    case 1713:  /* neon_vpadaluv4hi */
    case 1712:  /* neon_vpadalsv4hi */
    case 1711:  /* neon_vpadaluv16qi */
    case 1710:  /* neon_vpadalsv16qi */
    case 1709:  /* neon_vpadaluv8qi */
    case 1708:  /* neon_vpadalsv8qi */
    case 1653:  /* neon_vabaluv2si */
    case 1652:  /* neon_vabalsv2si */
    case 1651:  /* neon_vabaluv4hi */
    case 1650:  /* neon_vabalsv4hi */
    case 1649:  /* neon_vabaluv8qi */
    case 1648:  /* neon_vabalsv8qi */
    case 1645:  /* neon_vabauv2si */
    case 1644:  /* neon_vabasv2si */
    case 1641:  /* neon_vabauv4hi */
    case 1640:  /* neon_vabasv4hi */
    case 1637:  /* neon_vabauv8qi */
    case 1636:  /* neon_vabasv8qi */
      return CORTEX_A9_NEON_TYPE_NEON_VABA;

    case 2012:  /* neon_vbslv2di_internal */
    case 2010:  /* neon_vbslv4sf_internal */
    case 2008:  /* neon_vbslv8hf_internal */
    case 2006:  /* neon_vbslv4si_internal */
    case 2004:  /* neon_vbslv8hi_internal */
    case 2002:  /* neon_vbslv16qi_internal */
    case 1774:  /* popcountv16qi2 */
    case 1772:  /* clzv4si2 */
    case 1770:  /* clzv8hi2 */
    case 1768:  /* clzv16qi2 */
    case 1766:  /* neon_vclsv4si */
    case 1764:  /* neon_vclsv8hi */
    case 1762:  /* neon_vclsv16qi */
      return CORTEX_A9_NEON_TYPE_NEON_BIT_OPS_Q;

    case 1760:  /* neon_vqnegv4si */
    case 1759:  /* neon_vqnegv2si */
    case 1758:  /* neon_vqnegv8hi */
    case 1757:  /* neon_vqnegv4hi */
    case 1756:  /* neon_vqnegv16qi */
    case 1755:  /* neon_vqnegv8qi */
    case 1749:  /* neon_vqabsv4si */
    case 1748:  /* neon_vqabsv2si */
    case 1747:  /* neon_vqabsv8hi */
    case 1746:  /* neon_vqabsv4hi */
    case 1745:  /* neon_vqabsv16qi */
    case 1744:  /* neon_vqabsv8qi */
      return CORTEX_A9_NEON_TYPE_NEON_VQNEG_VQABS;

    case 1731:  /* neon_vpminuv2si */
    case 1730:  /* neon_vpminsv2si */
    case 1729:  /* neon_vpmaxuv2si */
    case 1728:  /* neon_vpmaxsv2si */
    case 1727:  /* neon_vpminuv4hi */
    case 1726:  /* neon_vpminsv4hi */
    case 1725:  /* neon_vpmaxuv4hi */
    case 1724:  /* neon_vpmaxsv4hi */
    case 1723:  /* neon_vpminuv8qi */
    case 1722:  /* neon_vpminsv8qi */
    case 1721:  /* neon_vpmaxuv8qi */
    case 1720:  /* neon_vpmaxsv8qi */
    case 1687:  /* neon_vpminfv4hf */
    case 1686:  /* neon_vpmaxfv4hf */
    case 1677:  /* neon_vminuv4si */
    case 1676:  /* neon_vminsv4si */
    case 1675:  /* neon_vmaxuv4si */
    case 1674:  /* neon_vmaxsv4si */
    case 1673:  /* neon_vminuv2si */
    case 1672:  /* neon_vminsv2si */
    case 1671:  /* neon_vmaxuv2si */
    case 1670:  /* neon_vmaxsv2si */
    case 1669:  /* neon_vminuv8hi */
    case 1668:  /* neon_vminsv8hi */
    case 1667:  /* neon_vmaxuv8hi */
    case 1666:  /* neon_vmaxsv8hi */
    case 1665:  /* neon_vminuv4hi */
    case 1664:  /* neon_vminsv4hi */
    case 1663:  /* neon_vmaxuv4hi */
    case 1662:  /* neon_vmaxsv4hi */
    case 1661:  /* neon_vminuv16qi */
    case 1660:  /* neon_vminsv16qi */
    case 1659:  /* neon_vmaxuv16qi */
    case 1658:  /* neon_vmaxsv16qi */
    case 1657:  /* neon_vminuv8qi */
    case 1656:  /* neon_vminsv8qi */
    case 1655:  /* neon_vmaxuv8qi */
    case 1654:  /* neon_vmaxsv8qi */
    case 1635:  /* neon_vabdluv2si */
    case 1634:  /* neon_vabdlsv2si */
    case 1633:  /* neon_vabdluv4hi */
    case 1632:  /* neon_vabdlsv4hi */
    case 1631:  /* neon_vabdluv8qi */
    case 1630:  /* neon_vabdlsv8qi */
    case 1627:  /* neon_vabdv4hf */
    case 1626:  /* neon_vabdv8hf */
    case 1625:  /* neon_vabduv4si */
    case 1624:  /* neon_vabdsv4si */
    case 1623:  /* neon_vabduv2si */
    case 1622:  /* neon_vabdsv2si */
    case 1621:  /* neon_vabduv8hi */
    case 1620:  /* neon_vabdsv8hi */
    case 1619:  /* neon_vabduv4hi */
    case 1618:  /* neon_vabdsv4hi */
    case 1617:  /* neon_vabduv16qi */
    case 1616:  /* neon_vabdsv16qi */
    case 1615:  /* neon_vabduv8qi */
    case 1614:  /* neon_vabdsv8qi */
    case 1583:  /* neon_vcgeuv4si */
    case 1582:  /* neon_vcgtuv4si */
    case 1581:  /* neon_vcgeuv2si */
    case 1580:  /* neon_vcgtuv2si */
    case 1579:  /* neon_vcgeuv8hi */
    case 1578:  /* neon_vcgtuv8hi */
    case 1577:  /* neon_vcgeuv4hi */
    case 1576:  /* neon_vcgtuv4hi */
    case 1575:  /* neon_vcgeuv16qi */
    case 1574:  /* neon_vcgtuv16qi */
    case 1573:  /* neon_vcgeuv8qi */
    case 1572:  /* neon_vcgtuv8qi */
    case 1495:  /* neon_vhsubuv4si */
    case 1494:  /* neon_vhsubsv4si */
    case 1493:  /* neon_vhsubuv2si */
    case 1492:  /* neon_vhsubsv2si */
    case 1491:  /* neon_vhsubuv8hi */
    case 1490:  /* neon_vhsubsv8hi */
    case 1489:  /* neon_vhsubuv4hi */
    case 1488:  /* neon_vhsubsv4hi */
    case 1487:  /* neon_vhsubuv16qi */
    case 1486:  /* neon_vhsubsv16qi */
    case 1485:  /* neon_vhsubuv8qi */
    case 1484:  /* neon_vhsubsv8qi */
    case 1483:  /* neon_vqsubuv2di */
    case 1482:  /* neon_vqsubsv2di */
    case 1481:  /* neon_vqsubudi */
    case 1480:  /* neon_vqsubsdi */
    case 1479:  /* neon_vqsubuv4si */
    case 1478:  /* neon_vqsubsv4si */
    case 1477:  /* neon_vqsubuv2si */
    case 1476:  /* neon_vqsubsv2si */
    case 1475:  /* neon_vqsubuv8hi */
    case 1474:  /* neon_vqsubsv8hi */
    case 1473:  /* neon_vqsubuv4hi */
    case 1472:  /* neon_vqsubsv4hi */
    case 1471:  /* neon_vqsubuv16qi */
    case 1470:  /* neon_vqsubsv16qi */
    case 1469:  /* neon_vqsubuv8qi */
    case 1468:  /* neon_vqsubsv8qi */
    case 1328:  /* *us_subv2sf_neon */
    case 1327:  /* *us_subv2si_neon */
    case 1326:  /* *us_subv4hi_neon */
    case 1325:  /* *us_subv8qi_neon */
    case 1324:  /* *ss_subv2sf_neon */
    case 1323:  /* *ss_subv2si_neon */
    case 1322:  /* *ss_subv4hi_neon */
    case 1321:  /* *ss_subv8qi_neon */
    case 1312:  /* neon_vpumaxv2si */
    case 1311:  /* neon_vpumaxv4hi */
    case 1310:  /* neon_vpumaxv8qi */
    case 1309:  /* neon_vpuminv2si */
    case 1308:  /* neon_vpuminv4hi */
    case 1307:  /* neon_vpuminv8qi */
    case 1292:  /* quad_halves_umaxv16qi */
    case 1291:  /* quad_halves_uminv16qi */
    case 1290:  /* quad_halves_smaxv16qi */
    case 1289:  /* quad_halves_sminv16qi */
    case 1287:  /* quad_halves_umaxv8hi */
    case 1286:  /* quad_halves_uminv8hi */
    case 1285:  /* quad_halves_smaxv8hi */
    case 1284:  /* quad_halves_sminv8hi */
    case 1279:  /* quad_halves_umaxv4si */
    case 1278:  /* quad_halves_uminv4si */
    case 1277:  /* quad_halves_smaxv4si */
    case 1276:  /* quad_halves_sminv4si */
    case 1175:  /* *umaxv4si3_neon */
    case 1174:  /* *umaxv2si3_neon */
    case 1173:  /* *umaxv8hi3_neon */
    case 1172:  /* *umaxv4hi3_neon */
    case 1171:  /* *umaxv16qi3_neon */
    case 1170:  /* *umaxv8qi3_neon */
    case 1169:  /* *uminv4si3_neon */
    case 1168:  /* *uminv2si3_neon */
    case 1167:  /* *uminv8hi3_neon */
    case 1166:  /* *uminv4hi3_neon */
    case 1165:  /* *uminv16qi3_neon */
    case 1164:  /* *uminv8qi3_neon */
      return CORTEX_A9_NEON_TYPE_NEON_INT_5;

    case 1613:  /* neon_vtstv4si */
    case 1612:  /* neon_vtstv2si */
    case 1611:  /* neon_vtstv8hi */
    case 1610:  /* neon_vtstv4hi */
    case 1609:  /* neon_vtstv16qi */
    case 1608:  /* neon_vtstv8qi */
    case 1501:  /* neon_vrsubhnv2di */
    case 1500:  /* neon_vsubhnv2di */
    case 1499:  /* neon_vrsubhnv4si */
    case 1498:  /* neon_vsubhnv4si */
    case 1497:  /* neon_vrsubhnv8hi */
    case 1496:  /* neon_vsubhnv8hi */
    case 1388:  /* neon_vraddhnv2di */
    case 1387:  /* neon_vaddhnv2di */
    case 1386:  /* neon_vraddhnv4si */
    case 1385:  /* neon_vaddhnv4si */
    case 1384:  /* neon_vraddhnv8hi */
    case 1383:  /* neon_vaddhnv8hi */
    case 1382:  /* neon_vqadduv2di */
    case 1381:  /* neon_vqaddsv2di */
    case 1380:  /* neon_vqaddudi */
    case 1379:  /* neon_vqaddsdi */
    case 1378:  /* neon_vqadduv4si */
    case 1377:  /* neon_vqaddsv4si */
    case 1376:  /* neon_vqadduv2si */
    case 1375:  /* neon_vqaddsv2si */
    case 1374:  /* neon_vqadduv8hi */
    case 1373:  /* neon_vqaddsv8hi */
    case 1372:  /* neon_vqadduv4hi */
    case 1371:  /* neon_vqaddsv4hi */
    case 1370:  /* neon_vqadduv16qi */
    case 1369:  /* neon_vqaddsv16qi */
    case 1368:  /* neon_vqadduv8qi */
    case 1367:  /* neon_vqaddsv8qi */
    case 1366:  /* neon_vhadduv4si */
    case 1365:  /* neon_vhaddsv4si */
    case 1364:  /* neon_vrhadduv4si */
    case 1363:  /* neon_vrhaddsv4si */
    case 1362:  /* neon_vhadduv2si */
    case 1361:  /* neon_vhaddsv2si */
    case 1360:  /* neon_vrhadduv2si */
    case 1359:  /* neon_vrhaddsv2si */
    case 1358:  /* neon_vhadduv8hi */
    case 1357:  /* neon_vhaddsv8hi */
    case 1356:  /* neon_vrhadduv8hi */
    case 1355:  /* neon_vrhaddsv8hi */
    case 1354:  /* neon_vhadduv4hi */
    case 1353:  /* neon_vhaddsv4hi */
    case 1352:  /* neon_vrhadduv4hi */
    case 1351:  /* neon_vrhaddsv4hi */
    case 1350:  /* neon_vhadduv16qi */
    case 1349:  /* neon_vhaddsv16qi */
    case 1348:  /* neon_vrhadduv16qi */
    case 1347:  /* neon_vrhaddsv16qi */
    case 1346:  /* neon_vhadduv8qi */
    case 1345:  /* neon_vhaddsv8qi */
    case 1344:  /* neon_vrhadduv8qi */
    case 1343:  /* neon_vrhaddsv8qi */
    case 1320:  /* *us_addv2sf_neon */
    case 1319:  /* *us_addv2si_neon */
    case 1318:  /* *us_addv4hi_neon */
    case 1317:  /* *us_addv8qi_neon */
    case 1316:  /* *ss_addv2sf_neon */
    case 1315:  /* *ss_addv2si_neon */
    case 1314:  /* *ss_addv4hi_neon */
    case 1313:  /* *ss_addv8qi_neon */
    case 1149:  /* negv4hf2 */
    case 1148:  /* absv4hf2 */
    case 1147:  /* negv8hf2 */
    case 1146:  /* absv8hf2 */
      return CORTEX_A9_NEON_TYPE_NEON_INT_4;

    case 1707:  /* neon_vpaddluv4si */
    case 1706:  /* neon_vpaddlsv4si */
    case 1705:  /* neon_vpaddluv2si */
    case 1704:  /* neon_vpaddlsv2si */
    case 1703:  /* neon_vpaddluv8hi */
    case 1702:  /* neon_vpaddlsv8hi */
    case 1701:  /* neon_vpaddluv4hi */
    case 1700:  /* neon_vpaddlsv4hi */
    case 1699:  /* neon_vpaddluv16qi */
    case 1698:  /* neon_vpaddlsv16qi */
    case 1697:  /* neon_vpaddluv8qi */
    case 1696:  /* neon_vpaddlsv8qi */
    case 1461:  /* neon_vsubluv2si */
    case 1460:  /* neon_vsublsv2si */
    case 1459:  /* neon_vsubluv4hi */
    case 1458:  /* neon_vsublsv4hi */
    case 1457:  /* neon_vsubluv8qi */
    case 1456:  /* neon_vsublsv8qi */
    case 1336:  /* neon_vaddluv2si */
    case 1335:  /* neon_vaddlsv2si */
    case 1334:  /* neon_vaddluv4hi */
    case 1333:  /* neon_vaddlsv4hi */
    case 1332:  /* neon_vaddluv8qi */
    case 1331:  /* neon_vaddlsv8qi */
    case 1298:  /* neon_vpaddv4hf */
    case 1288:  /* quad_halves_plusv16qi */
    case 1283:  /* quad_halves_plusv8hi */
    case 1275:  /* quad_halves_plusv4si */
      return CORTEX_A9_NEON_TYPE_NEON_INT_3;

    case 1467:  /* neon_vsubwuv2si */
    case 1466:  /* neon_vsubwsv2si */
    case 1465:  /* neon_vsubwuv4hi */
    case 1464:  /* neon_vsubwsv4hi */
    case 1463:  /* neon_vsubwuv8qi */
    case 1462:  /* neon_vsubwsv8qi */
    case 1342:  /* neon_vaddwuv2si */
    case 1341:  /* neon_vaddwsv2si */
    case 1340:  /* neon_vaddwuv4hi */
    case 1339:  /* neon_vaddwsv4hi */
    case 1338:  /* neon_vaddwuv8qi */
    case 1337:  /* neon_vaddwsv8qi */
    case 1274:  /* widen_usumv2si3 */
    case 1273:  /* widen_usumv4hi3 */
    case 1272:  /* widen_usumv8qi3 */
    case 1271:  /* vec_sel_widen_usum_hiv4siv2si3 */
    case 1270:  /* vec_sel_widen_usum_hiv4siv4hi3 */
    case 1269:  /* vec_sel_widen_usum_hiv4siv8qi3 */
    case 1268:  /* vec_sel_widen_usum_hiv8hiv2si3 */
    case 1267:  /* vec_sel_widen_usum_hiv8hiv4hi3 */
    case 1266:  /* vec_sel_widen_usum_hiv8hiv8qi3 */
    case 1265:  /* vec_sel_widen_usum_hiv16qiv2si3 */
    case 1264:  /* vec_sel_widen_usum_hiv16qiv4hi3 */
    case 1263:  /* vec_sel_widen_usum_hiv16qiv8qi3 */
    case 1262:  /* vec_sel_widen_usum_lov4siv2si3 */
    case 1261:  /* vec_sel_widen_usum_lov4siv4hi3 */
    case 1260:  /* vec_sel_widen_usum_lov4siv8qi3 */
    case 1259:  /* vec_sel_widen_usum_lov8hiv2si3 */
    case 1258:  /* vec_sel_widen_usum_lov8hiv4hi3 */
    case 1257:  /* vec_sel_widen_usum_lov8hiv8qi3 */
    case 1256:  /* vec_sel_widen_usum_lov16qiv2si3 */
    case 1255:  /* vec_sel_widen_usum_lov16qiv4hi3 */
    case 1254:  /* vec_sel_widen_usum_lov16qiv8qi3 */
    case 1253:  /* widen_ssumv2si3 */
    case 1252:  /* widen_ssumv4hi3 */
    case 1251:  /* widen_ssumv8qi3 */
    case 1250:  /* vec_sel_widen_ssum_hiv4siv2si3 */
    case 1249:  /* vec_sel_widen_ssum_hiv4siv4hi3 */
    case 1248:  /* vec_sel_widen_ssum_hiv4siv8qi3 */
    case 1247:  /* vec_sel_widen_ssum_hiv8hiv2si3 */
    case 1246:  /* vec_sel_widen_ssum_hiv8hiv4hi3 */
    case 1245:  /* vec_sel_widen_ssum_hiv8hiv8qi3 */
    case 1244:  /* vec_sel_widen_ssum_hiv16qiv2si3 */
    case 1243:  /* vec_sel_widen_ssum_hiv16qiv4hi3 */
    case 1242:  /* vec_sel_widen_ssum_hiv16qiv8qi3 */
    case 1241:  /* vec_sel_widen_ssum_lov4siv2si3 */
    case 1240:  /* vec_sel_widen_ssum_lov4siv4hi3 */
    case 1239:  /* vec_sel_widen_ssum_lov4siv8qi3 */
    case 1238:  /* vec_sel_widen_ssum_lov8hiv2si3 */
    case 1237:  /* vec_sel_widen_ssum_lov8hiv4hi3 */
    case 1236:  /* vec_sel_widen_ssum_lov8hiv8qi3 */
    case 1235:  /* vec_sel_widen_ssum_lov16qiv2si3 */
    case 1234:  /* vec_sel_widen_ssum_lov16qiv4hi3 */
    case 1233:  /* vec_sel_widen_ssum_lov16qiv8qi3 */
    case 997:  /* subv4hf3_fp16 */
    case 996:  /* subv8hf3_fp16 */
      return CORTEX_A9_NEON_TYPE_NEON_INT_2;

    case 2011:  /* neon_vbsldi_internal */
    case 2009:  /* neon_vbslv2sf_internal */
    case 2007:  /* neon_vbslv4hf_internal */
    case 2005:  /* neon_vbslv2si_internal */
    case 2003:  /* neon_vbslv4hi_internal */
    case 2001:  /* neon_vbslv8qi_internal */
    case 1773:  /* popcountv8qi2 */
    case 1771:  /* clzv2si2 */
    case 1769:  /* clzv4hi2 */
    case 1767:  /* clzv8qi2 */
    case 1765:  /* neon_vclsv2si */
    case 1763:  /* neon_vclsv4hi */
    case 1761:  /* neon_vclsv8qi */
    case 1293:  /* arm_reduc_plus_internal_v2di */
    case 1117:  /* xorv2di3 */
    case 1116:  /* xorv4sf3 */
    case 1115:  /* xorv2sf3 */
    case 1114:  /* xorv8hf3 */
    case 1113:  /* xorv4hf3 */
    case 1112:  /* xorv4si3 */
    case 1111:  /* xorv2si3 */
    case 1110:  /* xorv8hi3 */
    case 1109:  /* xorv4hi3 */
    case 1108:  /* xorv16qi3 */
    case 1107:  /* xorv8qi3 */
    case 1105:  /* bicv2di3_neon */
    case 1104:  /* bicv4sf3_neon */
    case 1103:  /* bicv2sf3_neon */
    case 1102:  /* bicv8hf3_neon */
    case 1101:  /* bicv4hf3_neon */
    case 1100:  /* bicv4si3_neon */
    case 1099:  /* bicv2si3_neon */
    case 1098:  /* bicv8hi3_neon */
    case 1097:  /* bicv4hi3_neon */
    case 1096:  /* bicv16qi3_neon */
    case 1095:  /* bicv8qi3_neon */
    case 1093:  /* ornv2di3_neon */
    case 1092:  /* ornv4sf3_neon */
    case 1091:  /* ornv2sf3_neon */
    case 1090:  /* ornv8hf3_neon */
    case 1089:  /* ornv4hf3_neon */
    case 1088:  /* ornv4si3_neon */
    case 1087:  /* ornv2si3_neon */
    case 1086:  /* ornv8hi3_neon */
    case 1085:  /* ornv4hi3_neon */
    case 1084:  /* ornv16qi3_neon */
    case 1083:  /* ornv8qi3_neon */
    case 1082:  /* andv2di3 */
    case 1081:  /* andv4sf3 */
    case 1080:  /* andv2sf3 */
    case 1079:  /* andv8hf3 */
    case 1078:  /* andv4hf3 */
    case 1077:  /* andv4si3 */
    case 1076:  /* andv2si3 */
    case 1075:  /* andv8hi3 */
    case 1074:  /* andv4hi3 */
    case 1073:  /* andv16qi3 */
    case 1072:  /* andv8qi3 */
    case 1071:  /* iorv2di3 */
    case 1070:  /* iorv4sf3 */
    case 1069:  /* iorv2sf3 */
    case 1068:  /* iorv8hf3 */
    case 1067:  /* iorv4hf3 */
    case 1066:  /* iorv4si3 */
    case 1065:  /* iorv2si3 */
    case 1064:  /* iorv8hi3 */
    case 1063:  /* iorv4hi3 */
    case 1062:  /* iorv16qi3 */
    case 1061:  /* iorv8qi3 */
      return CORTEX_A9_NEON_TYPE_NEON_INT_1;

    default:
      return CORTEX_A9_NEON_TYPE_UNKNOWN;

    }
}

enum attr_cortex_a8_neon_type
get_attr_cortex_a8_neon_type (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  enum attr_type cached_type ATTRIBUTE_UNUSED;

  switch (recog_memoized (insn))
    {
    case 2546:  /* neon_vabdv2di_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 2545:  /* neon_vabdv4sf_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 2544:  /* neon_vabdv2sf_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 2543:  /* neon_vabdv8hf_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 2542:  /* neon_vabdv4hf_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 2541:  /* neon_vabdv4si_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 2540:  /* neon_vabdv2si_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 2539:  /* neon_vabdv8hi_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 2538:  /* neon_vabdv4hi_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 2537:  /* neon_vabdv16qi_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 2536:  /* neon_vabdv8qi_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 2535:  /* neon_vabdv2di_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 2534:  /* neon_vabdv4sf_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 2533:  /* neon_vabdv2sf_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 2532:  /* neon_vabdv8hf_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 2531:  /* neon_vabdv4hf_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 2530:  /* neon_vabdv4si_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 2529:  /* neon_vabdv2si_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 2528:  /* neon_vabdv8hi_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 2527:  /* neon_vabdv4hi_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 2526:  /* neon_vabdv16qi_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 2525:  /* neon_vabdv8qi_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 2457:  /* neon_vst4di */
      if ((64) == (64))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST1_3_4_REGS;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST2_4_REGS_VST3_VST4;
        }

    case 2456:  /* neon_vst4v2sf */
    case 2455:  /* neon_vst4v2si */
      if ((32) == (64))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST1_3_4_REGS;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST2_4_REGS_VST3_VST4;
        }

    case 2454:  /* neon_vst4v4hf */
    case 2453:  /* neon_vst4v4hi */
      if ((16) == (64))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST1_3_4_REGS;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST2_4_REGS_VST3_VST4;
        }

    case 2452:  /* neon_vst4v8qi */
      if ((8) == (64))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST1_3_4_REGS;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST2_4_REGS_VST3_VST4;
        }

    case 2401:  /* neon_vst3di */
      if ((64) == (64))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST1_3_4_REGS;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST3_VST4_LANE;
        }

    case 2400:  /* neon_vst3v2sf */
    case 2399:  /* neon_vst3v2si */
      if ((32) == (64))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST1_3_4_REGS;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST3_VST4_LANE;
        }

    case 2398:  /* neon_vst3v4hf */
    case 2397:  /* neon_vst3v4hi */
      if ((16) == (64))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST1_3_4_REGS;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST3_VST4_LANE;
        }

    case 2396:  /* neon_vst3v8qi */
      if ((8) == (64))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST1_3_4_REGS;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST3_VST4_LANE;
        }

    case 2451:  /* neon_vld4_dupdi */
    case 2395:  /* neon_vld3_dupdi */
      if (! ((1) > (1)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD1_1_2_REGS;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD2_4_REGS;
        }

    case 2450:  /* neon_vld4_dupv2sf */
    case 2449:  /* neon_vld4_dupv2si */
    case 2394:  /* neon_vld3_dupv2sf */
    case 2393:  /* neon_vld3_dupv2si */
      if (! ((2) > (1)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD1_1_2_REGS;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD2_4_REGS;
        }

    case 2448:  /* neon_vld4_dupv4hf */
    case 2447:  /* neon_vld4_dupv4hi */
    case 2392:  /* neon_vld3_dupv4hf */
    case 2391:  /* neon_vld3_dupv4hi */
      if (! ((4) > (1)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD1_1_2_REGS;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD2_4_REGS;
        }

    case 2446:  /* neon_vld4_dupv8qi */
    case 2390:  /* neon_vld3_dupv8qi */
      if (! ((8) > (1)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD1_1_2_REGS;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD2_4_REGS;
        }

    case 2426:  /* neon_vld4di */
    case 2370:  /* neon_vld3di */
      if ((64) == (64))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD1_3_4_REGS;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD3_VLD4;
        }

    case 2425:  /* neon_vld4v2sf */
    case 2424:  /* neon_vld4v2si */
    case 2369:  /* neon_vld3v2sf */
    case 2368:  /* neon_vld3v2si */
      if ((32) == (64))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD1_3_4_REGS;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD3_VLD4;
        }

    case 2423:  /* neon_vld4v4hf */
    case 2422:  /* neon_vld4v4hi */
    case 2367:  /* neon_vld3v4hf */
    case 2366:  /* neon_vld3v4hi */
      if ((16) == (64))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD1_3_4_REGS;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD3_VLD4;
        }

    case 2421:  /* neon_vld4v8qi */
    case 2365:  /* neon_vld3v8qi */
      if ((8) == (64))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD1_3_4_REGS;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD3_VLD4;
        }

    case 2350:  /* neon_vst2di */
      if ((64) == (64))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST1_1_2_REGS_VST2_2_REGS;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST1_VST2_LANE;
        }

    case 2349:  /* neon_vst2v2sf */
    case 2348:  /* neon_vst2v2si */
      if ((32) == (64))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST1_1_2_REGS_VST2_2_REGS;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST1_VST2_LANE;
        }

    case 2347:  /* neon_vst2v4hf */
    case 2346:  /* neon_vst2v4hi */
      if ((16) == (64))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST1_1_2_REGS_VST2_2_REGS;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST1_VST2_LANE;
        }

    case 2345:  /* neon_vst2v8qi */
      if ((8) == (64))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST1_1_2_REGS_VST2_2_REGS;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST1_VST2_LANE;
        }

    case 2344:  /* neon_vld2_dupdi */
      if (! ((1) > (1)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD1_1_2_REGS;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD2_2_REGS_VLD1_VLD2_ALL_LANES;
        }

    case 2343:  /* neon_vld2_dupv2sf */
    case 2342:  /* neon_vld2_dupv2si */
      if (! ((2) > (1)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD1_1_2_REGS;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD2_2_REGS_VLD1_VLD2_ALL_LANES;
        }

    case 2341:  /* neon_vld2_dupv4hf */
    case 2340:  /* neon_vld2_dupv4hi */
      if (! ((4) > (1)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD1_1_2_REGS;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD2_2_REGS_VLD1_VLD2_ALL_LANES;
        }

    case 2339:  /* neon_vld2_dupv8qi */
      if (! ((8) > (1)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD1_1_2_REGS;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD2_2_REGS_VLD1_VLD2_ALL_LANES;
        }

    case 1965:  /* neon_vmls_lanev4sf */
    case 1953:  /* neon_vmla_lanev4sf */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MLA_QQQ_32_QQD_32_SCALAR;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VMLA_QQQ_SCALAR;
        }

    case 1964:  /* neon_vmls_lanev4si */
    case 1952:  /* neon_vmla_lanev4si */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MLA_QQQ_32_QQD_32_SCALAR;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VMLA_QQQ_SCALAR;
        }

    case 1963:  /* neon_vmls_lanev8hi */
    case 1951:  /* neon_vmla_lanev8hi */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MLA_DDD_32_QQD_16_DDD_32_SCALAR_QDD_64_32_LONG_SCALAR_QDD_64_32_LONG;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VMLA_QQQ_SCALAR;
        }

    case 1962:  /* neon_vmls_lanev2sf */
    case 1950:  /* neon_vmla_lanev2sf */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MLA_DDD_32_QQD_16_DDD_32_SCALAR_QDD_64_32_LONG_SCALAR_QDD_64_32_LONG;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VMLA_DDD_SCALAR;
        }

    case 1961:  /* neon_vmls_lanev2si */
    case 1949:  /* neon_vmla_lanev2si */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MLA_DDD_32_QQD_16_DDD_32_SCALAR_QDD_64_32_LONG_SCALAR_QDD_64_32_LONG;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VMLA_DDD_SCALAR;
        }

    case 1960:  /* neon_vmls_lanev4hi */
    case 1948:  /* neon_vmla_lanev4hi */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MLA_DDD_16_SCALAR_QDD_32_16_LONG_SCALAR;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VMLA_DDD_SCALAR;
        }

    case 1923:  /* neon_vmul_lanev4sf */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MUL_QQD_32_SCALAR;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VMUL_QQD;
        }

    case 1922:  /* neon_vmul_lanev4si */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MUL_QQD_32_SCALAR;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VMUL_QQD;
        }

    case 1921:  /* neon_vmul_lanev8hi */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MUL_QDD_64_32_LONG_QQD_16_DDD_32_SCALAR_64_32_LONG_SCALAR;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VMUL_QQD;
        }

    case 1920:  /* neon_vmul_lanev2sf */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MUL_QDD_64_32_LONG_QQD_16_DDD_32_SCALAR_64_32_LONG_SCALAR;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VMUL_DDD;
        }

    case 1919:  /* neon_vmul_lanev2si */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MUL_QDD_64_32_LONG_QQD_16_DDD_32_SCALAR_64_32_LONG_SCALAR;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VMUL_DDD;
        }

    case 1918:  /* neon_vmul_lanev4hi */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MUL_DDD_16_SCALAR_32_16_LONG_SCALAR;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VMUL_DDD;
        }

    case 1812:  /* neon_vdup_nv4sf */
    case 1811:  /* neon_vdup_nv4si */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_BP_SIMPLE;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MCR_2_MCRR;
        }

    case 1810:  /* neon_vdup_nv2sf */
    case 1809:  /* neon_vdup_nv2si */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_BP_SIMPLE;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MCR;
        }

    case 1556:  /* neon_vcltv8hf_fp16insn */
    case 1555:  /* neon_vclev8hf_fp16insn */
    case 1554:  /* neon_vcgev8hf_fp16insn */
    case 1553:  /* neon_vcgtv8hf_fp16insn */
    case 1552:  /* neon_vceqv8hf_fp16insn */
    case 1541:  /* neon_vcltv4sf_insn */
    case 1540:  /* neon_vclev4sf_insn */
    case 1539:  /* neon_vcgev4sf_insn */
    case 1538:  /* neon_vcgtv4sf_insn */
    case 1537:  /* neon_vceqv4sf_insn */
    case 1531:  /* neon_vcltv4si_insn */
    case 1530:  /* neon_vclev4si_insn */
    case 1529:  /* neon_vcgev4si_insn */
    case 1528:  /* neon_vcgtv4si_insn */
    case 1527:  /* neon_vceqv4si_insn */
    case 1521:  /* neon_vcltv8hi_insn */
    case 1520:  /* neon_vclev8hi_insn */
    case 1519:  /* neon_vcgev8hi_insn */
    case 1518:  /* neon_vcgtv8hi_insn */
    case 1517:  /* neon_vceqv8hi_insn */
    case 1511:  /* neon_vcltv16qi_insn */
    case 1510:  /* neon_vclev16qi_insn */
    case 1509:  /* neon_vcgev16qi_insn */
    case 1508:  /* neon_vcgtv16qi_insn */
    case 1507:  /* neon_vceqv16qi_insn */
      if ((cached_type = get_attr_type (insn)) == TYPE_NEON_COMPARE_ZERO_Q)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_4;
        }
      else if (cached_type == TYPE_NEON_COMPARE_Q)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_UNKNOWN;
        }

    case 1561:  /* neon_vcltv4hf_fp16insn */
    case 1560:  /* neon_vclev4hf_fp16insn */
    case 1559:  /* neon_vcgev4hf_fp16insn */
    case 1558:  /* neon_vcgtv4hf_fp16insn */
    case 1557:  /* neon_vceqv4hf_fp16insn */
    case 1536:  /* neon_vcltv2sf_insn */
    case 1535:  /* neon_vclev2sf_insn */
    case 1534:  /* neon_vcgev2sf_insn */
    case 1533:  /* neon_vcgtv2sf_insn */
    case 1532:  /* neon_vceqv2sf_insn */
    case 1526:  /* neon_vcltv2si_insn */
    case 1525:  /* neon_vclev2si_insn */
    case 1524:  /* neon_vcgev2si_insn */
    case 1523:  /* neon_vcgtv2si_insn */
    case 1522:  /* neon_vceqv2si_insn */
    case 1516:  /* neon_vcltv4hi_insn */
    case 1515:  /* neon_vclev4hi_insn */
    case 1514:  /* neon_vcgev4hi_insn */
    case 1513:  /* neon_vcgtv4hi_insn */
    case 1512:  /* neon_vceqv4hi_insn */
    case 1506:  /* neon_vcltv8qi_insn */
    case 1505:  /* neon_vclev8qi_insn */
    case 1504:  /* neon_vcgev8qi_insn */
    case 1503:  /* neon_vcgtv8qi_insn */
    case 1502:  /* neon_vceqv8qi_insn */
      if ((cached_type = get_attr_type (insn)) == TYPE_NEON_COMPARE_ZERO)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_4;
        }
      else if (cached_type == TYPE_NEON_COMPARE)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_UNKNOWN;
        }

    case 1306:  /* neon_vpsmaxv2sf */
    case 1302:  /* neon_vpsminv2sf */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VSUM;
        }

    case 1305:  /* neon_vpsmaxv2si */
    case 1304:  /* neon_vpsmaxv4hi */
    case 1303:  /* neon_vpsmaxv8qi */
    case 1301:  /* neon_vpsminv2si */
    case 1300:  /* neon_vpsminv4hi */
    case 1299:  /* neon_vpsminv8qi */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VSUM;
        }

    case 1297:  /* neon_vpadd_internalv2sf */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_3;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VSUM;
        }

    case 1296:  /* neon_vpadd_internalv2si */
    case 1295:  /* neon_vpadd_internalv4hi */
    case 1294:  /* neon_vpadd_internalv8qi */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_3;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VSUM;
        }

    case 1224:  /* neon_load_count */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD1_1_2_REGS;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MCR;
        }

    case 1197:  /* vashlv4si3 */
    case 1195:  /* vashlv8hi3 */
    case 1193:  /* vashlv16qi3 */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_SHIFT_1;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_SHIFT_3;
        }

    case 1191:  /* *smaxv4sf3_neon */
    case 1183:  /* *sminv4sf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 1190:  /* *smaxv2sf3_neon */
    case 1182:  /* *sminv2sf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 1189:  /* *smaxv4si3_neon */
    case 1187:  /* *smaxv8hi3_neon */
    case 1185:  /* *smaxv16qi3_neon */
    case 1181:  /* *sminv4si3_neon */
    case 1179:  /* *sminv8hi3_neon */
    case 1177:  /* *sminv16qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 1188:  /* *smaxv2si3_neon */
    case 1186:  /* *smaxv4hi3_neon */
    case 1184:  /* *smaxv8qi3_neon */
    case 1180:  /* *sminv2si3_neon */
    case 1178:  /* *sminv4hi3_neon */
    case 1176:  /* *sminv8qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 1144:  /* negv4sf2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_3;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 1143:  /* negv2sf2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_3;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 1142:  /* negv4si2 */
    case 1140:  /* negv8hi2 */
    case 1138:  /* negv16qi2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_3;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 1141:  /* negv2si2 */
    case 1139:  /* negv4hi2 */
    case 1137:  /* negv8qi2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_3;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 1136:  /* absv4sf2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_4;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 1135:  /* absv2sf2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_4;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 1134:  /* absv4si2 */
    case 1132:  /* absv8hi2 */
    case 1130:  /* absv16qi2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_4;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 1133:  /* absv2si2 */
    case 1131:  /* absv4hi2 */
    case 1129:  /* absv8qi2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_4;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 1106:  /* bicdi3_neon */
    case 1094:  /* orndi3_neon */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_1;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_UNKNOWN;
        }

    case 1416:  /* neon_vmlsv4sf_unspec */
    case 1402:  /* neon_vmlav4sf_unspec */
    case 1024:  /* mulv4sf3negv4sfaddv4sf_neon */
    case 1014:  /* mulv4sf3addv4sf_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MLA_QQQ_32_QQD_32_SCALAR;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VMLA_QQQ;
        }

    case 1415:  /* neon_vmlsv2sf_unspec */
    case 1401:  /* neon_vmlav2sf_unspec */
    case 1023:  /* mulv2sf3negv2sfaddv2sf_neon */
    case 1013:  /* mulv2sf3addv2sf_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MLA_DDD_32_QQD_16_DDD_32_SCALAR_QDD_64_32_LONG_SCALAR_QDD_64_32_LONG;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VMLA_DDD;
        }

    case 1414:  /* neon_vmlsv4si_unspec */
    case 1400:  /* neon_vmlav4si_unspec */
    case 1022:  /* mulv4si3negv4siaddv4si_neon */
    case 1012:  /* mulv4si3addv4si_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MLA_QQQ_32_QQD_32_SCALAR;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VMLA_QQQ;
        }

    case 1413:  /* neon_vmlsv2si_unspec */
    case 1399:  /* neon_vmlav2si_unspec */
    case 1021:  /* mulv2si3negv2siaddv2si_neon */
    case 1011:  /* mulv2si3addv2si_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MLA_DDD_32_QQD_16_DDD_32_SCALAR_QDD_64_32_LONG_SCALAR_QDD_64_32_LONG;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VMLA_DDD;
        }

    case 1412:  /* neon_vmlsv8hi_unspec */
    case 1410:  /* neon_vmlsv16qi_unspec */
    case 1398:  /* neon_vmlav8hi_unspec */
    case 1396:  /* neon_vmlav16qi_unspec */
    case 1020:  /* mulv8hi3negv8hiaddv8hi_neon */
    case 1018:  /* mulv16qi3negv16qiaddv16qi_neon */
    case 1010:  /* mulv8hi3addv8hi_neon */
    case 1008:  /* mulv16qi3addv16qi_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MLA_QQQ_8_16;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VMLA_QQQ;
        }

    case 1411:  /* neon_vmlsv4hi_unspec */
    case 1409:  /* neon_vmlsv8qi_unspec */
    case 1397:  /* neon_vmlav4hi_unspec */
    case 1395:  /* neon_vmlav8qi_unspec */
    case 1019:  /* mulv4hi3negv4hiaddv4hi_neon */
    case 1017:  /* mulv8qi3negv8qiaddv8qi_neon */
    case 1009:  /* mulv4hi3addv4hi_neon */
    case 1007:  /* mulv8qi3addv8qi_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MLA_DDD_8_16_QDD_16_8_LONG_32_16_LONG;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VMLA_DDD;
        }

    case 1392:  /* neon_vmulfv4sf */
    case 1006:  /* *mulv4sf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MUL_QQD_32_SCALAR;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 1391:  /* neon_vmulfv2sf */
    case 1005:  /* *mulv2sf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MUL_QDD_64_32_LONG_QQD_16_DDD_32_SCALAR_64_32_LONG_SCALAR;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 1004:  /* *mulv4si3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MUL_QQD_32_SCALAR;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 1003:  /* *mulv2si3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MUL_QDD_64_32_LONG_QQD_16_DDD_32_SCALAR_64_32_LONG_SCALAR;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 1390:  /* neon_vmulpv16qi */
    case 1002:  /* *mulv8hi3_neon */
    case 1000:  /* *mulv16qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MUL_QQQ_8_16_32_DDD_32;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 1389:  /* neon_vmulpv8qi */
    case 1001:  /* *mulv4hi3_neon */
    case 999:  /* *mulv8qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MUL_DDD_8_16_QDD_16_8_LONG_32_16_LONG;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 998:  /* subdi3_neon */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0xe))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_2;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_UNKNOWN;
        }

    case 1455:  /* neon_vsubv4sf_unspec */
    case 994:  /* *subv4sf3_neon */
    case 992:  /* *subv8hf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_2;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 1454:  /* neon_vsubv2sf_unspec */
    case 993:  /* *subv2sf3_neon */
    case 991:  /* *subv4hf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_2;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 995:  /* *subv2di3_neon */
    case 990:  /* *subv4si3_neon */
    case 988:  /* *subv8hi3_neon */
    case 986:  /* *subv16qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_2;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 989:  /* *subv2si3_neon */
    case 987:  /* *subv4hi3_neon */
    case 985:  /* *subv8qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_2;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 984:  /* adddi3_neon */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x9))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_1;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_UNKNOWN;
        }

    case 1330:  /* neon_vaddv4sf_unspec */
    case 982:  /* addv8hf3_fp16 */
    case 980:  /* *addv4sf3_neon */
    case 978:  /* *addv8hf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_1;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 1329:  /* neon_vaddv2sf_unspec */
    case 983:  /* addv4hf3_fp16 */
    case 979:  /* *addv2sf3_neon */
    case 977:  /* *addv4hf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_1;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 981:  /* *addv2di3_neon */
    case 976:  /* *addv4si3_neon */
    case 974:  /* *addv8hi3_neon */
    case 972:  /* *addv16qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_1;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }

    case 975:  /* *addv2si3_neon */
    case 973:  /* *addv4hi3_neon */
    case 971:  /* *addv8qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_1;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }

    case 970:  /* vec_extractv2di */
    case 969:  /* vec_extractv4sf */
    case 968:  /* vec_extractv4si */
    case 967:  /* vec_extractv8hf */
    case 966:  /* vec_extractv8hi */
    case 965:  /* vec_extractv16qi */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST1_VST2_LANE;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MRRC;
        }

    case 964:  /* vec_extractv2sf */
    case 963:  /* vec_extractv2si */
    case 962:  /* vec_extractv4hf */
    case 961:  /* vec_extractv4hi */
    case 960:  /* vec_extractv8qi */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST1_VST2_LANE;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MRC;
        }

    case 959:  /* vec_setv2di_internal */
    case 958:  /* vec_setv4sf_internal */
    case 957:  /* vec_setv4si_internal */
    case 956:  /* vec_setv8hf_internal */
    case 955:  /* vec_setv8hi_internal */
    case 954:  /* vec_setv16qi_internal */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD2_2_REGS_VLD1_VLD2_ALL_LANES;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MCR_2_MCRR;
        }

    case 953:  /* vec_setv2sf_internal */
    case 952:  /* vec_setv2si_internal */
    case 951:  /* vec_setv4hf_internal */
    case 950:  /* vec_setv4hi_internal */
    case 949:  /* vec_setv8qi_internal */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD2_2_REGS_VLD1_VLD2_ALL_LANES;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MCR;
        }

    case 924:  /* *neon_movxi */
    case 923:  /* *neon_movci */
    case 922:  /* *neon_movoi */
    case 921:  /* *neon_movei */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VMOV;
        }
      else if (!((1 << which_alternative) & 0x3))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD1_1_2_REGS;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST1_1_2_REGS_VST2_2_REGS;
        }

    case 920:  /* *neon_movti */
    case 919:  /* *neon_movv2di */
    case 918:  /* *neon_movv4sf */
    case 917:  /* *neon_movv4si */
    case 916:  /* *neon_movv8hf */
    case 915:  /* *neon_movv8hi */
    case 914:  /* *neon_movv16qi */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x5))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VMOV;
        }
      else if (which_alternative == 3)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD1_1_2_REGS;
        }
      else if (which_alternative == 7)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD1_3_4_REGS;
        }
      else if (which_alternative == 1)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST1_1_2_REGS_VST2_2_REGS;
        }
      else if (!((1 << which_alternative) & 0xff))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST1_3_4_REGS;
        }
      else if (which_alternative == 5)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MCR_2_MCRR;
        }
      else if (which_alternative == 4)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MRRC;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_UNKNOWN;
        }

    case 913:  /* *neon_movdi */
    case 912:  /* *neon_movv2sf */
    case 911:  /* *neon_movv2si */
    case 910:  /* *neon_movv4hf */
    case 909:  /* *neon_movv4hi */
    case 908:  /* *neon_movv8qi */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x5))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VMOV;
        }
      else if (((1 << which_alternative) & 0x88))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD1_1_2_REGS;
        }
      else if (!((1 << which_alternative) & 0xfd))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST1_1_2_REGS_VST2_2_REGS;
        }
      else if (which_alternative == 5)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MCR;
        }
      else if (which_alternative == 4)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MRC;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_UNKNOWN;
        }

    case 644:  /* *thumb2_movdfcc_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x18))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MCR;
        }
      else if (which_alternative == 5)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MCR_2_MCRR;
        }
      else if (!((1 << which_alternative) & 0x3f))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MRRC;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_UNKNOWN;
        }

    case 643:  /* *movdfcc_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x38))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MCR;
        }
      else if (!((1 << which_alternative) & 0x3f))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MRRC;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_UNKNOWN;
        }

    case 642:  /* *thumb2_movsfcc_vfp */
    case 641:  /* *movsfcc_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x38))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MCR;
        }
      else if (!((1 << which_alternative) & 0x3f))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MRC;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_UNKNOWN;
        }

    case 4014:  /* *p *movdf_vfp */
    case 640:  /* *thumb2_movdf_vfp */
    case 639:  /* *movdf_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 3)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VMOV;
        }
      else if (((1 << which_alternative) & 0x30))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD1_VLD2_LANE;
        }
      else if (which_alternative == 0)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MCR_2_MCRR;
        }
      else if (which_alternative == 1)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MRRC;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_UNKNOWN;
        }

    case 4013:  /* *p *thumb2_movsf_vfp */
    case 4012:  /* *p *movsf_vfp */
    case 638:  /* *thumb2_movsf_vfp */
    case 637:  /* *movsf_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x18))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD1_VLD2_LANE;
        }
      else if (which_alternative == 0)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MCR;
        }
      else if (which_alternative == 1)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MRC;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_UNKNOWN;
        }

    case 636:  /* *movhf_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 4)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MCR;
        }
      else if (which_alternative == 5)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MRC;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_UNKNOWN;
        }

    case 635:  /* *movhf_vfp_neon */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD1_1_2_REGS;
        }
      else if (which_alternative == 1)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST1_1_2_REGS_VST2_2_REGS;
        }
      else if (which_alternative == 6)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MCR;
        }
      else if (which_alternative == 7)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MRC;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_UNKNOWN;
        }

    case 4011:  /* *p *movhf_vfp_fp16 */
    case 634:  /* *movhf_vfp_fp16 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 7)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD1_1_2_REGS;
        }
      else if (which_alternative == 8)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST1_1_2_REGS_VST2_2_REGS;
        }
      else if (which_alternative == 4)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MCR;
        }
      else if (which_alternative == 5)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MRC;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_UNKNOWN;
        }

    case 4010:  /* *p *movdi_vfp_cortexa8 */
    case 633:  /* *movdi_vfp_cortexa8 */
    case 632:  /* *movdi_vfp */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0x3ff))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD1_VLD2_LANE;
        }
      else if (which_alternative == 7)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MCR_2_MCRR;
        }
      else if (which_alternative == 8)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MRRC;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_UNKNOWN;
        }

    case 4009:  /* *p *thumb2_movsi_vfp */
    case 631:  /* *thumb2_movsi_vfp */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0xfff))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD1_VLD2_LANE;
        }
      else if (which_alternative == 9)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MCR;
        }
      else if (which_alternative == 10)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MRC;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_UNKNOWN;
        }

    case 4008:  /* *p *arm_movsi_vfp */
    case 630:  /* *arm_movsi_vfp */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0x1ff))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD1_VLD2_LANE;
        }
      else if (which_alternative == 6)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MCR;
        }
      else if (which_alternative == 7)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MRC;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_UNKNOWN;
        }

    case 4007:  /* *p *thumb2_movhi_fp16 */
    case 4005:  /* *p *thumb2_movhi_vfp */
    case 629:  /* *thumb2_movhi_fp16 */
    case 627:  /* *thumb2_movhi_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 6)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MCR;
        }
      else if (which_alternative == 7)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MRC;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_UNKNOWN;
        }

    case 4006:  /* *p *arm_movhi_fp16 */
    case 4004:  /* *p *arm_movhi_vfp */
    case 628:  /* *arm_movhi_fp16 */
    case 626:  /* *arm_movhi_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 5)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MCR;
        }
      else if (which_alternative == 6)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MRC;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_UNKNOWN;
        }

    case 411:  /* *iwmmxt_movsi_insn */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0x1fff))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD1_VLD2_LANE;
        }
      else if (which_alternative == 10)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MCR;
        }
      else if (which_alternative == 11)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MRC;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_UNKNOWN;
        }

    case 410:  /* *iwmmxt_arm_movdi */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0x1fff))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD1_VLD2_LANE;
        }
      else if (which_alternative == 10)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MCR_2_MCRR;
        }
      else if (which_alternative == 11)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MRRC;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_UNKNOWN;
        }

    case 3670:  /* *p one_cmpldi2 */
    case 156:  /* one_cmpldi2 */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0x6))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VMOV;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_UNKNOWN;
        }

    case 108:  /* *xordi3_insn */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0x1e))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_1;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_UNKNOWN;
        }

    case 102:  /* *iordi3_insn */
    case 79:  /* *anddi3_insn */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0x3c))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_1;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_UNKNOWN;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
      if (((cached_type = get_attr_type (insn)) == TYPE_NEON_LOGIC) || ((cached_type == TYPE_NEON_LOGIC_Q) || ((cached_type == TYPE_NEON_BSL) || ((cached_type == TYPE_NEON_CLS) || ((cached_type == TYPE_NEON_CNT) || ((cached_type == TYPE_NEON_ADD) || (cached_type == TYPE_NEON_ADD_Q)))))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_1;
        }
      else if ((cached_type == TYPE_NEON_ADD_WIDEN) || ((cached_type == TYPE_NEON_SUB_WIDEN) || ((cached_type == TYPE_NEON_SUB) || (cached_type == TYPE_NEON_SUB_Q))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_2;
        }
      else if ((cached_type == TYPE_NEON_NEG) || ((cached_type == TYPE_NEON_NEG_Q) || ((cached_type == TYPE_NEON_REDUC_ADD) || ((cached_type == TYPE_NEON_REDUC_ADD_Q) || ((cached_type == TYPE_NEON_REDUC_ADD_LONG) || ((cached_type == TYPE_NEON_ADD_LONG) || (cached_type == TYPE_NEON_SUB_LONG)))))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_3;
        }
      else if ((cached_type == TYPE_NEON_ABS) || ((cached_type == TYPE_NEON_ABS_Q) || ((cached_type == TYPE_NEON_COMPARE_ZERO) || ((cached_type == TYPE_NEON_COMPARE_ZERO_Q) || ((cached_type == TYPE_NEON_ADD_HALVE_NARROW_Q) || ((cached_type == TYPE_NEON_SUB_HALVE_NARROW_Q) || ((cached_type == TYPE_NEON_ADD_HALVE) || ((cached_type == TYPE_NEON_ADD_HALVE_Q) || ((cached_type == TYPE_NEON_QADD) || ((cached_type == TYPE_NEON_QADD_Q) || ((cached_type == TYPE_NEON_TST) || (cached_type == TYPE_NEON_TST_Q))))))))))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_4;
        }
      else if ((cached_type == TYPE_NEON_ABD_LONG) || ((cached_type == TYPE_NEON_SUB_HALVE) || ((cached_type == TYPE_NEON_SUB_HALVE_Q) || ((cached_type == TYPE_NEON_QSUB) || ((cached_type == TYPE_NEON_QSUB_Q) || ((cached_type == TYPE_NEON_ABD) || ((cached_type == TYPE_NEON_ABD_Q) || ((cached_type == TYPE_NEON_COMPARE) || ((cached_type == TYPE_NEON_COMPARE_Q) || ((cached_type == TYPE_NEON_MINMAX) || ((cached_type == TYPE_NEON_MINMAX_Q) || ((cached_type == TYPE_NEON_REDUC_MINMAX) || (cached_type == TYPE_NEON_REDUC_MINMAX_Q)))))))))))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_INT_5;
        }
      else if ((cached_type == TYPE_NEON_QNEG) || ((cached_type == TYPE_NEON_QNEG_Q) || ((cached_type == TYPE_NEON_QABS) || (cached_type == TYPE_NEON_QABS_Q))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VQNEG_VQABS;
        }
      else if ((cached_type == TYPE_NEON_MOVE) || (cached_type == TYPE_NEON_MOVE_Q))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VMOV;
        }
      else if ((cached_type == TYPE_NEON_BSL_Q) || ((cached_type == TYPE_NEON_CLS_Q) || (cached_type == TYPE_NEON_CNT_Q)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_BIT_OPS_Q;
        }
      else if ((cached_type == TYPE_NEON_ARITH_ACC) || (cached_type == TYPE_NEON_REDUC_ADD_ACC))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VABA;
        }
      else if (cached_type == TYPE_NEON_ARITH_ACC_Q)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VABA_QQQ;
        }
      else if ((cached_type == TYPE_NEON_SHIFT_IMM) || ((cached_type == TYPE_NEON_SHIFT_IMM_Q) || ((cached_type == TYPE_NEON_SHIFT_IMM_LONG) || ((cached_type == TYPE_NEON_SHIFT_IMM_NARROW_Q) || (cached_type == TYPE_NEON_SHIFT_REG)))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_SHIFT_1;
        }
      else if ((cached_type == TYPE_NEON_SAT_SHIFT_IMM) || ((cached_type == TYPE_NEON_SAT_SHIFT_IMM_Q) || ((cached_type == TYPE_NEON_SAT_SHIFT_IMM_NARROW_Q) || (cached_type == TYPE_NEON_SAT_SHIFT_REG))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_SHIFT_2;
        }
      else if (cached_type == TYPE_NEON_SHIFT_REG_Q)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_SHIFT_3;
        }
      else if (cached_type == TYPE_NEON_SAT_SHIFT_REG_Q)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VQSHL_VRSHL_VQRSHL_QQQ;
        }
      else if ((cached_type == TYPE_NEON_SHIFT_ACC) || (cached_type == TYPE_NEON_SHIFT_ACC_Q))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VSRA_VRSRA;
        }
      else if ((cached_type == TYPE_NEON_MUL_B) || ((cached_type == TYPE_NEON_MUL_H) || ((cached_type == TYPE_NEON_MUL_B_LONG) || ((cached_type == TYPE_NEON_MUL_H_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_B) || ((cached_type == TYPE_NEON_SAT_MUL_H) || ((cached_type == TYPE_NEON_SAT_MUL_B_LONG) || (cached_type == TYPE_NEON_SAT_MUL_H_LONG))))))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MUL_DDD_8_16_QDD_16_8_LONG_32_16_LONG;
        }
      else if ((cached_type == TYPE_NEON_MUL_B_Q) || ((cached_type == TYPE_NEON_MUL_H_Q) || ((cached_type == TYPE_NEON_SAT_MUL_B_Q) || (cached_type == TYPE_NEON_SAT_MUL_H_Q))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MUL_QQQ_8_16_32_DDD_32;
        }
      else if ((cached_type == TYPE_NEON_MUL_S) || ((cached_type == TYPE_NEON_MUL_S_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_S) || ((cached_type == TYPE_NEON_SAT_MUL_S_LONG) || ((cached_type == TYPE_NEON_MUL_H_SCALAR_Q) || ((cached_type == TYPE_NEON_SAT_MUL_H_SCALAR_Q) || ((cached_type == TYPE_NEON_MUL_S_SCALAR) || ((cached_type == TYPE_NEON_SAT_MUL_S_SCALAR) || ((cached_type == TYPE_NEON_MUL_S_SCALAR_LONG) || (cached_type == TYPE_NEON_SAT_MUL_S_SCALAR_LONG))))))))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MUL_QDD_64_32_LONG_QQD_16_DDD_32_SCALAR_64_32_LONG_SCALAR;
        }
      else if ((cached_type == TYPE_NEON_MLA_B) || ((cached_type == TYPE_NEON_MLA_H) || ((cached_type == TYPE_NEON_MLA_B_LONG) || ((cached_type == TYPE_NEON_MLA_H_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_B_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_H_LONG) || (cached_type == TYPE_NEON_SAT_MLA_H_SCALAR_LONG)))))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MLA_DDD_8_16_QDD_16_8_LONG_32_16_LONG;
        }
      else if ((cached_type == TYPE_NEON_MLA_B_Q) || (cached_type == TYPE_NEON_MLA_H_Q))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MLA_QQQ_8_16;
        }
      else if ((cached_type == TYPE_NEON_MLA_S) || ((cached_type == TYPE_NEON_MLA_S_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_S_LONG) || ((cached_type == TYPE_NEON_MLA_H_SCALAR_Q) || ((cached_type == TYPE_NEON_MLA_S_SCALAR) || ((cached_type == TYPE_NEON_MLA_S_SCALAR_LONG) || (cached_type == TYPE_NEON_SAT_MLA_S_SCALAR_LONG)))))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MLA_DDD_32_QQD_16_DDD_32_SCALAR_QDD_64_32_LONG_SCALAR_QDD_64_32_LONG;
        }
      else if ((cached_type == TYPE_NEON_MLA_S_Q) || (cached_type == TYPE_NEON_MLA_S_SCALAR_Q))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MLA_QQQ_32_QQD_32_SCALAR;
        }
      else if ((cached_type == TYPE_NEON_MUL_H_SCALAR) || ((cached_type == TYPE_NEON_SAT_MUL_H_SCALAR) || ((cached_type == TYPE_NEON_MUL_H_SCALAR_LONG) || (cached_type == TYPE_NEON_SAT_MUL_H_SCALAR_LONG))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MUL_DDD_16_SCALAR_32_16_LONG_SCALAR;
        }
      else if ((cached_type == TYPE_NEON_MUL_S_Q) || ((cached_type == TYPE_NEON_SAT_MUL_S_Q) || (cached_type == TYPE_NEON_MUL_S_SCALAR_Q)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MUL_QQD_32_SCALAR;
        }
      else if ((cached_type == TYPE_NEON_MLA_H_SCALAR) || (cached_type == TYPE_NEON_MLA_H_SCALAR_LONG))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MLA_DDD_16_SCALAR_QDD_32_16_LONG_SCALAR;
        }
      else if ((cached_type == TYPE_NEON_FP_ABD_S) || ((cached_type == TYPE_NEON_FP_ABS_S) || ((cached_type == TYPE_NEON_FP_NEG_S) || ((cached_type == TYPE_NEON_FP_ADDSUB_S) || ((cached_type == TYPE_NEON_FP_COMPARE_S) || ((cached_type == TYPE_NEON_FP_MINMAX_S) || ((cached_type == TYPE_NEON_FP_MUL_S) || ((cached_type == TYPE_NEON_FP_RECPE_S) || ((cached_type == TYPE_NEON_FP_RSQRTE_S) || ((cached_type == TYPE_NEON_FP_TO_INT_S) || (cached_type == TYPE_NEON_INT_TO_FP_S)))))))))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;
        }
      else if ((cached_type == TYPE_NEON_FP_ABD_S_Q) || ((cached_type == TYPE_NEON_FP_ABS_S_Q) || ((cached_type == TYPE_NEON_FP_NEG_S_Q) || ((cached_type == TYPE_NEON_FP_ADDSUB_S_Q) || ((cached_type == TYPE_NEON_FP_COMPARE_S_Q) || ((cached_type == TYPE_NEON_FP_MINMAX_S_Q) || ((cached_type == TYPE_NEON_FP_MUL_S_Q) || ((cached_type == TYPE_NEON_FP_RECPE_S_Q) || ((cached_type == TYPE_NEON_FP_RSQRTE_S_Q) || ((cached_type == TYPE_NEON_FP_TO_INT_S_Q) || (cached_type == TYPE_NEON_INT_TO_FP_S_Q)))))))))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;
        }
      else if ((cached_type == TYPE_NEON_FP_REDUC_ADD_S) || ((cached_type == TYPE_NEON_FP_REDUC_MINMAX_S) || ((cached_type == TYPE_NEON_FP_REDUC_ADD_S_Q) || (cached_type == TYPE_NEON_FP_REDUC_MINMAX_S_Q))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VSUM;
        }
      else if (cached_type == TYPE_NEON_FP_MUL_S_SCALAR)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VMUL_DDD;
        }
      else if (cached_type == TYPE_NEON_FP_MUL_S_SCALAR_Q)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VMUL_QQD;
        }
      else if (cached_type == TYPE_NEON_FP_MLA_S)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VMLA_DDD;
        }
      else if (cached_type == TYPE_NEON_FP_MLA_S_Q)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VMLA_QQQ;
        }
      else if (cached_type == TYPE_NEON_FP_MLA_S_SCALAR)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VMLA_DDD_SCALAR;
        }
      else if (cached_type == TYPE_NEON_FP_MLA_S_SCALAR_Q)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VMLA_QQQ_SCALAR;
        }
      else if ((cached_type == TYPE_NEON_FP_RECPS_S) || (cached_type == TYPE_NEON_FP_RSQRTS_S))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VRECPS_VRSQRTS_DDD;
        }
      else if ((cached_type == TYPE_NEON_FP_RECPS_S_Q) || (cached_type == TYPE_NEON_FP_RSQRTS_S_Q))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_FP_VRECPS_VRSQRTS_QQQ;
        }
      else if ((cached_type == TYPE_NEON_MOVE_NARROW_Q) || ((cached_type == TYPE_NEON_DUP) || ((cached_type == TYPE_NEON_DUP_Q) || ((cached_type == TYPE_NEON_PERMUTE) || ((cached_type == TYPE_NEON_ZIP) || ((cached_type == TYPE_NEON_EXT) || ((cached_type == TYPE_NEON_REV) || (cached_type == TYPE_NEON_REV_Q))))))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_BP_SIMPLE;
        }
      else if ((cached_type == TYPE_NEON_PERMUTE_Q) || ((cached_type == TYPE_NEON_EXT_Q) || ((cached_type == TYPE_NEON_TBL1) || (cached_type == TYPE_NEON_TBL2))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_BP_2CYCLE;
        }
      else if ((cached_type == TYPE_NEON_ZIP_Q) || ((cached_type == TYPE_NEON_TBL3) || (cached_type == TYPE_NEON_TBL4)))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_BP_3CYCLE;
        }
      else if (cached_type == TYPE_NEON_LDR)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_LDR;
        }
      else if (cached_type == TYPE_NEON_STR)
        {
	  return CORTEX_A8_NEON_TYPE_NEON_STR;
        }
      else if ((cached_type == TYPE_NEON_LOAD1_1REG) || ((cached_type == TYPE_NEON_LOAD1_1REG_Q) || ((cached_type == TYPE_NEON_LOAD1_2REG) || ((cached_type == TYPE_NEON_LOAD1_2REG_Q) || ((cached_type == TYPE_NEON_LOAD2_2REG) || (cached_type == TYPE_NEON_LOAD2_2REG_Q))))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD1_1_2_REGS;
        }
      else if ((cached_type == TYPE_NEON_LOAD1_3REG) || ((cached_type == TYPE_NEON_LOAD1_3REG_Q) || ((cached_type == TYPE_NEON_LOAD1_4REG) || (cached_type == TYPE_NEON_LOAD1_4REG_Q))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD1_3_4_REGS;
        }
      else if ((cached_type == TYPE_NEON_LOAD1_ALL_LANES) || ((cached_type == TYPE_NEON_LOAD1_ALL_LANES_Q) || ((cached_type == TYPE_NEON_LOAD2_ALL_LANES) || (cached_type == TYPE_NEON_LOAD2_ALL_LANES_Q))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD2_2_REGS_VLD1_VLD2_ALL_LANES;
        }
      else if ((cached_type == TYPE_NEON_LOAD3_ALL_LANES) || ((cached_type == TYPE_NEON_LOAD3_ALL_LANES_Q) || ((cached_type == TYPE_NEON_LOAD4_ALL_LANES) || ((cached_type == TYPE_NEON_LOAD4_ALL_LANES_Q) || ((cached_type == TYPE_NEON_LOAD2_4REG) || (cached_type == TYPE_NEON_LOAD2_4REG_Q))))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD2_4_REGS;
        }
      else if ((cached_type == TYPE_NEON_LOAD3_3REG) || ((cached_type == TYPE_NEON_LOAD3_3REG_Q) || ((cached_type == TYPE_NEON_LOAD4_4REG) || (cached_type == TYPE_NEON_LOAD4_4REG_Q))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD3_VLD4;
        }
      else if ((cached_type == TYPE_F_LOADS) || ((cached_type == TYPE_F_LOADD) || ((cached_type == TYPE_F_STORES) || ((cached_type == TYPE_F_STORED) || ((cached_type == TYPE_NEON_LOAD1_ONE_LANE) || ((cached_type == TYPE_NEON_LOAD1_ONE_LANE_Q) || ((cached_type == TYPE_NEON_LOAD2_ONE_LANE) || (cached_type == TYPE_NEON_LOAD2_ONE_LANE_Q))))))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD1_VLD2_LANE;
        }
      else if ((cached_type == TYPE_NEON_LOAD3_ONE_LANE) || ((cached_type == TYPE_NEON_LOAD3_ONE_LANE_Q) || ((cached_type == TYPE_NEON_LOAD4_ONE_LANE) || (cached_type == TYPE_NEON_LOAD4_ONE_LANE_Q))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VLD3_VLD4_LANE;
        }
      else if ((cached_type == TYPE_NEON_STORE1_1REG) || ((cached_type == TYPE_NEON_STORE1_1REG_Q) || ((cached_type == TYPE_NEON_STORE1_2REG) || ((cached_type == TYPE_NEON_STORE1_2REG_Q) || ((cached_type == TYPE_NEON_STORE2_2REG) || (cached_type == TYPE_NEON_STORE2_2REG_Q))))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST1_1_2_REGS_VST2_2_REGS;
        }
      else if ((cached_type == TYPE_NEON_STORE1_3REG) || ((cached_type == TYPE_NEON_STORE1_3REG_Q) || ((cached_type == TYPE_NEON_STORE1_4REG) || (cached_type == TYPE_NEON_STORE1_4REG_Q))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST1_3_4_REGS;
        }
      else if ((cached_type == TYPE_NEON_STORE2_4REG) || ((cached_type == TYPE_NEON_STORE2_4REG_Q) || ((cached_type == TYPE_NEON_STORE3_3REG) || ((cached_type == TYPE_NEON_STORE3_3REG_Q) || ((cached_type == TYPE_NEON_STORE4_4REG) || (cached_type == TYPE_NEON_STORE4_4REG_Q))))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST2_4_REGS_VST3_VST4;
        }
      else if ((cached_type == TYPE_NEON_STORE1_ONE_LANE) || ((cached_type == TYPE_NEON_STORE1_ONE_LANE_Q) || ((cached_type == TYPE_NEON_STORE2_ONE_LANE) || (cached_type == TYPE_NEON_STORE2_ONE_LANE_Q))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST1_VST2_LANE;
        }
      else if ((cached_type == TYPE_NEON_STORE3_ONE_LANE) || ((cached_type == TYPE_NEON_STORE3_ONE_LANE_Q) || ((cached_type == TYPE_NEON_STORE4_ONE_LANE) || (cached_type == TYPE_NEON_STORE4_ONE_LANE_Q))))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_VST3_VST4_LANE;
        }
      else if ((cached_type == TYPE_NEON_FROM_GP) || (cached_type == TYPE_F_MCR))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MCR;
        }
      else if ((cached_type == TYPE_NEON_FROM_GP_Q) || (cached_type == TYPE_F_MCRR))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MCR_2_MCRR;
        }
      else if ((cached_type == TYPE_NEON_TO_GP) || (cached_type == TYPE_F_MRC))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MRC;
        }
      else if ((cached_type == TYPE_NEON_TO_GP_Q) || (cached_type == TYPE_F_MRRC))
        {
	  return CORTEX_A8_NEON_TYPE_NEON_MRRC;
        }
      else
        {
	  return CORTEX_A8_NEON_TYPE_UNKNOWN;
        }

    case 1802:  /* neon_vget_lanev4sf_zext_internal */
    case 1801:  /* neon_vget_lanev4si_zext_internal */
    case 1800:  /* neon_vget_lanev8hf_zext_internal */
    case 1799:  /* neon_vget_lanev8hi_zext_internal */
    case 1798:  /* neon_vget_lanev16qi_zext_internal */
    case 1797:  /* neon_vget_lanev4sf_sext_internal */
    case 1796:  /* neon_vget_lanev4si_sext_internal */
    case 1795:  /* neon_vget_lanev8hf_sext_internal */
    case 1794:  /* neon_vget_lanev8hi_sext_internal */
    case 1793:  /* neon_vget_lanev16qi_sext_internal */
      return CORTEX_A8_NEON_TYPE_NEON_MRRC;

    case 1792:  /* neon_vget_lanev2sf_zext_internal */
    case 1791:  /* neon_vget_lanev2si_zext_internal */
    case 1790:  /* neon_vget_lanev4hi_zext_internal */
    case 1789:  /* neon_vget_lanev8qi_zext_internal */
    case 1788:  /* neon_vget_lanev2sf_sext_internal */
    case 1787:  /* neon_vget_lanev2si_sext_internal */
    case 1786:  /* neon_vget_lanev4hi_sext_internal */
    case 1785:  /* neon_vget_lanev8qi_sext_internal */
      return CORTEX_A8_NEON_TYPE_NEON_MRC;

    case 1808:  /* neon_vdup_nv8hf */
    case 1806:  /* neon_vdup_nv8hi */
    case 1805:  /* neon_vdup_nv16qi */
      return CORTEX_A8_NEON_TYPE_NEON_MCR_2_MCRR;

    case 1807:  /* neon_vdup_nv4hf */
    case 1804:  /* neon_vdup_nv4hi */
    case 1803:  /* neon_vdup_nv8qi */
      return CORTEX_A8_NEON_TYPE_NEON_MCR;

    case 2472:  /* neon_vst4_lanev2sf */
    case 2471:  /* neon_vst4_lanev2si */
    case 2470:  /* neon_vst4_lanev4hf */
    case 2469:  /* neon_vst4_lanev4hi */
    case 2468:  /* neon_vst4_lanev8qi */
    case 2420:  /* neon_vst3_lanev4sf */
    case 2419:  /* neon_vst3_lanev4si */
    case 2418:  /* neon_vst3_lanev8hf */
    case 2417:  /* neon_vst3_lanev8hi */
    case 2416:  /* neon_vst3_lanev2sf */
    case 2415:  /* neon_vst3_lanev2si */
    case 2414:  /* neon_vst3_lanev4hf */
    case 2413:  /* neon_vst3_lanev4hi */
    case 2412:  /* neon_vst3_lanev8qi */
      return CORTEX_A8_NEON_TYPE_NEON_VST3_VST4_LANE;

    case 2364:  /* neon_vst2_lanev4sf */
    case 2363:  /* neon_vst2_lanev4si */
    case 2362:  /* neon_vst2_lanev8hf */
    case 2361:  /* neon_vst2_lanev8hi */
    case 2360:  /* neon_vst2_lanev2sf */
    case 2359:  /* neon_vst2_lanev2si */
    case 2358:  /* neon_vst2_lanev4hf */
    case 2357:  /* neon_vst2_lanev4hi */
    case 2356:  /* neon_vst2_lanev8qi */
    case 2318:  /* neon_vst1_lanev2di */
    case 2317:  /* neon_vst1_lanev4sf */
    case 2316:  /* neon_vst1_lanev4si */
    case 2315:  /* neon_vst1_lanev8hf */
    case 2314:  /* neon_vst1_lanev8hi */
    case 2313:  /* neon_vst1_lanev16qi */
    case 2312:  /* neon_vst1_lanedi */
    case 2311:  /* neon_vst1_lanev2sf */
    case 2310:  /* neon_vst1_lanev2si */
    case 2309:  /* neon_vst1_lanev4hf */
    case 2308:  /* neon_vst1_lanev4hi */
    case 2307:  /* neon_vst1_lanev8qi */
      return CORTEX_A8_NEON_TYPE_NEON_VST1_VST2_LANE;

    case 2445:  /* neon_vld4_lanev4sf */
    case 2444:  /* neon_vld4_lanev4si */
    case 2443:  /* neon_vld4_lanev8hf */
    case 2442:  /* neon_vld4_lanev8hi */
    case 2441:  /* neon_vld4_lanev2sf */
    case 2440:  /* neon_vld4_lanev2si */
    case 2439:  /* neon_vld4_lanev4hf */
    case 2438:  /* neon_vld4_lanev4hi */
    case 2437:  /* neon_vld4_lanev8qi */
    case 2389:  /* neon_vld3_lanev4sf */
    case 2388:  /* neon_vld3_lanev4si */
    case 2387:  /* neon_vld3_lanev8hf */
    case 2386:  /* neon_vld3_lanev8hi */
    case 2385:  /* neon_vld3_lanev2sf */
    case 2384:  /* neon_vld3_lanev2si */
    case 2383:  /* neon_vld3_lanev4hf */
    case 2382:  /* neon_vld3_lanev4hi */
    case 2381:  /* neon_vld3_lanev8qi */
      return CORTEX_A8_NEON_TYPE_NEON_VLD3_VLD4_LANE;

    case 2338:  /* neon_vld2_lanev4sf */
    case 2337:  /* neon_vld2_lanev4si */
    case 2336:  /* neon_vld2_lanev8hf */
    case 2335:  /* neon_vld2_lanev8hi */
    case 2334:  /* neon_vld2_lanev2sf */
    case 2333:  /* neon_vld2_lanev2si */
    case 2332:  /* neon_vld2_lanev4hf */
    case 2331:  /* neon_vld2_lanev4hi */
    case 2330:  /* neon_vld2_lanev8qi */
    case 2283:  /* neon_vld1_lanev2di */
    case 2282:  /* neon_vld1_lanev4sf */
    case 2281:  /* neon_vld1_lanev4si */
    case 2280:  /* neon_vld1_lanev8hf */
    case 2279:  /* neon_vld1_lanev8hi */
    case 2278:  /* neon_vld1_lanev16qi */
    case 2277:  /* neon_vld1_lanedi */
    case 2276:  /* neon_vld1_lanev2sf */
    case 2275:  /* neon_vld1_lanev2si */
    case 2274:  /* neon_vld1_lanev4hf */
    case 2273:  /* neon_vld1_lanev4hi */
    case 2272:  /* neon_vld1_lanev8qi */
    case 746:  /* *push_multi_vfp */
      return CORTEX_A8_NEON_TYPE_NEON_VLD1_VLD2_LANE;

    case 2476:  /* neon_vst4_lanev4sf */
    case 2475:  /* neon_vst4_lanev4si */
    case 2474:  /* neon_vst4_lanev8hf */
    case 2473:  /* neon_vst4_lanev8hi */
    case 2467:  /* neon_vst4qbv4sf */
    case 2466:  /* neon_vst4qbv4si */
    case 2465:  /* neon_vst4qbv8hf */
    case 2464:  /* neon_vst4qbv8hi */
    case 2463:  /* neon_vst4qbv16qi */
    case 2462:  /* neon_vst4qav4sf */
    case 2461:  /* neon_vst4qav4si */
    case 2460:  /* neon_vst4qav8hf */
    case 2459:  /* neon_vst4qav8hi */
    case 2458:  /* neon_vst4qav16qi */
    case 2411:  /* neon_vst3qbv4sf */
    case 2410:  /* neon_vst3qbv4si */
    case 2409:  /* neon_vst3qbv8hf */
    case 2408:  /* neon_vst3qbv8hi */
    case 2407:  /* neon_vst3qbv16qi */
    case 2406:  /* neon_vst3qav4sf */
    case 2405:  /* neon_vst3qav4si */
    case 2404:  /* neon_vst3qav8hf */
    case 2403:  /* neon_vst3qav8hi */
    case 2402:  /* neon_vst3qav16qi */
    case 2355:  /* neon_vst2v4sf */
    case 2354:  /* neon_vst2v4si */
    case 2353:  /* neon_vst2v8hf */
    case 2352:  /* neon_vst2v8hi */
    case 2351:  /* neon_vst2v16qi */
      return CORTEX_A8_NEON_TYPE_NEON_VST2_4_REGS_VST3_VST4;

    case 2306:  /* neon_vst1v2di */
    case 2305:  /* neon_vst1di */
    case 2304:  /* neon_vst1v4sf */
    case 2303:  /* neon_vst1v2sf */
    case 2302:  /* neon_vst1v8hf */
    case 2301:  /* neon_vst1v4hf */
    case 2300:  /* neon_vst1v4si */
    case 2299:  /* neon_vst1v2si */
    case 2298:  /* neon_vst1v8hi */
    case 2297:  /* neon_vst1v4hi */
    case 2296:  /* neon_vst1v16qi */
    case 2295:  /* neon_vst1v8qi */
    case 942:  /* *movmisalignv2di_neon_store */
    case 941:  /* *movmisalignv4sf_neon_store */
    case 940:  /* *movmisalignv4si_neon_store */
    case 939:  /* *movmisalignv8hf_neon_store */
    case 938:  /* *movmisalignv8hi_neon_store */
    case 937:  /* *movmisalignv16qi_neon_store */
    case 930:  /* *movmisaligndi_neon_store */
    case 929:  /* *movmisalignv2sf_neon_store */
    case 928:  /* *movmisalignv2si_neon_store */
    case 927:  /* *movmisalignv4hf_neon_store */
    case 926:  /* *movmisalignv4hi_neon_store */
    case 925:  /* *movmisalignv8qi_neon_store */
      return CORTEX_A8_NEON_TYPE_NEON_VST1_1_2_REGS_VST2_2_REGS;

    case 2436:  /* neon_vld4qbv4sf */
    case 2435:  /* neon_vld4qbv4si */
    case 2434:  /* neon_vld4qbv8hf */
    case 2433:  /* neon_vld4qbv8hi */
    case 2432:  /* neon_vld4qbv16qi */
    case 2431:  /* neon_vld4qav4sf */
    case 2430:  /* neon_vld4qav4si */
    case 2429:  /* neon_vld4qav8hf */
    case 2428:  /* neon_vld4qav8hi */
    case 2427:  /* neon_vld4qav16qi */
    case 2380:  /* neon_vld3qbv4sf */
    case 2379:  /* neon_vld3qbv4si */
    case 2378:  /* neon_vld3qbv8hf */
    case 2377:  /* neon_vld3qbv8hi */
    case 2376:  /* neon_vld3qbv16qi */
    case 2375:  /* neon_vld3qav4sf */
    case 2374:  /* neon_vld3qav4si */
    case 2373:  /* neon_vld3qav8hf */
    case 2372:  /* neon_vld3qav8hi */
    case 2371:  /* neon_vld3qav16qi */
      return CORTEX_A8_NEON_TYPE_NEON_VLD3_VLD4;

    case 2294:  /* neon_vld1_dupv2di */
    case 2293:  /* neon_vld1_dupv4sf */
    case 2292:  /* neon_vld1_dupv4si */
    case 2291:  /* neon_vld1_dupv8hf */
    case 2290:  /* neon_vld1_dupv8hi */
    case 2289:  /* neon_vld1_dupv16qi */
    case 2288:  /* neon_vld1_dupv2sf */
    case 2287:  /* neon_vld1_dupv2si */
    case 2286:  /* neon_vld1_dupv4hf */
    case 2285:  /* neon_vld1_dupv4hi */
    case 2284:  /* neon_vld1_dupv8qi */
      return CORTEX_A8_NEON_TYPE_NEON_VLD2_2_REGS_VLD1_VLD2_ALL_LANES;

    case 2329:  /* neon_vld2v4sf */
    case 2328:  /* neon_vld2v4si */
    case 2327:  /* neon_vld2v8hf */
    case 2326:  /* neon_vld2v8hi */
    case 2325:  /* neon_vld2v16qi */
    case 2324:  /* neon_vld2di */
    case 2323:  /* neon_vld2v2sf */
    case 2322:  /* neon_vld2v2si */
    case 2321:  /* neon_vld2v4hf */
    case 2320:  /* neon_vld2v4hi */
    case 2319:  /* neon_vld2v8qi */
    case 2271:  /* neon_vld1v2di */
    case 2270:  /* neon_vld1di */
    case 2269:  /* neon_vld1v4sf */
    case 2268:  /* neon_vld1v2sf */
    case 2267:  /* neon_vld1v8hf */
    case 2266:  /* neon_vld1v4hf */
    case 2265:  /* neon_vld1v4si */
    case 2264:  /* neon_vld1v2si */
    case 2263:  /* neon_vld1v8hi */
    case 2262:  /* neon_vld1v4hi */
    case 2261:  /* neon_vld1v16qi */
    case 2260:  /* neon_vld1v8qi */
    case 948:  /* *movmisalignv2di_neon_load */
    case 947:  /* *movmisalignv4sf_neon_load */
    case 946:  /* *movmisalignv4si_neon_load */
    case 945:  /* *movmisalignv8hf_neon_load */
    case 944:  /* *movmisalignv8hi_neon_load */
    case 943:  /* *movmisalignv16qi_neon_load */
    case 936:  /* *movmisaligndi_neon_load */
    case 935:  /* *movmisalignv2sf_neon_load */
    case 934:  /* *movmisalignv2si_neon_load */
    case 933:  /* *movmisalignv4hf_neon_load */
    case 932:  /* *movmisalignv4hi_neon_load */
    case 931:  /* *movmisalignv8qi_neon_load */
      return CORTEX_A8_NEON_TYPE_NEON_VLD1_1_2_REGS;

    case 2258:  /* *neon_vuzpv8hf_insn */
    case 2257:  /* *neon_vuzpv4sf_insn */
    case 2255:  /* *neon_vuzpv4si_insn */
    case 2253:  /* *neon_vuzpv8hi_insn */
    case 2251:  /* *neon_vuzpv16qi_insn */
    case 2248:  /* *neon_vzipv8hf_insn */
    case 2247:  /* *neon_vzipv4sf_insn */
    case 2245:  /* *neon_vzipv4si_insn */
    case 2243:  /* *neon_vzipv8hi_insn */
    case 2241:  /* *neon_vzipv16qi_insn */
    case 2229:  /* neon_vtbx4v8qi */
    case 2228:  /* neon_vtbx3v8qi */
    case 2222:  /* neon_vtbl4v8qi */
    case 2221:  /* neon_vtbl3v8qi */
      return CORTEX_A8_NEON_TYPE_NEON_BP_3CYCLE;

    case 2238:  /* *neon_vtrnv8hf_insn */
    case 2237:  /* *neon_vtrnv4sf_insn */
    case 2235:  /* *neon_vtrnv4si_insn */
    case 2233:  /* *neon_vtrnv8hi_insn */
    case 2231:  /* *neon_vtrnv16qi_insn */
    case 2227:  /* neon_vtbx2v8qi */
    case 2226:  /* neon_vtbx1v8qi */
    case 2220:  /* neon_vtbl2v8qi */
    case 2219:  /* neon_vtbl1v8qi */
    case 1983:  /* neon_vextv2di */
    case 1981:  /* neon_vextv4sf */
    case 1979:  /* neon_vextv8hf */
    case 1977:  /* neon_vextv4si */
    case 1975:  /* neon_vextv8hi */
    case 1973:  /* neon_vextv16qi */
    case 1835:  /* *neon_vswpv2di */
    case 1833:  /* *neon_vswpv4sf */
    case 1831:  /* *neon_vswpv8hf */
    case 1829:  /* *neon_vswpv4si */
    case 1827:  /* *neon_vswpv8hi */
    case 1825:  /* *neon_vswpv16qi */
      return CORTEX_A8_NEON_TYPE_NEON_BP_2CYCLE;

    case 2524:  /* neon_vec_pack_trunc_v2di */
    case 2523:  /* neon_vec_pack_trunc_v4si */
    case 2522:  /* neon_vec_pack_trunc_v8hi */
    case 2259:  /* *neon_vuzpv4hf_insn */
    case 2256:  /* *neon_vuzpv2sf_insn */
    case 2254:  /* *neon_vuzpv2si_insn */
    case 2252:  /* *neon_vuzpv4hi_insn */
    case 2250:  /* *neon_vuzpv8qi_insn */
    case 2249:  /* *neon_vzipv4hf_insn */
    case 2246:  /* *neon_vzipv2sf_insn */
    case 2244:  /* *neon_vzipv2si_insn */
    case 2242:  /* *neon_vzipv4hi_insn */
    case 2240:  /* *neon_vzipv8qi_insn */
    case 2239:  /* *neon_vtrnv4hf_insn */
    case 2236:  /* *neon_vtrnv2sf_insn */
    case 2234:  /* *neon_vtrnv2si_insn */
    case 2232:  /* *neon_vtrnv4hi_insn */
    case 2230:  /* *neon_vtrnv8qi_insn */
    case 2000:  /* neon_vrev16v16qi */
    case 1999:  /* neon_vrev16v8qi */
    case 1998:  /* neon_vrev32v8hi */
    case 1997:  /* neon_vrev32v16qi */
    case 1996:  /* neon_vrev32v4hi */
    case 1995:  /* neon_vrev32v8qi */
    case 1994:  /* neon_vrev64v2di */
    case 1993:  /* neon_vrev64v4sf */
    case 1992:  /* neon_vrev64v2sf */
    case 1991:  /* neon_vrev64v8hf */
    case 1990:  /* neon_vrev64v4hf */
    case 1989:  /* neon_vrev64v4si */
    case 1988:  /* neon_vrev64v2si */
    case 1987:  /* neon_vrev64v8hi */
    case 1986:  /* neon_vrev64v4hi */
    case 1985:  /* neon_vrev64v16qi */
    case 1984:  /* neon_vrev64v8qi */
    case 1982:  /* neon_vextdi */
    case 1980:  /* neon_vextv2sf */
    case 1978:  /* neon_vextv4hf */
    case 1976:  /* neon_vextv2si */
    case 1974:  /* neon_vextv4hi */
    case 1972:  /* neon_vextv8qi */
    case 1834:  /* *neon_vswpdi */
    case 1832:  /* *neon_vswpv2sf */
    case 1830:  /* *neon_vswpv4hf */
    case 1828:  /* *neon_vswpv2si */
    case 1826:  /* *neon_vswpv4hi */
    case 1824:  /* *neon_vswpv8qi */
    case 1823:  /* neon_vdup_lanev4hf_internal */
    case 1822:  /* neon_vdup_lanev8hf_internal */
    case 1821:  /* neon_vdup_lanev4sf_internal */
    case 1820:  /* neon_vdup_lanev2sf_internal */
    case 1819:  /* neon_vdup_lanev4si_internal */
    case 1818:  /* neon_vdup_lanev2si_internal */
    case 1817:  /* neon_vdup_lanev8hi_internal */
    case 1816:  /* neon_vdup_lanev4hi_internal */
    case 1815:  /* neon_vdup_lanev16qi_internal */
    case 1814:  /* neon_vdup_lanev8qi_internal */
    case 1754:  /* neon_bswapv2di */
    case 1753:  /* neon_bswapv4si */
    case 1752:  /* neon_bswapv2si */
    case 1751:  /* neon_bswapv8hi */
    case 1750:  /* neon_bswapv4hi */
      return CORTEX_A8_NEON_TYPE_NEON_BP_SIMPLE;

    case 1742:  /* neon_vrsqrtsv8hf */
    case 1741:  /* neon_vrsqrtsv4sf */
    case 1738:  /* neon_vrecpsv8hf */
    case 1737:  /* neon_vrecpsv4sf */
      return CORTEX_A8_NEON_TYPE_NEON_FP_VRECPS_VRSQRTS_QQQ;

    case 1743:  /* neon_vrsqrtsv4hf */
    case 1740:  /* neon_vrsqrtsv2sf */
    case 1739:  /* neon_vrecpsv4hf */
    case 1736:  /* neon_vrecpsv2sf */
      return CORTEX_A8_NEON_TYPE_NEON_FP_VRECPS_VRSQRTS_DDD;

    case 1035:  /* fmsubv8hf4_intrinsic */
    case 1034:  /* fmsubv4sf4_intrinsic */
    case 1032:  /* *fmsubv4sf4 */
    case 1029:  /* fmav8hf4_intrinsic */
    case 1028:  /* fmav4sf4_intrinsic */
    case 1026:  /* fmav4sf4 */
    case 1015:  /* mulv8hf3addv8hf_neon */
      return CORTEX_A8_NEON_TYPE_NEON_FP_VMLA_QQQ;

    case 1036:  /* fmsubv4hf4_intrinsic */
    case 1033:  /* fmsubv2sf4_intrinsic */
    case 1031:  /* *fmsubv2sf4 */
    case 1030:  /* fmav4hf4_intrinsic */
    case 1027:  /* fmav2sf4_intrinsic */
    case 1025:  /* fmav2sf4 */
    case 1016:  /* mulv4hf3addv4hf_neon */
      return CORTEX_A8_NEON_TYPE_NEON_FP_VMLA_DDD;

    case 1924:  /* neon_vmul_lanev8hf */
      return CORTEX_A8_NEON_TYPE_NEON_FP_VMUL_QQD;

    case 1925:  /* neon_vmul_lanev4hf */
      return CORTEX_A8_NEON_TYPE_NEON_FP_VMUL_DDD;

    case 1735:  /* neon_vpminfv4sf */
    case 1734:  /* neon_vpmaxfv4sf */
    case 1733:  /* neon_vpminfv2sf */
    case 1732:  /* neon_vpmaxfv2sf */
    case 1282:  /* quad_halves_smaxv4sf */
    case 1281:  /* quad_halves_sminv4sf */
    case 1280:  /* quad_halves_plusv4sf */
      return CORTEX_A8_NEON_TYPE_NEON_FP_VSUM;

    case 1891:  /* neon_vcvtpuv8hf */
    case 1890:  /* neon_vcvtpsv8hf */
    case 1889:  /* neon_vcvtnuv8hf */
    case 1888:  /* neon_vcvtnsv8hf */
    case 1887:  /* neon_vcvtmuv8hf */
    case 1886:  /* neon_vcvtmsv8hf */
    case 1885:  /* neon_vcvtauv8hf */
    case 1884:  /* neon_vcvtasv8hf */
    case 1883:  /* neon_vcvtu_nv8hi */
    case 1882:  /* neon_vcvts_nv8hi */
    case 1879:  /* neon_vcvtu_nv4si */
    case 1878:  /* neon_vcvts_nv4si */
    case 1873:  /* neon_vcvtu_nv8hf */
    case 1872:  /* neon_vcvts_nv8hf */
    case 1871:  /* neon_vcvtu_nv4sf */
    case 1870:  /* neon_vcvts_nv4sf */
    case 1865:  /* neon_vcvtuv8hf */
    case 1864:  /* neon_vcvtsv8hf */
    case 1863:  /* neon_vcvtuv8hi */
    case 1862:  /* neon_vcvtsv8hi */
    case 1857:  /* neon_vcvtuv4si */
    case 1856:  /* neon_vcvtsv4si */
    case 1853:  /* neon_vcvtuv4sf */
    case 1852:  /* neon_vcvtsv4sf */
    case 1849:  /* fixuns_truncv4sfv4si2 */
    case 1847:  /* fix_truncv4sfv4si2 */
    case 1845:  /* floatunsv4siv4sf2 */
    case 1843:  /* floatv4siv4sf2 */
    case 1784:  /* neon_vrsqrtev4sf */
    case 1783:  /* neon_vrsqrtev4si */
    case 1780:  /* neon_vrecpev4sf */
    case 1779:  /* neon_vrecpev4si */
    case 1775:  /* neon_vrecpev8hf */
    case 1695:  /* fminv4sf3 */
    case 1694:  /* fmaxv4sf3 */
    case 1689:  /* neon_vminnmv8hf */
    case 1688:  /* neon_vmaxnmv8hf */
    case 1683:  /* neon_vminfv8hf */
    case 1682:  /* neon_vmaxfv8hf */
    case 1681:  /* neon_vminfv4sf */
    case 1680:  /* neon_vmaxfv4sf */
    case 1629:  /* neon_vabdfv4sf */
    case 1603:  /* neon_vcaltv8hf_fp16insn_unspec */
    case 1602:  /* neon_vcalev8hf_fp16insn_unspec */
    case 1601:  /* neon_vcagtv8hf_fp16insn_unspec */
    case 1600:  /* neon_vcagev8hf_fp16insn_unspec */
    case 1595:  /* neon_vcalev8hf_fp16insn */
    case 1594:  /* neon_vcaltv8hf_fp16insn */
    case 1593:  /* neon_vcagev8hf_fp16insn */
    case 1592:  /* neon_vcagtv8hf_fp16insn */
    case 1591:  /* neon_vcagtv4sf_insn_unspec */
    case 1590:  /* neon_vcagev4sf_insn_unspec */
    case 1587:  /* neon_vcagev4sf_insn */
    case 1586:  /* neon_vcagtv4sf_insn */
    case 1566:  /* neon_vclev8hf_fp16insn_unspec */
    case 1565:  /* neon_vcltv8hf_fp16insn_unspec */
    case 1564:  /* neon_vcgev8hf_fp16insn_unspec */
    case 1563:  /* neon_vcgtv8hf_fp16insn_unspec */
    case 1562:  /* neon_vceqv8hf_fp16insn_unspec */
    case 1551:  /* neon_vclev4sf_insn_unspec */
    case 1550:  /* neon_vcltv4sf_insn_unspec */
    case 1549:  /* neon_vcgev4sf_insn_unspec */
    case 1548:  /* neon_vcgtv4sf_insn_unspec */
    case 1547:  /* neon_vceqv4sf_insn_unspec */
    case 1162:  /* neon_vrsqrtev8hf */
    case 1060:  /* neon_vcvtauv4sfv4si */
    case 1059:  /* neon_vcvtmuv4sfv4si */
    case 1058:  /* neon_vcvtpuv4sfv4si */
    case 1057:  /* neon_vcvtav4sfv4si */
    case 1056:  /* neon_vcvtmv4sfv4si */
    case 1055:  /* neon_vcvtpv4sfv4si */
      return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_QQQ_VABS_QQ;

    case 1899:  /* neon_vcvtpuv4hf */
    case 1898:  /* neon_vcvtpsv4hf */
    case 1897:  /* neon_vcvtnuv4hf */
    case 1896:  /* neon_vcvtnsv4hf */
    case 1895:  /* neon_vcvtmuv4hf */
    case 1894:  /* neon_vcvtmsv4hf */
    case 1893:  /* neon_vcvtauv4hf */
    case 1892:  /* neon_vcvtasv4hf */
    case 1881:  /* neon_vcvtu_nv4hi */
    case 1880:  /* neon_vcvts_nv4hi */
    case 1877:  /* neon_vcvtu_nv2si */
    case 1876:  /* neon_vcvts_nv2si */
    case 1875:  /* neon_vcvtu_nv4hf */
    case 1874:  /* neon_vcvts_nv4hf */
    case 1869:  /* neon_vcvtu_nv2sf */
    case 1868:  /* neon_vcvts_nv2sf */
    case 1867:  /* neon_vcvtuv4hf */
    case 1866:  /* neon_vcvtsv4hf */
    case 1861:  /* neon_vcvtuv4hi */
    case 1860:  /* neon_vcvtsv4hi */
    case 1855:  /* neon_vcvtuv2si */
    case 1854:  /* neon_vcvtsv2si */
    case 1851:  /* neon_vcvtuv2sf */
    case 1850:  /* neon_vcvtsv2sf */
    case 1848:  /* fixuns_truncv2sfv2si2 */
    case 1846:  /* fix_truncv2sfv2si2 */
    case 1844:  /* floatunsv2siv2sf2 */
    case 1842:  /* floatv2siv2sf2 */
    case 1782:  /* neon_vrsqrtev2sf */
    case 1781:  /* neon_vrsqrtev2si */
    case 1778:  /* neon_vrecpev2sf */
    case 1777:  /* neon_vrecpev2si */
    case 1776:  /* neon_vrecpev4hf */
    case 1693:  /* fminv2sf3 */
    case 1692:  /* fmaxv2sf3 */
    case 1691:  /* neon_vminnmv4hf */
    case 1690:  /* neon_vmaxnmv4hf */
    case 1685:  /* neon_vminfv4hf */
    case 1684:  /* neon_vmaxfv4hf */
    case 1679:  /* neon_vminfv2sf */
    case 1678:  /* neon_vmaxfv2sf */
    case 1628:  /* neon_vabdfv2sf */
    case 1607:  /* neon_vcaltv4hf_fp16insn_unspec */
    case 1606:  /* neon_vcalev4hf_fp16insn_unspec */
    case 1605:  /* neon_vcagtv4hf_fp16insn_unspec */
    case 1604:  /* neon_vcagev4hf_fp16insn_unspec */
    case 1599:  /* neon_vcalev4hf_fp16insn */
    case 1598:  /* neon_vcaltv4hf_fp16insn */
    case 1597:  /* neon_vcagev4hf_fp16insn */
    case 1596:  /* neon_vcagtv4hf_fp16insn */
    case 1589:  /* neon_vcagtv2sf_insn_unspec */
    case 1588:  /* neon_vcagev2sf_insn_unspec */
    case 1585:  /* neon_vcagev2sf_insn */
    case 1584:  /* neon_vcagtv2sf_insn */
    case 1571:  /* neon_vclev4hf_fp16insn_unspec */
    case 1570:  /* neon_vcltv4hf_fp16insn_unspec */
    case 1569:  /* neon_vcgev4hf_fp16insn_unspec */
    case 1568:  /* neon_vcgtv4hf_fp16insn_unspec */
    case 1567:  /* neon_vceqv4hf_fp16insn_unspec */
    case 1546:  /* neon_vclev2sf_insn_unspec */
    case 1545:  /* neon_vcltv2sf_insn_unspec */
    case 1544:  /* neon_vcgev2sf_insn_unspec */
    case 1543:  /* neon_vcgtv2sf_insn_unspec */
    case 1542:  /* neon_vceqv2sf_insn_unspec */
    case 1163:  /* neon_vrsqrtev4hf */
    case 1054:  /* neon_vcvtauv2sfv2si */
    case 1053:  /* neon_vcvtmuv2sfv2si */
    case 1052:  /* neon_vcvtpuv2sfv2si */
    case 1051:  /* neon_vcvtav2sfv2si */
    case 1050:  /* neon_vcvtmv2sfv2si */
    case 1049:  /* neon_vcvtpv2sfv2si */
      return CORTEX_A8_NEON_TYPE_NEON_FP_VADD_DDD_VABS_DD;

    case 2202:  /* neon_vrsrau_nv2di */
    case 2201:  /* neon_vrsras_nv2di */
    case 2200:  /* neon_vsrau_nv2di */
    case 2199:  /* neon_vsras_nv2di */
    case 2198:  /* neon_vrsrau_ndi */
    case 2197:  /* neon_vrsras_ndi */
    case 2196:  /* neon_vsrau_ndi */
    case 2195:  /* neon_vsras_ndi */
    case 2194:  /* neon_vrsrau_nv4si */
    case 2193:  /* neon_vrsras_nv4si */
    case 2192:  /* neon_vsrau_nv4si */
    case 2191:  /* neon_vsras_nv4si */
    case 2190:  /* neon_vrsrau_nv2si */
    case 2189:  /* neon_vrsras_nv2si */
    case 2188:  /* neon_vsrau_nv2si */
    case 2187:  /* neon_vsras_nv2si */
    case 2186:  /* neon_vrsrau_nv8hi */
    case 2185:  /* neon_vrsras_nv8hi */
    case 2184:  /* neon_vsrau_nv8hi */
    case 2183:  /* neon_vsras_nv8hi */
    case 2182:  /* neon_vrsrau_nv4hi */
    case 2181:  /* neon_vrsras_nv4hi */
    case 2180:  /* neon_vsrau_nv4hi */
    case 2179:  /* neon_vsras_nv4hi */
    case 2178:  /* neon_vrsrau_nv16qi */
    case 2177:  /* neon_vrsras_nv16qi */
    case 2176:  /* neon_vsrau_nv16qi */
    case 2175:  /* neon_vsras_nv16qi */
    case 2174:  /* neon_vrsrau_nv8qi */
    case 2173:  /* neon_vrsras_nv8qi */
    case 2172:  /* neon_vsrau_nv8qi */
    case 2171:  /* neon_vsras_nv8qi */
      return CORTEX_A8_NEON_TYPE_NEON_VSRA_VRSRA;

    case 2218:  /* neon_vsli_nv2di */
    case 2216:  /* neon_vsli_nv4si */
    case 2214:  /* neon_vsli_nv8hi */
    case 2212:  /* neon_vsli_nv16qi */
    case 2210:  /* neon_vsri_nv2di */
    case 2208:  /* neon_vsri_nv4si */
    case 2206:  /* neon_vsri_nv8hi */
    case 2204:  /* neon_vsri_nv16qi */
    case 1223:  /* ashlv2di3_unsigned */
    case 1222:  /* ashlv4si3_unsigned */
    case 1220:  /* ashlv8hi3_unsigned */
    case 1218:  /* ashlv16qi3_unsigned */
    case 1216:  /* ashlv2di3_signed */
    case 1215:  /* ashlv4si3_signed */
    case 1213:  /* ashlv8hi3_signed */
    case 1211:  /* ashlv16qi3_signed */
      return CORTEX_A8_NEON_TYPE_NEON_SHIFT_3;

    case 2164:  /* neon_vqshlu_nv2di */
    case 2163:  /* neon_vqshlu_ndi */
    case 2162:  /* neon_vqshlu_nv4si */
    case 2161:  /* neon_vqshlu_nv2si */
    case 2160:  /* neon_vqshlu_nv8hi */
    case 2159:  /* neon_vqshlu_nv4hi */
    case 2158:  /* neon_vqshlu_nv16qi */
    case 2157:  /* neon_vqshlu_nv8qi */
    case 2156:  /* neon_vqshl_u_nv2di */
    case 2155:  /* neon_vqshl_s_nv2di */
    case 2154:  /* neon_vqshl_u_ndi */
    case 2153:  /* neon_vqshl_s_ndi */
    case 2152:  /* neon_vqshl_u_nv4si */
    case 2151:  /* neon_vqshl_s_nv4si */
    case 2150:  /* neon_vqshl_u_nv2si */
    case 2149:  /* neon_vqshl_s_nv2si */
    case 2148:  /* neon_vqshl_u_nv8hi */
    case 2147:  /* neon_vqshl_s_nv8hi */
    case 2146:  /* neon_vqshl_u_nv4hi */
    case 2145:  /* neon_vqshl_s_nv4hi */
    case 2144:  /* neon_vqshl_u_nv16qi */
    case 2143:  /* neon_vqshl_s_nv16qi */
    case 2142:  /* neon_vqshl_u_nv8qi */
    case 2141:  /* neon_vqshl_s_nv8qi */
    case 2132:  /* neon_vqrshrun_nv2di */
    case 2131:  /* neon_vqshrun_nv2di */
    case 2130:  /* neon_vqrshrun_nv4si */
    case 2129:  /* neon_vqshrun_nv4si */
    case 2128:  /* neon_vqrshrun_nv8hi */
    case 2127:  /* neon_vqshrun_nv8hi */
    case 2126:  /* neon_vqrshrnu_nv2di */
    case 2125:  /* neon_vqrshrns_nv2di */
    case 2124:  /* neon_vqshrnu_nv2di */
    case 2123:  /* neon_vqshrns_nv2di */
    case 2122:  /* neon_vqrshrnu_nv4si */
    case 2121:  /* neon_vqrshrns_nv4si */
    case 2120:  /* neon_vqshrnu_nv4si */
    case 2119:  /* neon_vqshrns_nv4si */
    case 2118:  /* neon_vqrshrnu_nv8hi */
    case 2117:  /* neon_vqrshrns_nv8hi */
    case 2116:  /* neon_vqshrnu_nv8hi */
    case 2115:  /* neon_vqshrns_nv8hi */
    case 2076:  /* neon_vqrshluv2di */
    case 2075:  /* neon_vqrshlsv2di */
    case 2074:  /* neon_vqshluv2di */
    case 2073:  /* neon_vqshlsv2di */
    case 2072:  /* neon_vqrshludi */
    case 2071:  /* neon_vqrshlsdi */
    case 2070:  /* neon_vqshludi */
    case 2069:  /* neon_vqshlsdi */
    case 2068:  /* neon_vqrshluv4si */
    case 2067:  /* neon_vqrshlsv4si */
    case 2066:  /* neon_vqshluv4si */
    case 2065:  /* neon_vqshlsv4si */
    case 2064:  /* neon_vqrshluv2si */
    case 2063:  /* neon_vqrshlsv2si */
    case 2062:  /* neon_vqshluv2si */
    case 2061:  /* neon_vqshlsv2si */
    case 2060:  /* neon_vqrshluv8hi */
    case 2059:  /* neon_vqrshlsv8hi */
    case 2058:  /* neon_vqshluv8hi */
    case 2057:  /* neon_vqshlsv8hi */
    case 2056:  /* neon_vqrshluv4hi */
    case 2055:  /* neon_vqrshlsv4hi */
    case 2054:  /* neon_vqshluv4hi */
    case 2053:  /* neon_vqshlsv4hi */
    case 2052:  /* neon_vqrshluv16qi */
    case 2051:  /* neon_vqrshlsv16qi */
    case 2050:  /* neon_vqshluv16qi */
    case 2049:  /* neon_vqshlsv16qi */
    case 2048:  /* neon_vqrshluv8qi */
    case 2047:  /* neon_vqrshlsv8qi */
    case 2046:  /* neon_vqshluv8qi */
    case 2045:  /* neon_vqshlsv8qi */
    case 1911:  /* neon_vqmovunv2di */
    case 1910:  /* neon_vqmovunv4si */
    case 1909:  /* neon_vqmovunv8hi */
    case 1908:  /* neon_vqmovnuv2di */
    case 1907:  /* neon_vqmovnsv2di */
    case 1906:  /* neon_vqmovnuv4si */
    case 1905:  /* neon_vqmovnsv4si */
    case 1904:  /* neon_vqmovnuv8hi */
    case 1903:  /* neon_vqmovnsv8hi */
      return CORTEX_A8_NEON_TYPE_NEON_SHIFT_2;

    case 2506:  /* neon_vec_ushiftl_v2si */
    case 2505:  /* neon_vec_sshiftl_v2si */
    case 2504:  /* neon_vec_ushiftl_v4hi */
    case 2503:  /* neon_vec_sshiftl_v4hi */
    case 2502:  /* neon_vec_ushiftl_v8qi */
    case 2501:  /* neon_vec_sshiftl_v8qi */
    case 2488:  /* neon_vec_unpacku_hi_v4si */
    case 2487:  /* neon_vec_unpacks_hi_v4si */
    case 2486:  /* neon_vec_unpacku_hi_v8hi */
    case 2485:  /* neon_vec_unpacks_hi_v8hi */
    case 2484:  /* neon_vec_unpacku_hi_v16qi */
    case 2483:  /* neon_vec_unpacks_hi_v16qi */
    case 2482:  /* neon_vec_unpacku_lo_v4si */
    case 2481:  /* neon_vec_unpacks_lo_v4si */
    case 2480:  /* neon_vec_unpacku_lo_v8hi */
    case 2479:  /* neon_vec_unpacks_lo_v8hi */
    case 2478:  /* neon_vec_unpacku_lo_v16qi */
    case 2477:  /* neon_vec_unpacks_lo_v16qi */
    case 2217:  /* neon_vsli_ndi */
    case 2215:  /* neon_vsli_nv2si */
    case 2213:  /* neon_vsli_nv4hi */
    case 2211:  /* neon_vsli_nv8qi */
    case 2209:  /* neon_vsri_ndi */
    case 2207:  /* neon_vsri_nv2si */
    case 2205:  /* neon_vsri_nv4hi */
    case 2203:  /* neon_vsri_nv8qi */
    case 2170:  /* neon_vshllu_nv2si */
    case 2169:  /* neon_vshlls_nv2si */
    case 2168:  /* neon_vshllu_nv4hi */
    case 2167:  /* neon_vshlls_nv4hi */
    case 2166:  /* neon_vshllu_nv8qi */
    case 2165:  /* neon_vshlls_nv8qi */
    case 2140:  /* neon_vshl_nv2di */
    case 2139:  /* neon_vshl_ndi */
    case 2138:  /* neon_vshl_nv4si */
    case 2137:  /* neon_vshl_nv2si */
    case 2136:  /* neon_vshl_nv8hi */
    case 2135:  /* neon_vshl_nv4hi */
    case 2134:  /* neon_vshl_nv16qi */
    case 2133:  /* neon_vshl_nv8qi */
    case 2114:  /* neon_vrshrn_nv2di */
    case 2113:  /* neon_vshrn_nv2di */
    case 2112:  /* neon_vrshrn_nv4si */
    case 2111:  /* neon_vshrn_nv4si */
    case 2110:  /* neon_vrshrn_nv8hi */
    case 2109:  /* neon_vshrn_nv8hi */
    case 2108:  /* neon_vrshru_nv2di */
    case 2107:  /* neon_vrshrs_nv2di */
    case 2106:  /* neon_vshru_nv2di */
    case 2105:  /* neon_vshrs_nv2di */
    case 2104:  /* neon_vrshru_ndi */
    case 2103:  /* neon_vrshrs_ndi */
    case 2102:  /* neon_vshru_ndi */
    case 2101:  /* neon_vshrs_ndi */
    case 2100:  /* neon_vrshru_nv4si */
    case 2099:  /* neon_vrshrs_nv4si */
    case 2098:  /* neon_vshru_nv4si */
    case 2097:  /* neon_vshrs_nv4si */
    case 2096:  /* neon_vrshru_nv2si */
    case 2095:  /* neon_vrshrs_nv2si */
    case 2094:  /* neon_vshru_nv2si */
    case 2093:  /* neon_vshrs_nv2si */
    case 2092:  /* neon_vrshru_nv8hi */
    case 2091:  /* neon_vrshrs_nv8hi */
    case 2090:  /* neon_vshru_nv8hi */
    case 2089:  /* neon_vshrs_nv8hi */
    case 2088:  /* neon_vrshru_nv4hi */
    case 2087:  /* neon_vrshrs_nv4hi */
    case 2086:  /* neon_vshru_nv4hi */
    case 2085:  /* neon_vshrs_nv4hi */
    case 2084:  /* neon_vrshru_nv16qi */
    case 2083:  /* neon_vrshrs_nv16qi */
    case 2082:  /* neon_vshru_nv16qi */
    case 2081:  /* neon_vshrs_nv16qi */
    case 2080:  /* neon_vrshru_nv8qi */
    case 2079:  /* neon_vrshrs_nv8qi */
    case 2078:  /* neon_vshru_nv8qi */
    case 2077:  /* neon_vshrs_nv8qi */
    case 2044:  /* neon_vrshluv2di */
    case 2043:  /* neon_vrshlsv2di */
    case 2042:  /* neon_vshluv2di */
    case 2041:  /* neon_vshlsv2di */
    case 2040:  /* neon_vrshludi */
    case 2039:  /* neon_vrshlsdi */
    case 2038:  /* neon_vshludi */
    case 2037:  /* neon_vshlsdi */
    case 2036:  /* neon_vrshluv4si */
    case 2035:  /* neon_vrshlsv4si */
    case 2034:  /* neon_vshluv4si */
    case 2033:  /* neon_vshlsv4si */
    case 2032:  /* neon_vrshluv2si */
    case 2031:  /* neon_vrshlsv2si */
    case 2030:  /* neon_vshluv2si */
    case 2029:  /* neon_vshlsv2si */
    case 2028:  /* neon_vrshluv8hi */
    case 2027:  /* neon_vrshlsv8hi */
    case 2026:  /* neon_vshluv8hi */
    case 2025:  /* neon_vshlsv8hi */
    case 2024:  /* neon_vrshluv4hi */
    case 2023:  /* neon_vrshlsv4hi */
    case 2022:  /* neon_vshluv4hi */
    case 2021:  /* neon_vshlsv4hi */
    case 2020:  /* neon_vrshluv16qi */
    case 2019:  /* neon_vrshlsv16qi */
    case 2018:  /* neon_vshluv16qi */
    case 2017:  /* neon_vshlsv16qi */
    case 2016:  /* neon_vrshluv8qi */
    case 2015:  /* neon_vrshlsv8qi */
    case 2014:  /* neon_vshluv8qi */
    case 2013:  /* neon_vshlsv8qi */
    case 1917:  /* neon_vmovluv2si */
    case 1916:  /* neon_vmovlsv2si */
    case 1915:  /* neon_vmovluv4hi */
    case 1914:  /* neon_vmovlsv4hi */
    case 1913:  /* neon_vmovluv8qi */
    case 1912:  /* neon_vmovlsv8qi */
    case 1902:  /* neon_vmovnv2di */
    case 1901:  /* neon_vmovnv4si */
    case 1900:  /* neon_vmovnv8hi */
    case 1230:  /* lshrdi3_neon_imm_noclobber */
    case 1229:  /* ashrdi3_neon_imm_noclobber */
    case 1228:  /* unsigned_shift_di3_neon */
    case 1227:  /* signed_shift_di3_neon */
    case 1225:  /* ashldi3_neon_noclobber */
    case 1221:  /* ashlv2si3_unsigned */
    case 1219:  /* ashlv4hi3_unsigned */
    case 1217:  /* ashlv8qi3_unsigned */
    case 1214:  /* ashlv2si3_signed */
    case 1212:  /* ashlv4hi3_signed */
    case 1210:  /* ashlv8qi3_signed */
    case 1209:  /* vlshrv4si3_imm */
    case 1208:  /* vlshrv2si3_imm */
    case 1207:  /* vlshrv8hi3_imm */
    case 1206:  /* vlshrv4hi3_imm */
    case 1205:  /* vlshrv16qi3_imm */
    case 1204:  /* vlshrv8qi3_imm */
    case 1203:  /* vashrv4si3_imm */
    case 1202:  /* vashrv2si3_imm */
    case 1201:  /* vashrv8hi3_imm */
    case 1200:  /* vashrv4hi3_imm */
    case 1199:  /* vashrv16qi3_imm */
    case 1198:  /* vashrv8qi3_imm */
    case 1196:  /* vashlv2si3 */
    case 1194:  /* vashlv4hi3 */
    case 1192:  /* vashlv8qi3 */
      return CORTEX_A8_NEON_TYPE_NEON_SHIFT_1;

    case 1967:  /* neon_vmlslu_lanev4hi */
    case 1966:  /* neon_vmlsls_lanev4hi */
    case 1955:  /* neon_vmlalu_lanev4hi */
    case 1954:  /* neon_vmlals_lanev4hi */
    case 1945:  /* neon_vqrdmlsh_lanev4hi */
    case 1944:  /* neon_vqrdmlah_lanev4hi */
      return CORTEX_A8_NEON_TYPE_NEON_MLA_DDD_16_SCALAR_QDD_32_16_LONG_SCALAR;

    case 1430:  /* neon_vqrdmulhv4si */
    case 1429:  /* neon_vqdmulhv4si */
    case 1393:  /* neon_vmulfv8hf */
      return CORTEX_A8_NEON_TYPE_NEON_MUL_QQD_32_SCALAR;

    case 1930:  /* neon_vqdmull_lanev4hi */
    case 1927:  /* neon_vmullu_lanev4hi */
    case 1926:  /* neon_vmulls_lanev4hi */
      return CORTEX_A8_NEON_TYPE_NEON_MUL_DDD_16_SCALAR_32_16_LONG_SCALAR;

    case 1943:  /* neon_vqrdmlsh_lanev4si */
    case 1942:  /* neon_vqrdmlah_lanev4si */
      return CORTEX_A8_NEON_TYPE_NEON_MLA_QQQ_32_QQD_32_SCALAR;

    case 1971:  /* neon_vqdmlsl_lanev2si */
    case 1969:  /* neon_vmlslu_lanev2si */
    case 1968:  /* neon_vmlsls_lanev2si */
    case 1959:  /* neon_vqdmlal_lanev2si */
    case 1957:  /* neon_vmlalu_lanev2si */
    case 1956:  /* neon_vmlals_lanev2si */
    case 1947:  /* neon_vqrdmlsh_lanev2si */
    case 1946:  /* neon_vqrdmlah_lanev2si */
    case 1941:  /* neon_vqrdmlsh_lanev8hi */
    case 1940:  /* neon_vqrdmlah_lanev8hi */
    case 1442:  /* neon_vqdmlslv2si */
    case 1440:  /* neon_vqdmlalv2si */
    case 1438:  /* neon_vqrdmlshv4si */
    case 1437:  /* neon_vqrdmlahv4si */
    case 1434:  /* neon_vqrdmlshv2si */
    case 1433:  /* neon_vqrdmlahv2si */
    case 1422:  /* neon_vmlsluv2si */
    case 1421:  /* neon_vmlslsv2si */
    case 1408:  /* neon_vmlaluv2si */
    case 1407:  /* neon_vmlalsv2si */
      return CORTEX_A8_NEON_TYPE_NEON_MLA_DDD_32_QQD_16_DDD_32_SCALAR_QDD_64_32_LONG_SCALAR_QDD_64_32_LONG;

    case 1970:  /* neon_vqdmlsl_lanev4hi */
    case 1958:  /* neon_vqdmlal_lanev4hi */
    case 1441:  /* neon_vqdmlslv4hi */
    case 1439:  /* neon_vqdmlalv4hi */
    case 1436:  /* neon_vqrdmlshv8hi */
    case 1435:  /* neon_vqrdmlahv8hi */
    case 1432:  /* neon_vqrdmlshv4hi */
    case 1431:  /* neon_vqrdmlahv4hi */
    case 1420:  /* neon_vmlsluv4hi */
    case 1419:  /* neon_vmlslsv4hi */
    case 1418:  /* neon_vmlsluv8qi */
    case 1417:  /* neon_vmlslsv8qi */
    case 1406:  /* neon_vmlaluv4hi */
    case 1405:  /* neon_vmlalsv4hi */
    case 1404:  /* neon_vmlaluv8qi */
    case 1403:  /* neon_vmlalsv8qi */
      return CORTEX_A8_NEON_TYPE_NEON_MLA_DDD_8_16_QDD_16_8_LONG_32_16_LONG;

    case 2518:  /* neon_vec_umult_v2si */
    case 2517:  /* neon_vec_smult_v2si */
    case 2500:  /* neon_vec_umult_hi_v4si */
    case 2499:  /* neon_vec_smult_hi_v4si */
    case 2494:  /* neon_vec_umult_lo_v4si */
    case 2493:  /* neon_vec_smult_lo_v4si */
    case 1937:  /* neon_vqrdmulh_lanev4hi */
    case 1936:  /* neon_vqdmulh_lanev4hi */
    case 1933:  /* neon_vqrdmulh_lanev8hi */
    case 1932:  /* neon_vqdmulh_lanev8hi */
    case 1931:  /* neon_vqdmull_lanev2si */
    case 1929:  /* neon_vmullu_lanev2si */
    case 1928:  /* neon_vmulls_lanev2si */
    case 1453:  /* neon_vqdmullv2si */
    case 1451:  /* neon_vmullpv2si */
    case 1450:  /* neon_vmulluv2si */
    case 1449:  /* neon_vmullsv2si */
    case 1426:  /* neon_vqrdmulhv2si */
    case 1425:  /* neon_vqdmulhv2si */
    case 1394:  /* neon_vmulfv4hf */
      return CORTEX_A8_NEON_TYPE_NEON_MUL_QDD_64_32_LONG_QQD_16_DDD_32_SCALAR_64_32_LONG_SCALAR;

    case 1428:  /* neon_vqrdmulhv8hi */
    case 1427:  /* neon_vqdmulhv8hi */
      return CORTEX_A8_NEON_TYPE_NEON_MUL_QQQ_8_16_32_DDD_32;

    case 2516:  /* neon_vec_umult_v4hi */
    case 2515:  /* neon_vec_smult_v4hi */
    case 2514:  /* neon_vec_umult_v8qi */
    case 2513:  /* neon_vec_smult_v8qi */
    case 2498:  /* neon_vec_umult_hi_v8hi */
    case 2497:  /* neon_vec_smult_hi_v8hi */
    case 2496:  /* neon_vec_umult_hi_v16qi */
    case 2495:  /* neon_vec_smult_hi_v16qi */
    case 2492:  /* neon_vec_umult_lo_v8hi */
    case 2491:  /* neon_vec_smult_lo_v8hi */
    case 2490:  /* neon_vec_umult_lo_v16qi */
    case 2489:  /* neon_vec_smult_lo_v16qi */
    case 1452:  /* neon_vqdmullv4hi */
    case 1448:  /* neon_vmullpv4hi */
    case 1447:  /* neon_vmulluv4hi */
    case 1446:  /* neon_vmullsv4hi */
    case 1445:  /* neon_vmullpv8qi */
    case 1444:  /* neon_vmulluv8qi */
    case 1443:  /* neon_vmullsv8qi */
    case 1424:  /* neon_vqrdmulhv4hi */
    case 1423:  /* neon_vqdmulhv4hi */
      return CORTEX_A8_NEON_TYPE_NEON_MUL_DDD_8_16_QDD_16_8_LONG_32_16_LONG;

    case 2512:  /* neon_unpacku_v2si */
    case 2511:  /* neon_unpacks_v2si */
    case 2510:  /* neon_unpacku_v4hi */
    case 2509:  /* neon_unpacks_v4hi */
    case 2508:  /* neon_unpacku_v8qi */
    case 2507:  /* neon_unpacks_v8qi */
    case 1128:  /* one_cmplv2di2 */
    case 1127:  /* one_cmplv4sf2 */
    case 1126:  /* one_cmplv2sf2 */
    case 1125:  /* one_cmplv8hf2 */
    case 1124:  /* one_cmplv4hf2 */
    case 1123:  /* one_cmplv4si2 */
    case 1122:  /* one_cmplv2si2 */
    case 1121:  /* one_cmplv8hi2 */
    case 1120:  /* one_cmplv4hi2 */
    case 1119:  /* one_cmplv16qi2 */
    case 1118:  /* one_cmplv8qi2 */
      return CORTEX_A8_NEON_TYPE_NEON_VMOV;

    case 1647:  /* neon_vabauv4si */
    case 1646:  /* neon_vabasv4si */
    case 1643:  /* neon_vabauv8hi */
    case 1642:  /* neon_vabasv8hi */
    case 1639:  /* neon_vabauv16qi */
    case 1638:  /* neon_vabasv16qi */
      return CORTEX_A8_NEON_TYPE_NEON_VABA_QQQ;

    case 1719:  /* neon_vpadaluv4si */
    case 1718:  /* neon_vpadalsv4si */
    case 1717:  /* neon_vpadaluv2si */
    case 1716:  /* neon_vpadalsv2si */
    case 1715:  /* neon_vpadaluv8hi */
    case 1714:  /* neon_vpadalsv8hi */
    case 1713:  /* neon_vpadaluv4hi */
    case 1712:  /* neon_vpadalsv4hi */
    case 1711:  /* neon_vpadaluv16qi */
    case 1710:  /* neon_vpadalsv16qi */
    case 1709:  /* neon_vpadaluv8qi */
    case 1708:  /* neon_vpadalsv8qi */
    case 1653:  /* neon_vabaluv2si */
    case 1652:  /* neon_vabalsv2si */
    case 1651:  /* neon_vabaluv4hi */
    case 1650:  /* neon_vabalsv4hi */
    case 1649:  /* neon_vabaluv8qi */
    case 1648:  /* neon_vabalsv8qi */
    case 1645:  /* neon_vabauv2si */
    case 1644:  /* neon_vabasv2si */
    case 1641:  /* neon_vabauv4hi */
    case 1640:  /* neon_vabasv4hi */
    case 1637:  /* neon_vabauv8qi */
    case 1636:  /* neon_vabasv8qi */
      return CORTEX_A8_NEON_TYPE_NEON_VABA;

    case 2012:  /* neon_vbslv2di_internal */
    case 2010:  /* neon_vbslv4sf_internal */
    case 2008:  /* neon_vbslv8hf_internal */
    case 2006:  /* neon_vbslv4si_internal */
    case 2004:  /* neon_vbslv8hi_internal */
    case 2002:  /* neon_vbslv16qi_internal */
    case 1774:  /* popcountv16qi2 */
    case 1772:  /* clzv4si2 */
    case 1770:  /* clzv8hi2 */
    case 1768:  /* clzv16qi2 */
    case 1766:  /* neon_vclsv4si */
    case 1764:  /* neon_vclsv8hi */
    case 1762:  /* neon_vclsv16qi */
      return CORTEX_A8_NEON_TYPE_NEON_BIT_OPS_Q;

    case 1760:  /* neon_vqnegv4si */
    case 1759:  /* neon_vqnegv2si */
    case 1758:  /* neon_vqnegv8hi */
    case 1757:  /* neon_vqnegv4hi */
    case 1756:  /* neon_vqnegv16qi */
    case 1755:  /* neon_vqnegv8qi */
    case 1749:  /* neon_vqabsv4si */
    case 1748:  /* neon_vqabsv2si */
    case 1747:  /* neon_vqabsv8hi */
    case 1746:  /* neon_vqabsv4hi */
    case 1745:  /* neon_vqabsv16qi */
    case 1744:  /* neon_vqabsv8qi */
      return CORTEX_A8_NEON_TYPE_NEON_VQNEG_VQABS;

    case 1731:  /* neon_vpminuv2si */
    case 1730:  /* neon_vpminsv2si */
    case 1729:  /* neon_vpmaxuv2si */
    case 1728:  /* neon_vpmaxsv2si */
    case 1727:  /* neon_vpminuv4hi */
    case 1726:  /* neon_vpminsv4hi */
    case 1725:  /* neon_vpmaxuv4hi */
    case 1724:  /* neon_vpmaxsv4hi */
    case 1723:  /* neon_vpminuv8qi */
    case 1722:  /* neon_vpminsv8qi */
    case 1721:  /* neon_vpmaxuv8qi */
    case 1720:  /* neon_vpmaxsv8qi */
    case 1687:  /* neon_vpminfv4hf */
    case 1686:  /* neon_vpmaxfv4hf */
    case 1677:  /* neon_vminuv4si */
    case 1676:  /* neon_vminsv4si */
    case 1675:  /* neon_vmaxuv4si */
    case 1674:  /* neon_vmaxsv4si */
    case 1673:  /* neon_vminuv2si */
    case 1672:  /* neon_vminsv2si */
    case 1671:  /* neon_vmaxuv2si */
    case 1670:  /* neon_vmaxsv2si */
    case 1669:  /* neon_vminuv8hi */
    case 1668:  /* neon_vminsv8hi */
    case 1667:  /* neon_vmaxuv8hi */
    case 1666:  /* neon_vmaxsv8hi */
    case 1665:  /* neon_vminuv4hi */
    case 1664:  /* neon_vminsv4hi */
    case 1663:  /* neon_vmaxuv4hi */
    case 1662:  /* neon_vmaxsv4hi */
    case 1661:  /* neon_vminuv16qi */
    case 1660:  /* neon_vminsv16qi */
    case 1659:  /* neon_vmaxuv16qi */
    case 1658:  /* neon_vmaxsv16qi */
    case 1657:  /* neon_vminuv8qi */
    case 1656:  /* neon_vminsv8qi */
    case 1655:  /* neon_vmaxuv8qi */
    case 1654:  /* neon_vmaxsv8qi */
    case 1635:  /* neon_vabdluv2si */
    case 1634:  /* neon_vabdlsv2si */
    case 1633:  /* neon_vabdluv4hi */
    case 1632:  /* neon_vabdlsv4hi */
    case 1631:  /* neon_vabdluv8qi */
    case 1630:  /* neon_vabdlsv8qi */
    case 1627:  /* neon_vabdv4hf */
    case 1626:  /* neon_vabdv8hf */
    case 1625:  /* neon_vabduv4si */
    case 1624:  /* neon_vabdsv4si */
    case 1623:  /* neon_vabduv2si */
    case 1622:  /* neon_vabdsv2si */
    case 1621:  /* neon_vabduv8hi */
    case 1620:  /* neon_vabdsv8hi */
    case 1619:  /* neon_vabduv4hi */
    case 1618:  /* neon_vabdsv4hi */
    case 1617:  /* neon_vabduv16qi */
    case 1616:  /* neon_vabdsv16qi */
    case 1615:  /* neon_vabduv8qi */
    case 1614:  /* neon_vabdsv8qi */
    case 1583:  /* neon_vcgeuv4si */
    case 1582:  /* neon_vcgtuv4si */
    case 1581:  /* neon_vcgeuv2si */
    case 1580:  /* neon_vcgtuv2si */
    case 1579:  /* neon_vcgeuv8hi */
    case 1578:  /* neon_vcgtuv8hi */
    case 1577:  /* neon_vcgeuv4hi */
    case 1576:  /* neon_vcgtuv4hi */
    case 1575:  /* neon_vcgeuv16qi */
    case 1574:  /* neon_vcgtuv16qi */
    case 1573:  /* neon_vcgeuv8qi */
    case 1572:  /* neon_vcgtuv8qi */
    case 1495:  /* neon_vhsubuv4si */
    case 1494:  /* neon_vhsubsv4si */
    case 1493:  /* neon_vhsubuv2si */
    case 1492:  /* neon_vhsubsv2si */
    case 1491:  /* neon_vhsubuv8hi */
    case 1490:  /* neon_vhsubsv8hi */
    case 1489:  /* neon_vhsubuv4hi */
    case 1488:  /* neon_vhsubsv4hi */
    case 1487:  /* neon_vhsubuv16qi */
    case 1486:  /* neon_vhsubsv16qi */
    case 1485:  /* neon_vhsubuv8qi */
    case 1484:  /* neon_vhsubsv8qi */
    case 1483:  /* neon_vqsubuv2di */
    case 1482:  /* neon_vqsubsv2di */
    case 1481:  /* neon_vqsubudi */
    case 1480:  /* neon_vqsubsdi */
    case 1479:  /* neon_vqsubuv4si */
    case 1478:  /* neon_vqsubsv4si */
    case 1477:  /* neon_vqsubuv2si */
    case 1476:  /* neon_vqsubsv2si */
    case 1475:  /* neon_vqsubuv8hi */
    case 1474:  /* neon_vqsubsv8hi */
    case 1473:  /* neon_vqsubuv4hi */
    case 1472:  /* neon_vqsubsv4hi */
    case 1471:  /* neon_vqsubuv16qi */
    case 1470:  /* neon_vqsubsv16qi */
    case 1469:  /* neon_vqsubuv8qi */
    case 1468:  /* neon_vqsubsv8qi */
    case 1328:  /* *us_subv2sf_neon */
    case 1327:  /* *us_subv2si_neon */
    case 1326:  /* *us_subv4hi_neon */
    case 1325:  /* *us_subv8qi_neon */
    case 1324:  /* *ss_subv2sf_neon */
    case 1323:  /* *ss_subv2si_neon */
    case 1322:  /* *ss_subv4hi_neon */
    case 1321:  /* *ss_subv8qi_neon */
    case 1312:  /* neon_vpumaxv2si */
    case 1311:  /* neon_vpumaxv4hi */
    case 1310:  /* neon_vpumaxv8qi */
    case 1309:  /* neon_vpuminv2si */
    case 1308:  /* neon_vpuminv4hi */
    case 1307:  /* neon_vpuminv8qi */
    case 1292:  /* quad_halves_umaxv16qi */
    case 1291:  /* quad_halves_uminv16qi */
    case 1290:  /* quad_halves_smaxv16qi */
    case 1289:  /* quad_halves_sminv16qi */
    case 1287:  /* quad_halves_umaxv8hi */
    case 1286:  /* quad_halves_uminv8hi */
    case 1285:  /* quad_halves_smaxv8hi */
    case 1284:  /* quad_halves_sminv8hi */
    case 1279:  /* quad_halves_umaxv4si */
    case 1278:  /* quad_halves_uminv4si */
    case 1277:  /* quad_halves_smaxv4si */
    case 1276:  /* quad_halves_sminv4si */
    case 1175:  /* *umaxv4si3_neon */
    case 1174:  /* *umaxv2si3_neon */
    case 1173:  /* *umaxv8hi3_neon */
    case 1172:  /* *umaxv4hi3_neon */
    case 1171:  /* *umaxv16qi3_neon */
    case 1170:  /* *umaxv8qi3_neon */
    case 1169:  /* *uminv4si3_neon */
    case 1168:  /* *uminv2si3_neon */
    case 1167:  /* *uminv8hi3_neon */
    case 1166:  /* *uminv4hi3_neon */
    case 1165:  /* *uminv16qi3_neon */
    case 1164:  /* *uminv8qi3_neon */
      return CORTEX_A8_NEON_TYPE_NEON_INT_5;

    case 1613:  /* neon_vtstv4si */
    case 1612:  /* neon_vtstv2si */
    case 1611:  /* neon_vtstv8hi */
    case 1610:  /* neon_vtstv4hi */
    case 1609:  /* neon_vtstv16qi */
    case 1608:  /* neon_vtstv8qi */
    case 1501:  /* neon_vrsubhnv2di */
    case 1500:  /* neon_vsubhnv2di */
    case 1499:  /* neon_vrsubhnv4si */
    case 1498:  /* neon_vsubhnv4si */
    case 1497:  /* neon_vrsubhnv8hi */
    case 1496:  /* neon_vsubhnv8hi */
    case 1388:  /* neon_vraddhnv2di */
    case 1387:  /* neon_vaddhnv2di */
    case 1386:  /* neon_vraddhnv4si */
    case 1385:  /* neon_vaddhnv4si */
    case 1384:  /* neon_vraddhnv8hi */
    case 1383:  /* neon_vaddhnv8hi */
    case 1382:  /* neon_vqadduv2di */
    case 1381:  /* neon_vqaddsv2di */
    case 1380:  /* neon_vqaddudi */
    case 1379:  /* neon_vqaddsdi */
    case 1378:  /* neon_vqadduv4si */
    case 1377:  /* neon_vqaddsv4si */
    case 1376:  /* neon_vqadduv2si */
    case 1375:  /* neon_vqaddsv2si */
    case 1374:  /* neon_vqadduv8hi */
    case 1373:  /* neon_vqaddsv8hi */
    case 1372:  /* neon_vqadduv4hi */
    case 1371:  /* neon_vqaddsv4hi */
    case 1370:  /* neon_vqadduv16qi */
    case 1369:  /* neon_vqaddsv16qi */
    case 1368:  /* neon_vqadduv8qi */
    case 1367:  /* neon_vqaddsv8qi */
    case 1366:  /* neon_vhadduv4si */
    case 1365:  /* neon_vhaddsv4si */
    case 1364:  /* neon_vrhadduv4si */
    case 1363:  /* neon_vrhaddsv4si */
    case 1362:  /* neon_vhadduv2si */
    case 1361:  /* neon_vhaddsv2si */
    case 1360:  /* neon_vrhadduv2si */
    case 1359:  /* neon_vrhaddsv2si */
    case 1358:  /* neon_vhadduv8hi */
    case 1357:  /* neon_vhaddsv8hi */
    case 1356:  /* neon_vrhadduv8hi */
    case 1355:  /* neon_vrhaddsv8hi */
    case 1354:  /* neon_vhadduv4hi */
    case 1353:  /* neon_vhaddsv4hi */
    case 1352:  /* neon_vrhadduv4hi */
    case 1351:  /* neon_vrhaddsv4hi */
    case 1350:  /* neon_vhadduv16qi */
    case 1349:  /* neon_vhaddsv16qi */
    case 1348:  /* neon_vrhadduv16qi */
    case 1347:  /* neon_vrhaddsv16qi */
    case 1346:  /* neon_vhadduv8qi */
    case 1345:  /* neon_vhaddsv8qi */
    case 1344:  /* neon_vrhadduv8qi */
    case 1343:  /* neon_vrhaddsv8qi */
    case 1320:  /* *us_addv2sf_neon */
    case 1319:  /* *us_addv2si_neon */
    case 1318:  /* *us_addv4hi_neon */
    case 1317:  /* *us_addv8qi_neon */
    case 1316:  /* *ss_addv2sf_neon */
    case 1315:  /* *ss_addv2si_neon */
    case 1314:  /* *ss_addv4hi_neon */
    case 1313:  /* *ss_addv8qi_neon */
    case 1149:  /* negv4hf2 */
    case 1148:  /* absv4hf2 */
    case 1147:  /* negv8hf2 */
    case 1146:  /* absv8hf2 */
      return CORTEX_A8_NEON_TYPE_NEON_INT_4;

    case 1707:  /* neon_vpaddluv4si */
    case 1706:  /* neon_vpaddlsv4si */
    case 1705:  /* neon_vpaddluv2si */
    case 1704:  /* neon_vpaddlsv2si */
    case 1703:  /* neon_vpaddluv8hi */
    case 1702:  /* neon_vpaddlsv8hi */
    case 1701:  /* neon_vpaddluv4hi */
    case 1700:  /* neon_vpaddlsv4hi */
    case 1699:  /* neon_vpaddluv16qi */
    case 1698:  /* neon_vpaddlsv16qi */
    case 1697:  /* neon_vpaddluv8qi */
    case 1696:  /* neon_vpaddlsv8qi */
    case 1461:  /* neon_vsubluv2si */
    case 1460:  /* neon_vsublsv2si */
    case 1459:  /* neon_vsubluv4hi */
    case 1458:  /* neon_vsublsv4hi */
    case 1457:  /* neon_vsubluv8qi */
    case 1456:  /* neon_vsublsv8qi */
    case 1336:  /* neon_vaddluv2si */
    case 1335:  /* neon_vaddlsv2si */
    case 1334:  /* neon_vaddluv4hi */
    case 1333:  /* neon_vaddlsv4hi */
    case 1332:  /* neon_vaddluv8qi */
    case 1331:  /* neon_vaddlsv8qi */
    case 1298:  /* neon_vpaddv4hf */
    case 1288:  /* quad_halves_plusv16qi */
    case 1283:  /* quad_halves_plusv8hi */
    case 1275:  /* quad_halves_plusv4si */
      return CORTEX_A8_NEON_TYPE_NEON_INT_3;

    case 1467:  /* neon_vsubwuv2si */
    case 1466:  /* neon_vsubwsv2si */
    case 1465:  /* neon_vsubwuv4hi */
    case 1464:  /* neon_vsubwsv4hi */
    case 1463:  /* neon_vsubwuv8qi */
    case 1462:  /* neon_vsubwsv8qi */
    case 1342:  /* neon_vaddwuv2si */
    case 1341:  /* neon_vaddwsv2si */
    case 1340:  /* neon_vaddwuv4hi */
    case 1339:  /* neon_vaddwsv4hi */
    case 1338:  /* neon_vaddwuv8qi */
    case 1337:  /* neon_vaddwsv8qi */
    case 1274:  /* widen_usumv2si3 */
    case 1273:  /* widen_usumv4hi3 */
    case 1272:  /* widen_usumv8qi3 */
    case 1271:  /* vec_sel_widen_usum_hiv4siv2si3 */
    case 1270:  /* vec_sel_widen_usum_hiv4siv4hi3 */
    case 1269:  /* vec_sel_widen_usum_hiv4siv8qi3 */
    case 1268:  /* vec_sel_widen_usum_hiv8hiv2si3 */
    case 1267:  /* vec_sel_widen_usum_hiv8hiv4hi3 */
    case 1266:  /* vec_sel_widen_usum_hiv8hiv8qi3 */
    case 1265:  /* vec_sel_widen_usum_hiv16qiv2si3 */
    case 1264:  /* vec_sel_widen_usum_hiv16qiv4hi3 */
    case 1263:  /* vec_sel_widen_usum_hiv16qiv8qi3 */
    case 1262:  /* vec_sel_widen_usum_lov4siv2si3 */
    case 1261:  /* vec_sel_widen_usum_lov4siv4hi3 */
    case 1260:  /* vec_sel_widen_usum_lov4siv8qi3 */
    case 1259:  /* vec_sel_widen_usum_lov8hiv2si3 */
    case 1258:  /* vec_sel_widen_usum_lov8hiv4hi3 */
    case 1257:  /* vec_sel_widen_usum_lov8hiv8qi3 */
    case 1256:  /* vec_sel_widen_usum_lov16qiv2si3 */
    case 1255:  /* vec_sel_widen_usum_lov16qiv4hi3 */
    case 1254:  /* vec_sel_widen_usum_lov16qiv8qi3 */
    case 1253:  /* widen_ssumv2si3 */
    case 1252:  /* widen_ssumv4hi3 */
    case 1251:  /* widen_ssumv8qi3 */
    case 1250:  /* vec_sel_widen_ssum_hiv4siv2si3 */
    case 1249:  /* vec_sel_widen_ssum_hiv4siv4hi3 */
    case 1248:  /* vec_sel_widen_ssum_hiv4siv8qi3 */
    case 1247:  /* vec_sel_widen_ssum_hiv8hiv2si3 */
    case 1246:  /* vec_sel_widen_ssum_hiv8hiv4hi3 */
    case 1245:  /* vec_sel_widen_ssum_hiv8hiv8qi3 */
    case 1244:  /* vec_sel_widen_ssum_hiv16qiv2si3 */
    case 1243:  /* vec_sel_widen_ssum_hiv16qiv4hi3 */
    case 1242:  /* vec_sel_widen_ssum_hiv16qiv8qi3 */
    case 1241:  /* vec_sel_widen_ssum_lov4siv2si3 */
    case 1240:  /* vec_sel_widen_ssum_lov4siv4hi3 */
    case 1239:  /* vec_sel_widen_ssum_lov4siv8qi3 */
    case 1238:  /* vec_sel_widen_ssum_lov8hiv2si3 */
    case 1237:  /* vec_sel_widen_ssum_lov8hiv4hi3 */
    case 1236:  /* vec_sel_widen_ssum_lov8hiv8qi3 */
    case 1235:  /* vec_sel_widen_ssum_lov16qiv2si3 */
    case 1234:  /* vec_sel_widen_ssum_lov16qiv4hi3 */
    case 1233:  /* vec_sel_widen_ssum_lov16qiv8qi3 */
    case 997:  /* subv4hf3_fp16 */
    case 996:  /* subv8hf3_fp16 */
      return CORTEX_A8_NEON_TYPE_NEON_INT_2;

    case 2011:  /* neon_vbsldi_internal */
    case 2009:  /* neon_vbslv2sf_internal */
    case 2007:  /* neon_vbslv4hf_internal */
    case 2005:  /* neon_vbslv2si_internal */
    case 2003:  /* neon_vbslv4hi_internal */
    case 2001:  /* neon_vbslv8qi_internal */
    case 1773:  /* popcountv8qi2 */
    case 1771:  /* clzv2si2 */
    case 1769:  /* clzv4hi2 */
    case 1767:  /* clzv8qi2 */
    case 1765:  /* neon_vclsv2si */
    case 1763:  /* neon_vclsv4hi */
    case 1761:  /* neon_vclsv8qi */
    case 1293:  /* arm_reduc_plus_internal_v2di */
    case 1117:  /* xorv2di3 */
    case 1116:  /* xorv4sf3 */
    case 1115:  /* xorv2sf3 */
    case 1114:  /* xorv8hf3 */
    case 1113:  /* xorv4hf3 */
    case 1112:  /* xorv4si3 */
    case 1111:  /* xorv2si3 */
    case 1110:  /* xorv8hi3 */
    case 1109:  /* xorv4hi3 */
    case 1108:  /* xorv16qi3 */
    case 1107:  /* xorv8qi3 */
    case 1105:  /* bicv2di3_neon */
    case 1104:  /* bicv4sf3_neon */
    case 1103:  /* bicv2sf3_neon */
    case 1102:  /* bicv8hf3_neon */
    case 1101:  /* bicv4hf3_neon */
    case 1100:  /* bicv4si3_neon */
    case 1099:  /* bicv2si3_neon */
    case 1098:  /* bicv8hi3_neon */
    case 1097:  /* bicv4hi3_neon */
    case 1096:  /* bicv16qi3_neon */
    case 1095:  /* bicv8qi3_neon */
    case 1093:  /* ornv2di3_neon */
    case 1092:  /* ornv4sf3_neon */
    case 1091:  /* ornv2sf3_neon */
    case 1090:  /* ornv8hf3_neon */
    case 1089:  /* ornv4hf3_neon */
    case 1088:  /* ornv4si3_neon */
    case 1087:  /* ornv2si3_neon */
    case 1086:  /* ornv8hi3_neon */
    case 1085:  /* ornv4hi3_neon */
    case 1084:  /* ornv16qi3_neon */
    case 1083:  /* ornv8qi3_neon */
    case 1082:  /* andv2di3 */
    case 1081:  /* andv4sf3 */
    case 1080:  /* andv2sf3 */
    case 1079:  /* andv8hf3 */
    case 1078:  /* andv4hf3 */
    case 1077:  /* andv4si3 */
    case 1076:  /* andv2si3 */
    case 1075:  /* andv8hi3 */
    case 1074:  /* andv4hi3 */
    case 1073:  /* andv16qi3 */
    case 1072:  /* andv8qi3 */
    case 1071:  /* iorv2di3 */
    case 1070:  /* iorv4sf3 */
    case 1069:  /* iorv2sf3 */
    case 1068:  /* iorv8hf3 */
    case 1067:  /* iorv4hf3 */
    case 1066:  /* iorv4si3 */
    case 1065:  /* iorv2si3 */
    case 1064:  /* iorv8hi3 */
    case 1063:  /* iorv4hi3 */
    case 1062:  /* iorv16qi3 */
    case 1061:  /* iorv8qi3 */
      return CORTEX_A8_NEON_TYPE_NEON_INT_1;

    default:
      return CORTEX_A8_NEON_TYPE_UNKNOWN;

    }
}

enum attr_cortex_a7_neon_type
get_attr_cortex_a7_neon_type (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  enum attr_type cached_type ATTRIBUTE_UNUSED;

  switch (recog_memoized (insn))
    {
    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
      if (((cached_type = get_attr_type (insn)) == TYPE_NEON_MUL_B) || ((cached_type == TYPE_NEON_MUL_B_Q) || ((cached_type == TYPE_NEON_MUL_H) || ((cached_type == TYPE_NEON_MUL_H_Q) || ((cached_type == TYPE_NEON_MUL_S) || ((cached_type == TYPE_NEON_MUL_S_Q) || ((cached_type == TYPE_NEON_MUL_B_LONG) || ((cached_type == TYPE_NEON_MUL_H_LONG) || ((cached_type == TYPE_NEON_MUL_S_LONG) || ((cached_type == TYPE_NEON_MUL_H_SCALAR) || ((cached_type == TYPE_NEON_MUL_H_SCALAR_Q) || ((cached_type == TYPE_NEON_MUL_S_SCALAR) || ((cached_type == TYPE_NEON_MUL_S_SCALAR_Q) || ((cached_type == TYPE_NEON_MUL_H_SCALAR_LONG) || ((cached_type == TYPE_NEON_MUL_S_SCALAR_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_B) || ((cached_type == TYPE_NEON_SAT_MUL_B_Q) || ((cached_type == TYPE_NEON_SAT_MUL_H) || ((cached_type == TYPE_NEON_SAT_MUL_H_Q) || ((cached_type == TYPE_NEON_SAT_MUL_S) || ((cached_type == TYPE_NEON_SAT_MUL_S_Q) || ((cached_type == TYPE_NEON_SAT_MUL_B_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_H_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_S_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_H_SCALAR) || ((cached_type == TYPE_NEON_SAT_MUL_H_SCALAR_Q) || ((cached_type == TYPE_NEON_SAT_MUL_S_SCALAR) || ((cached_type == TYPE_NEON_SAT_MUL_S_SCALAR_Q) || ((cached_type == TYPE_NEON_SAT_MUL_H_SCALAR_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_S_SCALAR_LONG) || ((cached_type == TYPE_NEON_FP_MUL_S) || ((cached_type == TYPE_NEON_FP_MUL_S_Q) || ((cached_type == TYPE_NEON_FP_MUL_S_SCALAR) || (cached_type == TYPE_NEON_FP_MUL_S_SCALAR_Q))))))))))))))))))))))))))))))))))
        {
	  return CORTEX_A7_NEON_TYPE_NEON_MUL;
        }
      else if ((cached_type == TYPE_NEON_MLA_B) || ((cached_type == TYPE_NEON_MLA_B_Q) || ((cached_type == TYPE_NEON_MLA_H) || ((cached_type == TYPE_NEON_MLA_H_Q) || ((cached_type == TYPE_NEON_MLA_S) || ((cached_type == TYPE_NEON_MLA_S_Q) || ((cached_type == TYPE_NEON_MLA_B_LONG) || ((cached_type == TYPE_NEON_MLA_H_LONG) || ((cached_type == TYPE_NEON_MLA_S_LONG) || ((cached_type == TYPE_NEON_MLA_H_SCALAR) || ((cached_type == TYPE_NEON_MLA_H_SCALAR_Q) || ((cached_type == TYPE_NEON_MLA_S_SCALAR) || ((cached_type == TYPE_NEON_MLA_S_SCALAR_Q) || ((cached_type == TYPE_NEON_MLA_H_SCALAR_LONG) || ((cached_type == TYPE_NEON_MLA_S_SCALAR_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_B_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_H_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_S_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_H_SCALAR_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_S_SCALAR_LONG) || ((cached_type == TYPE_NEON_FP_MLA_S) || ((cached_type == TYPE_NEON_FP_MLA_S_Q) || ((cached_type == TYPE_NEON_FP_MLA_S_SCALAR) || (cached_type == TYPE_NEON_FP_MLA_S_SCALAR_Q))))))))))))))))))))))))
        {
	  return CORTEX_A7_NEON_TYPE_NEON_MLA;
        }
      else
        {
	  return CORTEX_A7_NEON_TYPE_NEON_OTHER;
        }

    case 1971:  /* neon_vqdmlsl_lanev2si */
    case 1970:  /* neon_vqdmlsl_lanev4hi */
    case 1969:  /* neon_vmlslu_lanev2si */
    case 1968:  /* neon_vmlsls_lanev2si */
    case 1967:  /* neon_vmlslu_lanev4hi */
    case 1966:  /* neon_vmlsls_lanev4hi */
    case 1965:  /* neon_vmls_lanev4sf */
    case 1964:  /* neon_vmls_lanev4si */
    case 1963:  /* neon_vmls_lanev8hi */
    case 1962:  /* neon_vmls_lanev2sf */
    case 1961:  /* neon_vmls_lanev2si */
    case 1960:  /* neon_vmls_lanev4hi */
    case 1959:  /* neon_vqdmlal_lanev2si */
    case 1958:  /* neon_vqdmlal_lanev4hi */
    case 1957:  /* neon_vmlalu_lanev2si */
    case 1956:  /* neon_vmlals_lanev2si */
    case 1955:  /* neon_vmlalu_lanev4hi */
    case 1954:  /* neon_vmlals_lanev4hi */
    case 1953:  /* neon_vmla_lanev4sf */
    case 1952:  /* neon_vmla_lanev4si */
    case 1951:  /* neon_vmla_lanev8hi */
    case 1950:  /* neon_vmla_lanev2sf */
    case 1949:  /* neon_vmla_lanev2si */
    case 1948:  /* neon_vmla_lanev4hi */
    case 1947:  /* neon_vqrdmlsh_lanev2si */
    case 1946:  /* neon_vqrdmlah_lanev2si */
    case 1945:  /* neon_vqrdmlsh_lanev4hi */
    case 1944:  /* neon_vqrdmlah_lanev4hi */
    case 1943:  /* neon_vqrdmlsh_lanev4si */
    case 1942:  /* neon_vqrdmlah_lanev4si */
    case 1941:  /* neon_vqrdmlsh_lanev8hi */
    case 1940:  /* neon_vqrdmlah_lanev8hi */
    case 1442:  /* neon_vqdmlslv2si */
    case 1441:  /* neon_vqdmlslv4hi */
    case 1440:  /* neon_vqdmlalv2si */
    case 1439:  /* neon_vqdmlalv4hi */
    case 1438:  /* neon_vqrdmlshv4si */
    case 1437:  /* neon_vqrdmlahv4si */
    case 1436:  /* neon_vqrdmlshv8hi */
    case 1435:  /* neon_vqrdmlahv8hi */
    case 1434:  /* neon_vqrdmlshv2si */
    case 1433:  /* neon_vqrdmlahv2si */
    case 1432:  /* neon_vqrdmlshv4hi */
    case 1431:  /* neon_vqrdmlahv4hi */
    case 1422:  /* neon_vmlsluv2si */
    case 1421:  /* neon_vmlslsv2si */
    case 1420:  /* neon_vmlsluv4hi */
    case 1419:  /* neon_vmlslsv4hi */
    case 1418:  /* neon_vmlsluv8qi */
    case 1417:  /* neon_vmlslsv8qi */
    case 1416:  /* neon_vmlsv4sf_unspec */
    case 1415:  /* neon_vmlsv2sf_unspec */
    case 1414:  /* neon_vmlsv4si_unspec */
    case 1413:  /* neon_vmlsv2si_unspec */
    case 1412:  /* neon_vmlsv8hi_unspec */
    case 1411:  /* neon_vmlsv4hi_unspec */
    case 1410:  /* neon_vmlsv16qi_unspec */
    case 1409:  /* neon_vmlsv8qi_unspec */
    case 1408:  /* neon_vmlaluv2si */
    case 1407:  /* neon_vmlalsv2si */
    case 1406:  /* neon_vmlaluv4hi */
    case 1405:  /* neon_vmlalsv4hi */
    case 1404:  /* neon_vmlaluv8qi */
    case 1403:  /* neon_vmlalsv8qi */
    case 1402:  /* neon_vmlav4sf_unspec */
    case 1401:  /* neon_vmlav2sf_unspec */
    case 1400:  /* neon_vmlav4si_unspec */
    case 1399:  /* neon_vmlav2si_unspec */
    case 1398:  /* neon_vmlav8hi_unspec */
    case 1397:  /* neon_vmlav4hi_unspec */
    case 1396:  /* neon_vmlav16qi_unspec */
    case 1395:  /* neon_vmlav8qi_unspec */
    case 1036:  /* fmsubv4hf4_intrinsic */
    case 1035:  /* fmsubv8hf4_intrinsic */
    case 1034:  /* fmsubv4sf4_intrinsic */
    case 1033:  /* fmsubv2sf4_intrinsic */
    case 1032:  /* *fmsubv4sf4 */
    case 1031:  /* *fmsubv2sf4 */
    case 1030:  /* fmav4hf4_intrinsic */
    case 1029:  /* fmav8hf4_intrinsic */
    case 1028:  /* fmav4sf4_intrinsic */
    case 1027:  /* fmav2sf4_intrinsic */
    case 1026:  /* fmav4sf4 */
    case 1025:  /* fmav2sf4 */
    case 1024:  /* mulv4sf3negv4sfaddv4sf_neon */
    case 1023:  /* mulv2sf3negv2sfaddv2sf_neon */
    case 1022:  /* mulv4si3negv4siaddv4si_neon */
    case 1021:  /* mulv2si3negv2siaddv2si_neon */
    case 1020:  /* mulv8hi3negv8hiaddv8hi_neon */
    case 1019:  /* mulv4hi3negv4hiaddv4hi_neon */
    case 1018:  /* mulv16qi3negv16qiaddv16qi_neon */
    case 1017:  /* mulv8qi3negv8qiaddv8qi_neon */
    case 1016:  /* mulv4hf3addv4hf_neon */
    case 1015:  /* mulv8hf3addv8hf_neon */
    case 1014:  /* mulv4sf3addv4sf_neon */
    case 1013:  /* mulv2sf3addv2sf_neon */
    case 1012:  /* mulv4si3addv4si_neon */
    case 1011:  /* mulv2si3addv2si_neon */
    case 1010:  /* mulv8hi3addv8hi_neon */
    case 1009:  /* mulv4hi3addv4hi_neon */
    case 1008:  /* mulv16qi3addv16qi_neon */
    case 1007:  /* mulv8qi3addv8qi_neon */
      return CORTEX_A7_NEON_TYPE_NEON_MLA;

    case 2518:  /* neon_vec_umult_v2si */
    case 2517:  /* neon_vec_smult_v2si */
    case 2516:  /* neon_vec_umult_v4hi */
    case 2515:  /* neon_vec_smult_v4hi */
    case 2514:  /* neon_vec_umult_v8qi */
    case 2513:  /* neon_vec_smult_v8qi */
    case 2500:  /* neon_vec_umult_hi_v4si */
    case 2499:  /* neon_vec_smult_hi_v4si */
    case 2498:  /* neon_vec_umult_hi_v8hi */
    case 2497:  /* neon_vec_smult_hi_v8hi */
    case 2496:  /* neon_vec_umult_hi_v16qi */
    case 2495:  /* neon_vec_smult_hi_v16qi */
    case 2494:  /* neon_vec_umult_lo_v4si */
    case 2493:  /* neon_vec_smult_lo_v4si */
    case 2492:  /* neon_vec_umult_lo_v8hi */
    case 2491:  /* neon_vec_smult_lo_v8hi */
    case 2490:  /* neon_vec_umult_lo_v16qi */
    case 2489:  /* neon_vec_smult_lo_v16qi */
    case 1939:  /* neon_vqrdmulh_lanev2si */
    case 1938:  /* neon_vqdmulh_lanev2si */
    case 1937:  /* neon_vqrdmulh_lanev4hi */
    case 1936:  /* neon_vqdmulh_lanev4hi */
    case 1935:  /* neon_vqrdmulh_lanev4si */
    case 1934:  /* neon_vqdmulh_lanev4si */
    case 1933:  /* neon_vqrdmulh_lanev8hi */
    case 1932:  /* neon_vqdmulh_lanev8hi */
    case 1931:  /* neon_vqdmull_lanev2si */
    case 1930:  /* neon_vqdmull_lanev4hi */
    case 1929:  /* neon_vmullu_lanev2si */
    case 1928:  /* neon_vmulls_lanev2si */
    case 1927:  /* neon_vmullu_lanev4hi */
    case 1926:  /* neon_vmulls_lanev4hi */
    case 1925:  /* neon_vmul_lanev4hf */
    case 1924:  /* neon_vmul_lanev8hf */
    case 1923:  /* neon_vmul_lanev4sf */
    case 1922:  /* neon_vmul_lanev4si */
    case 1921:  /* neon_vmul_lanev8hi */
    case 1920:  /* neon_vmul_lanev2sf */
    case 1919:  /* neon_vmul_lanev2si */
    case 1918:  /* neon_vmul_lanev4hi */
    case 1453:  /* neon_vqdmullv2si */
    case 1452:  /* neon_vqdmullv4hi */
    case 1451:  /* neon_vmullpv2si */
    case 1450:  /* neon_vmulluv2si */
    case 1449:  /* neon_vmullsv2si */
    case 1448:  /* neon_vmullpv4hi */
    case 1447:  /* neon_vmulluv4hi */
    case 1446:  /* neon_vmullsv4hi */
    case 1445:  /* neon_vmullpv8qi */
    case 1444:  /* neon_vmulluv8qi */
    case 1443:  /* neon_vmullsv8qi */
    case 1430:  /* neon_vqrdmulhv4si */
    case 1429:  /* neon_vqdmulhv4si */
    case 1428:  /* neon_vqrdmulhv8hi */
    case 1427:  /* neon_vqdmulhv8hi */
    case 1426:  /* neon_vqrdmulhv2si */
    case 1425:  /* neon_vqdmulhv2si */
    case 1424:  /* neon_vqrdmulhv4hi */
    case 1423:  /* neon_vqdmulhv4hi */
    case 1394:  /* neon_vmulfv4hf */
    case 1393:  /* neon_vmulfv8hf */
    case 1392:  /* neon_vmulfv4sf */
    case 1391:  /* neon_vmulfv2sf */
    case 1390:  /* neon_vmulpv16qi */
    case 1389:  /* neon_vmulpv8qi */
    case 1006:  /* *mulv4sf3_neon */
    case 1005:  /* *mulv2sf3_neon */
    case 1004:  /* *mulv4si3_neon */
    case 1003:  /* *mulv2si3_neon */
    case 1002:  /* *mulv8hi3_neon */
    case 1001:  /* *mulv4hi3_neon */
    case 1000:  /* *mulv16qi3_neon */
    case 999:  /* *mulv8qi3_neon */
      return CORTEX_A7_NEON_TYPE_NEON_MUL;

    default:
      return CORTEX_A7_NEON_TYPE_NEON_OTHER;

    }
}

int
get_attr_ce_count (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  switch (recog_memoized (insn))
    {
    case 633:  /* *movdi_vfp_cortexa8 */
    case 4010:  /* *p *movdi_vfp_cortexa8 */
      extract_constrain_insn_cached (insn);
      return 
#line 403 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/vfp.md"
(get_attr_length (insn) / 4);

    case 114:  /* *andsi_iorsi3_notsi */
    case 160:  /* zero_extendqidi2 */
    case 161:  /* zero_extendhidi2 */
    case 162:  /* zero_extendsidi2 */
    case 163:  /* extendqidi2 */
    case 164:  /* extendhidi2 */
    case 165:  /* extendsidi2 */
    case 727:  /* *combine_vcvt_f64_u32 */
    case 728:  /* *combine_vcvt_f64_s32 */
    case 852:  /* *thumb2_abssi2 */
    case 853:  /* *thumb2_neg_abssi2 */
    case 3644:  /* *p *andsi_iorsi3_notsi */
    case 3672:  /* *p zero_extendqidi2 */
    case 3673:  /* *p zero_extendhidi2 */
    case 3674:  /* *p zero_extendsidi2 */
    case 3675:  /* *p extendqidi2 */
    case 3676:  /* *p extendhidi2 */
    case 3677:  /* *p extendsidi2 */
    case 4067:  /* *p *combine_vcvt_f64_u32 */
    case 4068:  /* *p *combine_vcvt_f64_s32 */
    case 4077:  /* *p *thumb2_abssi2 */
    case 4078:  /* *p *thumb2_neg_abssi2 */
      return 2;

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
    default:
      return 1;

    }
}

enum attr_core_cycles
get_attr_core_cycles (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  enum attr_type cached_type ATTRIBUTE_UNUSED;

  switch (recog_memoized (insn))
    {
    case 894:  /* *thumb2_addsi3_compare0_scratch */
    case 893:  /* thumb2_addsi3_compare0 */
      if (((cached_type = get_attr_type (insn)) == TYPE_ALUS_IMM) || (cached_type == TYPE_ALUS_SREG))
        {
	  return CORE_CYCLES_SINGLE;
        }
      else
        {
	  return CORE_CYCLES_MULTI;
        }

    case 784:  /* *thumb1_addsi3 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7f))
        {
	  return CORE_CYCLES_SINGLE;
        }
      else
        {
	  return CORE_CYCLES_MULTI;
        }

    case 3793:  /* *p movv8qi_internal */
    case 3792:  /* *p movv4hi_internal */
    case 3791:  /* *p movv2si_internal */
    case 415:  /* movv8qi_internal */
    case 414:  /* movv4hi_internal */
    case 413:  /* movv2si_internal */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x1f))
        {
	  return CORE_CYCLES_SINGLE;
        }
      else
        {
	  return CORE_CYCLES_MULTI;
        }

    case 3701:  /* *p *arm_cmpsi_negshiftsi_si */
    case 199:  /* *arm_cmpsi_negshiftsi_si */
      if (((cached_type = get_attr_type (insn)) == TYPE_ALUS_SHIFT_IMM) || (cached_type == TYPE_ALUS_SHIFT_REG))
        {
	  return CORE_CYCLES_SINGLE;
        }
      else
        {
	  return CORE_CYCLES_MULTI;
        }

    case 3643:  /* *p *arm_xorsi3 */
    case 111:  /* *arm_xorsi3 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7))
        {
	  return CORE_CYCLES_SINGLE;
        }
      else
        {
	  return CORE_CYCLES_MULTI;
        }

    case 4084:  /* *p thumb2_zero_extendqisi2_v6 */
    case 4083:  /* *p *thumb2_zero_extendhisi2_v6 */
    case 4082:  /* *p *thumb2_extendqisi_v6 */
    case 3789:  /* *p iwmmxt_anddi3 */
    case 3788:  /* *p iwmmxt_xordi3 */
    case 3787:  /* *p iwmmxt_iordi3 */
    case 3689:  /* *p *arm_extendqisi_v6 */
    case 3688:  /* *p *arm_extendqisi */
    case 3686:  /* *p *arm_extendhisi2_v6 */
    case 3685:  /* *p *arm_extendhisi2 */
    case 3682:  /* *p *arm_zero_extendqisi2_v6 */
    case 3681:  /* *p *arm_zero_extendqisi2 */
    case 3679:  /* *p *arm_zero_extendhisi2_v6 */
    case 3678:  /* *p *arm_zero_extendhisi2 */
    case 3638:  /* *p *iordi_zesidi_di */
    case 881:  /* thumb2_zero_extendqisi2_v6 */
    case 880:  /* *thumb2_zero_extendhisi2_v6 */
    case 879:  /* *thumb2_extendqisi_v6 */
    case 812:  /* *thumb1_movsf_insn */
    case 810:  /* *thumb1_movqi_insn */
    case 809:  /* *thumb1_movhi_insn */
    case 806:  /* thumb1_extendqisi2 */
    case 805:  /* thumb1_extendhisi2 */
    case 804:  /* *thumb1_zero_extendqisi2_v6 */
    case 803:  /* *thumb1_zero_extendqisi2 */
    case 802:  /* *thumb1_zero_extendhisi2 */
    case 795:  /* *thumb1_lshrsi3 */
    case 794:  /* *thumb1_ashrsi3 */
    case 793:  /* *thumb1_ashlsi3 */
    case 408:  /* iwmmxt_anddi3 */
    case 407:  /* iwmmxt_xordi3 */
    case 406:  /* iwmmxt_iordi3 */
    case 254:  /* *ior_scc */
    case 178:  /* *arm_extendqisi_v6 */
    case 177:  /* *arm_extendqisi */
    case 174:  /* *arm_extendhisi2_v6 */
    case 173:  /* *arm_extendhisi2 */
    case 170:  /* *arm_zero_extendqisi2_v6 */
    case 169:  /* *arm_zero_extendqisi2 */
    case 167:  /* *arm_zero_extendhisi2_v6 */
    case 166:  /* *arm_zero_extendhisi2 */
    case 134:  /* *shiftsi3_compare0_scratch */
    case 103:  /* *iordi_zesidi_di */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CORE_CYCLES_SINGLE;
        }
      else
        {
	  return CORE_CYCLES_MULTI;
        }

    case 3637:  /* *p andsi_not_shiftsi_si_scc */
    case 3636:  /* *p andsi_not_shiftsi_si_scc_no_reuse */
    case 3635:  /* *p andsi_not_shiftsi_si */
    case 99:  /* andsi_not_shiftsi_si_scc */
    case 98:  /* andsi_not_shiftsi_si_scc_no_reuse */
    case 97:  /* andsi_not_shiftsi_si */
      if (((cached_type = get_attr_type (insn)) == TYPE_LOGIC_SHIFT_IMM) || (cached_type == TYPE_LOGIC_SHIFT_REG))
        {
	  return CORE_CYCLES_SINGLE;
        }
      else
        {
	  return CORE_CYCLES_MULTI;
        }

    case 3598:  /* *p *arm_subsi3_insn */
    case 41:  /* *arm_subsi3_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0xff))
        {
	  return CORE_CYCLES_SINGLE;
        }
      else
        {
	  return CORE_CYCLES_MULTI;
        }

    case 4086:  /* *p *thumb2_shiftsi3_short */
    case 3597:  /* *p *rsbsi3_carryin_shift */
    case 3596:  /* *p *subsi3_carryin_shift */
    case 3594:  /* *p *addsi3_carryin_shift_geu */
    case 3593:  /* *p *addsi3_carryin_shift_ltu */
    case 887:  /* *thumb2_shiftsi3_short */
    case 280:  /* *if_move_arith */
    case 278:  /* *if_arith_move */
    case 34:  /* *rsbsi3_carryin_shift */
    case 33:  /* *subsi3_carryin_shift */
    case 24:  /* *addsi3_carryin_shift_geu */
    case 23:  /* *addsi3_carryin_shift_ltu */
      if (((cached_type = get_attr_type (insn)) == TYPE_ALU_SHIFT_IMM) || (cached_type == TYPE_ALU_SHIFT_REG))
        {
	  return CORE_CYCLES_SINGLE;
        }
      else
        {
	  return CORE_CYCLES_MULTI;
        }

    case 4090:  /* *p *thumb2_addsi_short */
    case 3584:  /* *p *arm_addsi3 */
    case 891:  /* *thumb2_addsi_short */
    case 274:  /* *if_move_plus */
    case 272:  /* *if_plus_move */
    case 4:  /* *arm_addsi3 */
      if (((cached_type = get_attr_type (insn)) == TYPE_ALU_IMM) || (cached_type == TYPE_ALU_SREG))
        {
	  return CORE_CYCLES_SINGLE;
        }
      else
        {
	  return CORE_CYCLES_MULTI;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
      if (((cached_type = get_attr_type (insn)) == TYPE_ADC_IMM) || ((cached_type == TYPE_ADC_REG) || ((cached_type == TYPE_ADCS_IMM) || ((cached_type == TYPE_ADCS_REG) || ((cached_type == TYPE_ADR) || ((cached_type == TYPE_ALU_EXT) || ((cached_type == TYPE_ALU_IMM) || ((cached_type == TYPE_ALU_SREG) || ((cached_type == TYPE_ALU_SHIFT_IMM) || ((cached_type == TYPE_ALU_SHIFT_REG) || ((cached_type == TYPE_ALU_DSP_REG) || ((cached_type == TYPE_ALUS_EXT) || ((cached_type == TYPE_ALUS_IMM) || ((cached_type == TYPE_ALUS_SREG) || ((cached_type == TYPE_ALUS_SHIFT_IMM) || ((cached_type == TYPE_ALUS_SHIFT_REG) || ((cached_type == TYPE_BFM) || ((cached_type == TYPE_CSEL) || ((cached_type == TYPE_REV) || ((cached_type == TYPE_LOGIC_IMM) || ((cached_type == TYPE_LOGIC_REG) || ((cached_type == TYPE_LOGIC_SHIFT_IMM) || ((cached_type == TYPE_LOGIC_SHIFT_REG) || ((cached_type == TYPE_LOGICS_IMM) || ((cached_type == TYPE_LOGICS_REG) || ((cached_type == TYPE_LOGICS_SHIFT_IMM) || ((cached_type == TYPE_LOGICS_SHIFT_REG) || ((cached_type == TYPE_EXTEND) || ((cached_type == TYPE_SHIFT_IMM) || ((cached_type == TYPE_FLOAT) || ((cached_type == TYPE_FCSEL) || ((cached_type == TYPE_WMMX_WOR) || ((cached_type == TYPE_WMMX_WXOR) || ((cached_type == TYPE_WMMX_WAND) || ((cached_type == TYPE_WMMX_WANDN) || ((cached_type == TYPE_WMMX_WMOV) || ((cached_type == TYPE_WMMX_TMCRR) || ((cached_type == TYPE_WMMX_TMRRC) || ((cached_type == TYPE_WMMX_WLDR) || ((cached_type == TYPE_WMMX_WSTR) || ((cached_type == TYPE_WMMX_TMCR) || ((cached_type == TYPE_WMMX_TMRC) || ((cached_type == TYPE_WMMX_WADD) || ((cached_type == TYPE_WMMX_WSUB) || ((cached_type == TYPE_WMMX_WMUL) || ((cached_type == TYPE_WMMX_WMAC) || ((cached_type == TYPE_WMMX_WAVG2) || ((cached_type == TYPE_WMMX_TINSR) || ((cached_type == TYPE_WMMX_TEXTRM) || ((cached_type == TYPE_WMMX_WSHUFH) || ((cached_type == TYPE_WMMX_WCMPEQ) || ((cached_type == TYPE_WMMX_WCMPGT) || ((cached_type == TYPE_WMMX_WMAX) || ((cached_type == TYPE_WMMX_WMIN) || ((cached_type == TYPE_WMMX_WPACK) || ((cached_type == TYPE_WMMX_WUNPCKIH) || ((cached_type == TYPE_WMMX_WUNPCKIL) || ((cached_type == TYPE_WMMX_WUNPCKEH) || ((cached_type == TYPE_WMMX_WUNPCKEL) || ((cached_type == TYPE_WMMX_WROR) || ((cached_type == TYPE_WMMX_WSRA) || ((cached_type == TYPE_WMMX_WSRL) || ((cached_type == TYPE_WMMX_WSLL) || ((cached_type == TYPE_WMMX_WMADD) || ((cached_type == TYPE_WMMX_TMIA) || ((cached_type == TYPE_WMMX_TMIAPH) || ((cached_type == TYPE_WMMX_TMIAXY) || ((cached_type == TYPE_WMMX_TBCST) || ((cached_type == TYPE_WMMX_TMOVMSK) || ((cached_type == TYPE_WMMX_WACC) || ((cached_type == TYPE_WMMX_WALIGNI) || ((cached_type == TYPE_WMMX_WALIGNR) || ((cached_type == TYPE_WMMX_TANDC) || ((cached_type == TYPE_WMMX_TEXTRC) || ((cached_type == TYPE_WMMX_TORC) || ((cached_type == TYPE_WMMX_TORVSC) || ((cached_type == TYPE_WMMX_WSAD) || ((cached_type == TYPE_WMMX_WABS) || ((cached_type == TYPE_WMMX_WABSDIFF) || ((cached_type == TYPE_WMMX_WADDSUBHX) || ((cached_type == TYPE_WMMX_WSUBADDHX) || ((cached_type == TYPE_WMMX_WAVG4) || ((cached_type == TYPE_WMMX_WMULW) || ((cached_type == TYPE_WMMX_WQMULM) || ((cached_type == TYPE_WMMX_WQMULWM) || ((cached_type == TYPE_WMMX_WADDBHUS) || ((cached_type == TYPE_WMMX_WQMIAXY) || ((cached_type == TYPE_WMMX_WMIAXY) || ((cached_type == TYPE_WMMX_WMIAWXY) || (cached_type == TYPE_WMMX_WMERGE))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
        {
	  return CORE_CYCLES_SINGLE;
        }
      else
        {
	  return CORE_CYCLES_MULTI;
        }

    case 4179:  /* *p arm_usatsihi */
    case 4178:  /* *p arm_ssatsihi_shift */
    case 4177:  /* *p sssubsa3 */
    case 4176:  /* *p sssubsq3 */
    case 4175:  /* *p sssubha3 */
    case 4174:  /* *p sssubv2ha3 */
    case 4173:  /* *p sssubhq3 */
    case 4172:  /* *p sssubqq3 */
    case 4171:  /* *p sssubv2hq3 */
    case 4170:  /* *p sssubv4qq3 */
    case 4169:  /* *p ussubuha3 */
    case 4168:  /* *p ussubv2uha3 */
    case 4167:  /* *p ussubuhq3 */
    case 4166:  /* *p ussubuqq3 */
    case 4165:  /* *p ussubv2uhq3 */
    case 4164:  /* *p ussubv4uqq3 */
    case 4163:  /* *p subv2ha3 */
    case 4162:  /* *p subv2hq3 */
    case 4161:  /* *p subv4qq3 */
    case 4160:  /* *p subusa3 */
    case 4159:  /* *p subuha3 */
    case 4158:  /* *p subsa3 */
    case 4157:  /* *p subha3 */
    case 4156:  /* *p subusq3 */
    case 4155:  /* *p subuhq3 */
    case 4154:  /* *p subuqq3 */
    case 4153:  /* *p subsq3 */
    case 4152:  /* *p subhq3 */
    case 4151:  /* *p subqq3 */
    case 4150:  /* *p ssaddsa3 */
    case 4149:  /* *p ssaddsq3 */
    case 4148:  /* *p ssaddha3 */
    case 4147:  /* *p ssaddv2ha3 */
    case 4146:  /* *p ssaddhq3 */
    case 4145:  /* *p ssaddqq3 */
    case 4144:  /* *p ssaddv2hq3 */
    case 4143:  /* *p ssaddv4qq3 */
    case 4142:  /* *p usadduha3 */
    case 4141:  /* *p usaddv2uha3 */
    case 4140:  /* *p usadduhq3 */
    case 4139:  /* *p usadduqq3 */
    case 4138:  /* *p usaddv2uhq3 */
    case 4137:  /* *p usaddv4uqq3 */
    case 4136:  /* *p addv2ha3 */
    case 4135:  /* *p addv2hq3 */
    case 4134:  /* *p addv4qq3 */
    case 4133:  /* *p addusa3 */
    case 4132:  /* *p adduha3 */
    case 4131:  /* *p addsa3 */
    case 4130:  /* *p addha3 */
    case 4129:  /* *p addusq3 */
    case 4128:  /* *p adduhq3 */
    case 4127:  /* *p adduqq3 */
    case 4126:  /* *p addsq3 */
    case 4125:  /* *p addhq3 */
    case 4124:  /* *p addqq3 */
    case 4100:  /* *p *orsi_not_shiftsi_si */
    case 4099:  /* *p *orsi_notsi_si */
    case 4094:  /* *p *thumb2_negsi2_short */
    case 4091:  /* *p *thumb2_subsi_short */
    case 4085:  /* *p *thumb2_alusi3_short */
    case 4076:  /* *p *thumb_andsi_not_shiftsi_si */
    case 4003:  /* *p iwmmxt_textrcv8qi3 */
    case 4002:  /* *p iwmmxt_textrcv4hi3 */
    case 4001:  /* *p iwmmxt_textrcv2si3 */
    case 4000:  /* *p iwmmxt_torvscv8qi3 */
    case 3999:  /* *p iwmmxt_torvscv4hi3 */
    case 3998:  /* *p iwmmxt_torvscv2si3 */
    case 3997:  /* *p iwmmxt_torcv8qi3 */
    case 3996:  /* *p iwmmxt_torcv4hi3 */
    case 3995:  /* *p iwmmxt_torcv2si3 */
    case 3994:  /* *p iwmmxt_tandcv8qi3 */
    case 3993:  /* *p iwmmxt_tandcv4hi3 */
    case 3992:  /* *p iwmmxt_tandcv2si3 */
    case 3991:  /* *p iwmmxt_wmerge */
    case 3990:  /* *p iwmmxt_wmiawttn */
    case 3989:  /* *p iwmmxt_wmiawtbn */
    case 3988:  /* *p iwmmxt_wmiawbtn */
    case 3987:  /* *p iwmmxt_wmiawbbn */
    case 3986:  /* *p iwmmxt_wmiawtt */
    case 3985:  /* *p iwmmxt_wmiawtb */
    case 3984:  /* *p iwmmxt_wmiawbt */
    case 3983:  /* *p iwmmxt_wmiawbb */
    case 3982:  /* *p iwmmxt_wmiattn */
    case 3981:  /* *p iwmmxt_wmiatbn */
    case 3980:  /* *p iwmmxt_wmiabtn */
    case 3979:  /* *p iwmmxt_wmiabbn */
    case 3978:  /* *p iwmmxt_wmiatt */
    case 3977:  /* *p iwmmxt_wmiatb */
    case 3976:  /* *p iwmmxt_wmiabt */
    case 3975:  /* *p iwmmxt_wmiabb */
    case 3974:  /* *p iwmmxt_wqmiattn */
    case 3973:  /* *p iwmmxt_wqmiatbn */
    case 3972:  /* *p iwmmxt_wqmiabtn */
    case 3971:  /* *p iwmmxt_wqmiabbn */
    case 3970:  /* *p iwmmxt_wqmiatt */
    case 3969:  /* *p iwmmxt_wqmiatb */
    case 3968:  /* *p iwmmxt_wqmiabt */
    case 3967:  /* *p iwmmxt_wqmiabb */
    case 3966:  /* *p iwmmxt_waddbhusl */
    case 3965:  /* *p iwmmxt_waddbhusm */
    case 3964:  /* *p iwmmxt_wqmulwmr */
    case 3963:  /* *p iwmmxt_wqmulmr */
    case 3962:  /* *p iwmmxt_wqmulwm */
    case 3961:  /* *p iwmmxt_wqmulm */
    case 3960:  /* *p iwmmxt_wmulwl */
    case 3959:  /* *p iwmmxt_wmulwumr */
    case 3958:  /* *p iwmmxt_wmulwsmr */
    case 3957:  /* *p iwmmxt_wmulumr */
    case 3956:  /* *p iwmmxt_wmulsmr */
    case 3955:  /* *p iwmmxt_wmulwum */
    case 3954:  /* *p iwmmxt_wmulwsm */
    case 3953:  /* *p iwmmxt_wmaddun */
    case 3952:  /* *p iwmmxt_wmaddsn */
    case 3951:  /* *p iwmmxt_wmaddux */
    case 3950:  /* *p iwmmxt_wmaddsx */
    case 3949:  /* *p iwmmxt_avg4r */
    case 3948:  /* *p iwmmxt_avg4 */
    case 3947:  /* *p addcv2si3 */
    case 3946:  /* *p addcv4hi3 */
    case 3945:  /* *p iwmmxt_wsubaddhx */
    case 3944:  /* *p iwmmxt_waddsubhx */
    case 3943:  /* *p iwmmxt_wabsdiffw */
    case 3942:  /* *p iwmmxt_wabsdiffh */
    case 3941:  /* *p iwmmxt_wabsdiffb */
    case 3940:  /* *p iwmmxt_wabsv8qi3 */
    case 3939:  /* *p iwmmxt_wabsv4hi3 */
    case 3938:  /* *p iwmmxt_wabsv2si3 */
    case 3937:  /* *p iwmmxt_wsadhz */
    case 3936:  /* *p iwmmxt_wsadbz */
    case 3935:  /* *p iwmmxt_wsadh */
    case 3934:  /* *p iwmmxt_wsadb */
    case 3933:  /* *p iwmmxt_walignr3 */
    case 3932:  /* *p iwmmxt_walignr2 */
    case 3931:  /* *p iwmmxt_walignr1 */
    case 3930:  /* *p iwmmxt_walignr0 */
    case 3929:  /* *p iwmmxt_walignr */
    case 3928:  /* *p iwmmxt_waligni */
    case 3927:  /* *p iwmmxt_waccw */
    case 3926:  /* *p iwmmxt_wacch */
    case 3925:  /* *p iwmmxt_waccb */
    case 3924:  /* *p iwmmxt_tmovmskw */
    case 3923:  /* *p iwmmxt_tmovmskh */
    case 3922:  /* *p iwmmxt_tmovmskb */
    case 3921:  /* *p iwmmxt_tmiatt */
    case 3920:  /* *p iwmmxt_tmiabt */
    case 3919:  /* *p iwmmxt_tmiatb */
    case 3918:  /* *p iwmmxt_tmiabb */
    case 3917:  /* *p iwmmxt_tmiaph */
    case 3916:  /* *p iwmmxt_tmia */
    case 3915:  /* *p iwmmxt_wmaddu */
    case 3914:  /* *p iwmmxt_wmadds */
    case 3913:  /* *p ashldi3_di */
    case 3912:  /* *p ashlv2si3_di */
    case 3911:  /* *p ashlv4hi3_di */
    case 3910:  /* *p lshrdi3_di */
    case 3909:  /* *p lshrv2si3_di */
    case 3908:  /* *p lshrv4hi3_di */
    case 3907:  /* *p ashrdi3_di */
    case 3906:  /* *p ashrv2si3_di */
    case 3905:  /* *p ashrv4hi3_di */
    case 3904:  /* *p rordi3_di */
    case 3903:  /* *p rorv2si3_di */
    case 3902:  /* *p rorv4hi3_di */
    case 3901:  /* *p ashldi3_iwmmxt */
    case 3900:  /* *p ashlv2si3_iwmmxt */
    case 3899:  /* *p ashlv4hi3_iwmmxt */
    case 3898:  /* *p lshrdi3_iwmmxt */
    case 3897:  /* *p lshrv2si3_iwmmxt */
    case 3896:  /* *p lshrv4hi3_iwmmxt */
    case 3895:  /* *p ashrdi3_iwmmxt */
    case 3894:  /* *p ashrv2si3_iwmmxt */
    case 3893:  /* *p ashrv4hi3_iwmmxt */
    case 3892:  /* *p rordi3 */
    case 3891:  /* *p rorv2si3 */
    case 3890:  /* *p rorv4hi3 */
    case 3889:  /* *p iwmmxt_wunpckelsw */
    case 3888:  /* *p iwmmxt_wunpckelsh */
    case 3887:  /* *p iwmmxt_wunpckelsb */
    case 3886:  /* *p iwmmxt_wunpckeluw */
    case 3885:  /* *p iwmmxt_wunpckeluh */
    case 3884:  /* *p iwmmxt_wunpckelub */
    case 3883:  /* *p iwmmxt_wunpckehsw */
    case 3882:  /* *p iwmmxt_wunpckehsh */
    case 3881:  /* *p iwmmxt_wunpckehsb */
    case 3880:  /* *p iwmmxt_wunpckehuw */
    case 3879:  /* *p iwmmxt_wunpckehuh */
    case 3878:  /* *p iwmmxt_wunpckehub */
    case 3877:  /* *p iwmmxt_wunpckilw */
    case 3876:  /* *p iwmmxt_wunpckilh */
    case 3875:  /* *p iwmmxt_wunpckilb */
    case 3874:  /* *p iwmmxt_wunpckihw */
    case 3873:  /* *p iwmmxt_wunpckihh */
    case 3872:  /* *p iwmmxt_wunpckihb */
    case 3871:  /* *p iwmmxt_wpackdus */
    case 3870:  /* *p iwmmxt_wpackwus */
    case 3869:  /* *p iwmmxt_wpackhus */
    case 3868:  /* *p iwmmxt_wpackdss */
    case 3867:  /* *p iwmmxt_wpackwss */
    case 3866:  /* *p iwmmxt_wpackhss */
    case 3865:  /* *p *uminv8qi3_iwmmxt */
    case 3864:  /* *p *uminv4hi3_iwmmxt */
    case 3863:  /* *p *uminv2si3_iwmmxt */
    case 3862:  /* *p *sminv8qi3_iwmmxt */
    case 3861:  /* *p *sminv4hi3_iwmmxt */
    case 3860:  /* *p *sminv2si3_iwmmxt */
    case 3859:  /* *p *umaxv8qi3_iwmmxt */
    case 3858:  /* *p *umaxv4hi3_iwmmxt */
    case 3857:  /* *p *umaxv2si3_iwmmxt */
    case 3856:  /* *p *smaxv8qi3_iwmmxt */
    case 3855:  /* *p *smaxv4hi3_iwmmxt */
    case 3854:  /* *p *smaxv2si3_iwmmxt */
    case 3853:  /* *p gtv2si3 */
    case 3852:  /* *p gtv4hi3 */
    case 3851:  /* *p gtv8qi3 */
    case 3850:  /* *p gtuv2si3 */
    case 3849:  /* *p gtuv4hi3 */
    case 3848:  /* *p gtuv8qi3 */
    case 3847:  /* *p eqv2si3 */
    case 3846:  /* *p eqv4hi3 */
    case 3845:  /* *p eqv8qi3 */
    case 3844:  /* *p iwmmxt_wshufh */
    case 3843:  /* *p iwmmxt_textrmw */
    case 3842:  /* *p iwmmxt_textrmsh */
    case 3841:  /* *p iwmmxt_textrmuh */
    case 3840:  /* *p iwmmxt_textrmsb */
    case 3839:  /* *p iwmmxt_textrmub */
    case 3838:  /* *p iwmmxt_tinsrw */
    case 3837:  /* *p iwmmxt_tinsrh */
    case 3836:  /* *p iwmmxt_tinsrb */
    case 3835:  /* *p iwmmxt_uavgv4hi3 */
    case 3834:  /* *p iwmmxt_uavgv8qi3 */
    case 3833:  /* *p iwmmxt_uavgrndv4hi3 */
    case 3832:  /* *p iwmmxt_uavgrndv8qi3 */
    case 3831:  /* *p iwmmxt_clrv2si */
    case 3830:  /* *p iwmmxt_clrv4hi */
    case 3829:  /* *p iwmmxt_clrv8qi */
    case 3828:  /* *p iwmmxt_clrdi */
    case 3827:  /* *p iwmmxt_wmacuz */
    case 3826:  /* *p iwmmxt_wmacu */
    case 3825:  /* *p iwmmxt_wmacsz */
    case 3824:  /* *p iwmmxt_wmacs */
    case 3823:  /* *p umulv4hi3_highpart */
    case 3822:  /* *p smulv4hi3_highpart */
    case 3821:  /* *p *mulv4hi3_iwmmxt */
    case 3820:  /* *p ussubv2si3 */
    case 3819:  /* *p ussubv4hi3 */
    case 3818:  /* *p ussubv8qi3 */
    case 3817:  /* *p sssubv2si3 */
    case 3816:  /* *p sssubv4hi3 */
    case 3815:  /* *p sssubv8qi3 */
    case 3814:  /* *p *subv8qi3_iwmmxt */
    case 3813:  /* *p *subv4hi3_iwmmxt */
    case 3812:  /* *p *subv2si3_iwmmxt */
    case 3811:  /* *p usaddv2si3 */
    case 3810:  /* *p usaddv4hi3 */
    case 3809:  /* *p usaddv8qi3 */
    case 3808:  /* *p ssaddv2si3 */
    case 3807:  /* *p ssaddv4hi3 */
    case 3806:  /* *p ssaddv8qi3 */
    case 3805:  /* *p *addv8qi3_iwmmxt */
    case 3804:  /* *p *addv4hi3_iwmmxt */
    case 3803:  /* *p *addv2si3_iwmmxt */
    case 3802:  /* *p *xorv8qi3_iwmmxt */
    case 3801:  /* *p *xorv4hi3_iwmmxt */
    case 3800:  /* *p *xorv2si3_iwmmxt */
    case 3799:  /* *p *iorv8qi3_iwmmxt */
    case 3798:  /* *p *iorv4hi3_iwmmxt */
    case 3797:  /* *p *iorv2si3_iwmmxt */
    case 3796:  /* *p *andv8qi3_iwmmxt */
    case 3795:  /* *p *andv4hi3_iwmmxt */
    case 3794:  /* *p *andv2si3_iwmmxt */
    case 3790:  /* *p iwmmxt_nanddi3 */
    case 3786:  /* *p tbcstv2si */
    case 3785:  /* *p tbcstv4hi */
    case 3784:  /* *p tbcstv8qi */
    case 3728:  /* *p *arm_rev */
    case 3727:  /* *p *arm_movtas_ze */
    case 3718:  /* *p *sub_shiftsi */
    case 3717:  /* *p *and_shiftsi */
    case 3716:  /* *p *eor_shiftsi */
    case 3715:  /* *p *orr_shiftsi */
    case 3714:  /* *p *rsb_shiftsi */
    case 3713:  /* *p *add_shiftsi */
    case 3712:  /* *p *and_multsi */
    case 3711:  /* *p *eor_multsi */
    case 3710:  /* *p *orr_multsi */
    case 3709:  /* *p *rsb_multsi */
    case 3708:  /* *p *add_multsi */
    case 3700:  /* *p *arm_cmpsi_insn */
    case 3693:  /* *p pic_add_dot_plus_eight */
    case 3691:  /* *p *arm_movt */
    case 3690:  /* *p *arm_extendqisi2addsi */
    case 3684:  /* *p *compareqi_eq0 */
    case 3683:  /* *p *arm_zero_extendqisi2addsi */
    case 3680:  /* *p *arm_zero_extendhisi2addsi */
    case 3667:  /* *p *arm_negsi2 */
    case 3664:  /* *p extzv_t2 */
    case 3663:  /* *p *extv_reg */
    case 3656:  /* *p *arm_shiftsi3 */
    case 3655:  /* *p *satsi_smax_shift */
    case 3654:  /* *p *satsi_smin_shift */
    case 3653:  /* *p *satsi_smax_shift */
    case 3652:  /* *p *satsi_smin_shift */
    case 3651:  /* *p *satsi_smax */
    case 3650:  /* *p *satsi_smin */
    case 3649:  /* *p *satsi_smax */
    case 3648:  /* *p *satsi_smin */
    case 3647:  /* *p *smin_0 */
    case 3646:  /* *p *smax_m1 */
    case 3645:  /* *p *smax_0 */
    case 3641:  /* *p *xordi_zesidi_di */
    case 3640:  /* *p *iorsi3_insn */
    case 3634:  /* *p andsi_notsi_si */
    case 3629:  /* *p insv_t2 */
    case 3628:  /* *p insv_zero */
    case 3627:  /* *p *zeroextractsi_compare0_scratch */
    case 3626:  /* *p *arm_andsi3_insn */
    case 3595:  /* *p *subsi3_carryin */
    case 3592:  /* *p *addsi3_carryin_alt2_geu */
    case 3591:  /* *p *addsi3_carryin_alt2_ltu */
    case 3590:  /* *p *addsi3_carryin_geu */
    case 3589:  /* *p *addsi3_carryin_ltu */
    case 3588:  /* *p *compare_addsi2_op1 */
    case 3587:  /* *p *compare_addsi2_op0 */
    case 3586:  /* *p *compare_negsi_si */
    case 3585:  /* *p *addsi3_compare0_scratch */
    case 2723:  /* arm_usatsihi */
    case 2722:  /* arm_ssatsihi_shift */
    case 2719:  /* sssubsa3 */
    case 2718:  /* sssubsq3 */
    case 2717:  /* sssubha3 */
    case 2716:  /* sssubv2ha3 */
    case 2715:  /* sssubhq3 */
    case 2714:  /* sssubqq3 */
    case 2713:  /* sssubv2hq3 */
    case 2712:  /* sssubv4qq3 */
    case 2711:  /* ussubuha3 */
    case 2710:  /* ussubv2uha3 */
    case 2709:  /* ussubuhq3 */
    case 2708:  /* ussubuqq3 */
    case 2707:  /* ussubv2uhq3 */
    case 2706:  /* ussubv4uqq3 */
    case 2705:  /* subv2ha3 */
    case 2704:  /* subv2hq3 */
    case 2703:  /* subv4qq3 */
    case 2702:  /* subusa3 */
    case 2701:  /* subuha3 */
    case 2700:  /* subsa3 */
    case 2699:  /* subha3 */
    case 2698:  /* subusq3 */
    case 2697:  /* subuhq3 */
    case 2696:  /* subuqq3 */
    case 2695:  /* subsq3 */
    case 2694:  /* subhq3 */
    case 2693:  /* subqq3 */
    case 2692:  /* ssaddsa3 */
    case 2691:  /* ssaddsq3 */
    case 2690:  /* ssaddha3 */
    case 2689:  /* ssaddv2ha3 */
    case 2688:  /* ssaddhq3 */
    case 2687:  /* ssaddqq3 */
    case 2686:  /* ssaddv2hq3 */
    case 2685:  /* ssaddv4qq3 */
    case 2684:  /* usadduha3 */
    case 2683:  /* usaddv2uha3 */
    case 2682:  /* usadduhq3 */
    case 2681:  /* usadduqq3 */
    case 2680:  /* usaddv2uhq3 */
    case 2679:  /* usaddv4uqq3 */
    case 2678:  /* addv2ha3 */
    case 2677:  /* addv2hq3 */
    case 2676:  /* addv4qq3 */
    case 2675:  /* addusa3 */
    case 2674:  /* adduha3 */
    case 2673:  /* addsa3 */
    case 2672:  /* addha3 */
    case 2671:  /* addusq3 */
    case 2670:  /* adduhq3 */
    case 2669:  /* adduqq3 */
    case 2668:  /* addsq3 */
    case 2667:  /* addhq3 */
    case 2666:  /* addqq3 */
    case 907:  /* *orsi_not_shiftsi_si */
    case 906:  /* *orsi_notsi_si */
    case 901:  /* *thumb2_negsi2_short */
    case 892:  /* *thumb2_subsi_short */
    case 886:  /* *thumb2_alusi3_short */
    case 859:  /* *thumb2_cmpsi_neg_shiftsi */
    case 846:  /* *thumb_andsi_not_shiftsi_si */
    case 826:  /* *thumb_cmpdi_zero */
    case 798:  /* *thumb1_negsi2 */
    case 792:  /* *thumb1_xorsi3_insn */
    case 791:  /* *thumb1_iorsi3_insn */
    case 790:  /* thumb1_bicsi3 */
    case 789:  /* *thumb1_andsi3_insn */
    case 786:  /* thumb1_subsi3_insn */
    case 625:  /* iwmmxt_textrcv8qi3 */
    case 624:  /* iwmmxt_textrcv4hi3 */
    case 623:  /* iwmmxt_textrcv2si3 */
    case 622:  /* iwmmxt_torvscv8qi3 */
    case 621:  /* iwmmxt_torvscv4hi3 */
    case 620:  /* iwmmxt_torvscv2si3 */
    case 619:  /* iwmmxt_torcv8qi3 */
    case 618:  /* iwmmxt_torcv4hi3 */
    case 617:  /* iwmmxt_torcv2si3 */
    case 616:  /* iwmmxt_tandcv8qi3 */
    case 615:  /* iwmmxt_tandcv4hi3 */
    case 614:  /* iwmmxt_tandcv2si3 */
    case 613:  /* iwmmxt_wmerge */
    case 612:  /* iwmmxt_wmiawttn */
    case 611:  /* iwmmxt_wmiawtbn */
    case 610:  /* iwmmxt_wmiawbtn */
    case 609:  /* iwmmxt_wmiawbbn */
    case 608:  /* iwmmxt_wmiawtt */
    case 607:  /* iwmmxt_wmiawtb */
    case 606:  /* iwmmxt_wmiawbt */
    case 605:  /* iwmmxt_wmiawbb */
    case 604:  /* iwmmxt_wmiattn */
    case 603:  /* iwmmxt_wmiatbn */
    case 602:  /* iwmmxt_wmiabtn */
    case 601:  /* iwmmxt_wmiabbn */
    case 600:  /* iwmmxt_wmiatt */
    case 599:  /* iwmmxt_wmiatb */
    case 598:  /* iwmmxt_wmiabt */
    case 597:  /* iwmmxt_wmiabb */
    case 596:  /* iwmmxt_wqmiattn */
    case 595:  /* iwmmxt_wqmiatbn */
    case 594:  /* iwmmxt_wqmiabtn */
    case 593:  /* iwmmxt_wqmiabbn */
    case 592:  /* iwmmxt_wqmiatt */
    case 591:  /* iwmmxt_wqmiatb */
    case 590:  /* iwmmxt_wqmiabt */
    case 589:  /* iwmmxt_wqmiabb */
    case 588:  /* iwmmxt_waddbhusl */
    case 587:  /* iwmmxt_waddbhusm */
    case 586:  /* iwmmxt_wqmulwmr */
    case 585:  /* iwmmxt_wqmulmr */
    case 584:  /* iwmmxt_wqmulwm */
    case 583:  /* iwmmxt_wqmulm */
    case 582:  /* iwmmxt_wmulwl */
    case 581:  /* iwmmxt_wmulwumr */
    case 580:  /* iwmmxt_wmulwsmr */
    case 579:  /* iwmmxt_wmulumr */
    case 578:  /* iwmmxt_wmulsmr */
    case 577:  /* iwmmxt_wmulwum */
    case 576:  /* iwmmxt_wmulwsm */
    case 575:  /* iwmmxt_wmaddun */
    case 574:  /* iwmmxt_wmaddsn */
    case 573:  /* iwmmxt_wmaddux */
    case 572:  /* iwmmxt_wmaddsx */
    case 571:  /* iwmmxt_avg4r */
    case 570:  /* iwmmxt_avg4 */
    case 569:  /* addcv2si3 */
    case 568:  /* addcv4hi3 */
    case 567:  /* iwmmxt_wsubaddhx */
    case 566:  /* iwmmxt_waddsubhx */
    case 565:  /* iwmmxt_wabsdiffw */
    case 564:  /* iwmmxt_wabsdiffh */
    case 563:  /* iwmmxt_wabsdiffb */
    case 562:  /* iwmmxt_wabsv8qi3 */
    case 561:  /* iwmmxt_wabsv4hi3 */
    case 560:  /* iwmmxt_wabsv2si3 */
    case 559:  /* iwmmxt_wsadhz */
    case 558:  /* iwmmxt_wsadbz */
    case 557:  /* iwmmxt_wsadh */
    case 556:  /* iwmmxt_wsadb */
    case 555:  /* iwmmxt_walignr3 */
    case 554:  /* iwmmxt_walignr2 */
    case 553:  /* iwmmxt_walignr1 */
    case 552:  /* iwmmxt_walignr0 */
    case 551:  /* iwmmxt_walignr */
    case 550:  /* iwmmxt_waligni */
    case 549:  /* iwmmxt_waccw */
    case 548:  /* iwmmxt_wacch */
    case 547:  /* iwmmxt_waccb */
    case 546:  /* iwmmxt_tmovmskw */
    case 545:  /* iwmmxt_tmovmskh */
    case 544:  /* iwmmxt_tmovmskb */
    case 543:  /* iwmmxt_tmiatt */
    case 542:  /* iwmmxt_tmiabt */
    case 541:  /* iwmmxt_tmiatb */
    case 540:  /* iwmmxt_tmiabb */
    case 539:  /* iwmmxt_tmiaph */
    case 538:  /* iwmmxt_tmia */
    case 537:  /* iwmmxt_wmaddu */
    case 536:  /* iwmmxt_wmadds */
    case 535:  /* ashldi3_di */
    case 534:  /* ashlv2si3_di */
    case 533:  /* ashlv4hi3_di */
    case 532:  /* lshrdi3_di */
    case 531:  /* lshrv2si3_di */
    case 530:  /* lshrv4hi3_di */
    case 529:  /* ashrdi3_di */
    case 528:  /* ashrv2si3_di */
    case 527:  /* ashrv4hi3_di */
    case 526:  /* rordi3_di */
    case 525:  /* rorv2si3_di */
    case 524:  /* rorv4hi3_di */
    case 523:  /* ashldi3_iwmmxt */
    case 522:  /* ashlv2si3_iwmmxt */
    case 521:  /* ashlv4hi3_iwmmxt */
    case 520:  /* lshrdi3_iwmmxt */
    case 519:  /* lshrv2si3_iwmmxt */
    case 518:  /* lshrv4hi3_iwmmxt */
    case 517:  /* ashrdi3_iwmmxt */
    case 516:  /* ashrv2si3_iwmmxt */
    case 515:  /* ashrv4hi3_iwmmxt */
    case 514:  /* rordi3 */
    case 513:  /* rorv2si3 */
    case 512:  /* rorv4hi3 */
    case 511:  /* iwmmxt_wunpckelsw */
    case 510:  /* iwmmxt_wunpckelsh */
    case 509:  /* iwmmxt_wunpckelsb */
    case 508:  /* iwmmxt_wunpckeluw */
    case 507:  /* iwmmxt_wunpckeluh */
    case 506:  /* iwmmxt_wunpckelub */
    case 505:  /* iwmmxt_wunpckehsw */
    case 504:  /* iwmmxt_wunpckehsh */
    case 503:  /* iwmmxt_wunpckehsb */
    case 502:  /* iwmmxt_wunpckehuw */
    case 501:  /* iwmmxt_wunpckehuh */
    case 500:  /* iwmmxt_wunpckehub */
    case 499:  /* iwmmxt_wunpckilw */
    case 498:  /* iwmmxt_wunpckilh */
    case 497:  /* iwmmxt_wunpckilb */
    case 496:  /* iwmmxt_wunpckihw */
    case 495:  /* iwmmxt_wunpckihh */
    case 494:  /* iwmmxt_wunpckihb */
    case 493:  /* iwmmxt_wpackdus */
    case 492:  /* iwmmxt_wpackwus */
    case 491:  /* iwmmxt_wpackhus */
    case 490:  /* iwmmxt_wpackdss */
    case 489:  /* iwmmxt_wpackwss */
    case 488:  /* iwmmxt_wpackhss */
    case 487:  /* *uminv8qi3_iwmmxt */
    case 486:  /* *uminv4hi3_iwmmxt */
    case 485:  /* *uminv2si3_iwmmxt */
    case 484:  /* *sminv8qi3_iwmmxt */
    case 483:  /* *sminv4hi3_iwmmxt */
    case 482:  /* *sminv2si3_iwmmxt */
    case 481:  /* *umaxv8qi3_iwmmxt */
    case 480:  /* *umaxv4hi3_iwmmxt */
    case 479:  /* *umaxv2si3_iwmmxt */
    case 478:  /* *smaxv8qi3_iwmmxt */
    case 477:  /* *smaxv4hi3_iwmmxt */
    case 476:  /* *smaxv2si3_iwmmxt */
    case 475:  /* gtv2si3 */
    case 474:  /* gtv4hi3 */
    case 473:  /* gtv8qi3 */
    case 472:  /* gtuv2si3 */
    case 471:  /* gtuv4hi3 */
    case 470:  /* gtuv8qi3 */
    case 469:  /* eqv2si3 */
    case 468:  /* eqv4hi3 */
    case 467:  /* eqv8qi3 */
    case 466:  /* iwmmxt_wshufh */
    case 465:  /* iwmmxt_textrmw */
    case 464:  /* iwmmxt_textrmsh */
    case 463:  /* iwmmxt_textrmuh */
    case 462:  /* iwmmxt_textrmsb */
    case 461:  /* iwmmxt_textrmub */
    case 460:  /* iwmmxt_tinsrw */
    case 459:  /* iwmmxt_tinsrh */
    case 458:  /* iwmmxt_tinsrb */
    case 457:  /* iwmmxt_uavgv4hi3 */
    case 456:  /* iwmmxt_uavgv8qi3 */
    case 455:  /* iwmmxt_uavgrndv4hi3 */
    case 454:  /* iwmmxt_uavgrndv8qi3 */
    case 453:  /* iwmmxt_clrv2si */
    case 452:  /* iwmmxt_clrv4hi */
    case 451:  /* iwmmxt_clrv8qi */
    case 450:  /* iwmmxt_clrdi */
    case 449:  /* iwmmxt_wmacuz */
    case 448:  /* iwmmxt_wmacu */
    case 447:  /* iwmmxt_wmacsz */
    case 446:  /* iwmmxt_wmacs */
    case 445:  /* umulv4hi3_highpart */
    case 444:  /* smulv4hi3_highpart */
    case 443:  /* *mulv4hi3_iwmmxt */
    case 442:  /* ussubv2si3 */
    case 441:  /* ussubv4hi3 */
    case 440:  /* ussubv8qi3 */
    case 439:  /* sssubv2si3 */
    case 438:  /* sssubv4hi3 */
    case 437:  /* sssubv8qi3 */
    case 436:  /* *subv8qi3_iwmmxt */
    case 435:  /* *subv4hi3_iwmmxt */
    case 434:  /* *subv2si3_iwmmxt */
    case 433:  /* usaddv2si3 */
    case 432:  /* usaddv4hi3 */
    case 431:  /* usaddv8qi3 */
    case 430:  /* ssaddv2si3 */
    case 429:  /* ssaddv4hi3 */
    case 428:  /* ssaddv8qi3 */
    case 427:  /* *addv8qi3_iwmmxt */
    case 426:  /* *addv4hi3_iwmmxt */
    case 425:  /* *addv2si3_iwmmxt */
    case 424:  /* *xorv8qi3_iwmmxt */
    case 423:  /* *xorv4hi3_iwmmxt */
    case 422:  /* *xorv2si3_iwmmxt */
    case 421:  /* *iorv8qi3_iwmmxt */
    case 420:  /* *iorv4hi3_iwmmxt */
    case 419:  /* *iorv2si3_iwmmxt */
    case 418:  /* *andv8qi3_iwmmxt */
    case 417:  /* *andv4hi3_iwmmxt */
    case 416:  /* *andv2si3_iwmmxt */
    case 409:  /* iwmmxt_nanddi3 */
    case 405:  /* tbcstv2si */
    case 404:  /* tbcstv4hi */
    case 403:  /* tbcstv8qi */
    case 332:  /* arm_rev16si2_alt */
    case 331:  /* arm_rev16si2 */
    case 330:  /* *arm_rev16 */
    case 329:  /* *arm_revsh */
    case 328:  /* *arm_rev */
    case 327:  /* *arm_movtas_ze */
    case 298:  /* *if_move_neg */
    case 296:  /* *if_neg_move */
    case 252:  /* *sub_shiftsi_compare0_scratch */
    case 251:  /* *sub_shiftsi_compare0 */
    case 250:  /* *sub_shiftsi */
    case 249:  /* *arith_shiftsi_compare0_scratch */
    case 248:  /* *arith_shiftsi_compare0 */
    case 247:  /* *and_shiftsi */
    case 246:  /* *eor_shiftsi */
    case 245:  /* *orr_shiftsi */
    case 244:  /* *rsb_shiftsi */
    case 243:  /* *add_shiftsi */
    case 242:  /* *and_multsi */
    case 241:  /* *eor_multsi */
    case 240:  /* *orr_multsi */
    case 239:  /* *rsb_multsi */
    case 238:  /* *add_multsi */
    case 211:  /* *cmovhf */
    case 210:  /* *cmovdf */
    case 209:  /* *cmovsf */
    case 202:  /* *arm_cmpdi_zero */
    case 198:  /* *cmpsi_shiftsi_swp */
    case 197:  /* *cmpsi_shiftsi */
    case 196:  /* *arm_cmpsi_insn */
    case 189:  /* *movsi_compare0 */
    case 187:  /* pic_add_dot_plus_eight */
    case 186:  /* pic_add_dot_plus_four */
    case 181:  /* *arm_movt */
    case 179:  /* *arm_extendqisi2addsi */
    case 175:  /* *arm_extendhisi2addsi */
    case 172:  /* *compareqi_eq0 */
    case 171:  /* *arm_zero_extendqisi2addsi */
    case 168:  /* *arm_zero_extendhisi2addsi */
    case 150:  /* *arm_negsi2 */
    case 149:  /* *negsi2_carryin_compare */
    case 144:  /* extzv_t2 */
    case 143:  /* *extv_reg */
    case 133:  /* *shiftsi3_compare0 */
    case 132:  /* *arm_shiftsi3 */
    case 128:  /* *satsi_smin_shift */
    case 127:  /* *satsi_smax_shift */
    case 126:  /* *satsi_smin */
    case 125:  /* *satsi_smax */
    case 118:  /* *smin_0 */
    case 116:  /* *smax_m1 */
    case 115:  /* *smax_0 */
    case 113:  /* *xorsi3_compare0_scratch */
    case 112:  /* *xorsi3_compare0 */
    case 109:  /* *xordi_zesidi_di */
    case 107:  /* *iorsi3_compare0_scratch */
    case 106:  /* *iorsi3_compare0 */
    case 105:  /* *iorsi3_insn */
    case 101:  /* *andsi_notsi_si_compare0_scratch */
    case 100:  /* *andsi_notsi_si_compare0 */
    case 96:  /* andsi_notsi_si */
    case 91:  /* insv_t2 */
    case 90:  /* insv_zero */
    case 85:  /* *zeroextractsi_compare0_scratch */
    case 84:  /* *andsi3_compare0_scratch */
    case 83:  /* *andsi3_compare0 */
    case 82:  /* *arm_andsi3_insn */
    case 43:  /* subsi3_compare */
    case 42:  /* subsi3_compare0 */
    case 32:  /* *subsi3_carryin_compare_const */
    case 31:  /* *subsi3_carryin_compare */
    case 30:  /* *subsi3_carryin_const */
    case 29:  /* *subsi3_carryin */
    case 28:  /* subsi3_compare1 */
    case 26:  /* *addsi3_carryin_clobercc_geu */
    case 25:  /* *addsi3_carryin_clobercc_ltu */
    case 22:  /* *addsi3_carryin_alt2_geu */
    case 21:  /* *addsi3_carryin_alt2_ltu */
    case 20:  /* *addsi3_carryin_geu */
    case 19:  /* *addsi3_carryin_ltu */
    case 18:  /* *compare_addsi2_op1 */
    case 17:  /* *compare_addsi2_op0 */
    case 16:  /* *addsi3_compare_op2 */
    case 15:  /* *addsi3_compare_op1 */
    case 14:  /* cmpsi2_addneg */
    case 13:  /* *compare_negsi_si */
    case 12:  /* *addsi3_compare0_scratch */
    case 11:  /* addsi3_compare0 */
    case 10:  /* addsi3_compareC */
    case 9:  /* *addsi3_compareC_upper */
    case 7:  /* *addsi3_compareV_upper */
    case 6:  /* addsi3_compareV */
      return CORE_CYCLES_SINGLE;

    default:
      return CORE_CYCLES_MULTI;

    }
}

enum attr_conds
get_attr_conds (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  switch (recog_memoized (insn))
    {
    case 1561:  /* neon_vcltv4hf_fp16insn */
    case 1560:  /* neon_vclev4hf_fp16insn */
    case 1559:  /* neon_vcgev4hf_fp16insn */
    case 1558:  /* neon_vcgtv4hf_fp16insn */
    case 1557:  /* neon_vceqv4hf_fp16insn */
    case 1556:  /* neon_vcltv8hf_fp16insn */
    case 1555:  /* neon_vclev8hf_fp16insn */
    case 1554:  /* neon_vcgev8hf_fp16insn */
    case 1553:  /* neon_vcgtv8hf_fp16insn */
    case 1552:  /* neon_vceqv8hf_fp16insn */
    case 1541:  /* neon_vcltv4sf_insn */
    case 1540:  /* neon_vclev4sf_insn */
    case 1539:  /* neon_vcgev4sf_insn */
    case 1538:  /* neon_vcgtv4sf_insn */
    case 1537:  /* neon_vceqv4sf_insn */
    case 1536:  /* neon_vcltv2sf_insn */
    case 1535:  /* neon_vclev2sf_insn */
    case 1534:  /* neon_vcgev2sf_insn */
    case 1533:  /* neon_vcgtv2sf_insn */
    case 1532:  /* neon_vceqv2sf_insn */
    case 1531:  /* neon_vcltv4si_insn */
    case 1530:  /* neon_vclev4si_insn */
    case 1529:  /* neon_vcgev4si_insn */
    case 1528:  /* neon_vcgtv4si_insn */
    case 1527:  /* neon_vceqv4si_insn */
    case 1526:  /* neon_vcltv2si_insn */
    case 1525:  /* neon_vclev2si_insn */
    case 1524:  /* neon_vcgev2si_insn */
    case 1523:  /* neon_vcgtv2si_insn */
    case 1522:  /* neon_vceqv2si_insn */
    case 1521:  /* neon_vcltv8hi_insn */
    case 1520:  /* neon_vclev8hi_insn */
    case 1519:  /* neon_vcgev8hi_insn */
    case 1518:  /* neon_vcgtv8hi_insn */
    case 1517:  /* neon_vceqv8hi_insn */
    case 1516:  /* neon_vcltv4hi_insn */
    case 1515:  /* neon_vclev4hi_insn */
    case 1514:  /* neon_vcgev4hi_insn */
    case 1513:  /* neon_vcgtv4hi_insn */
    case 1512:  /* neon_vceqv4hi_insn */
    case 1511:  /* neon_vcltv16qi_insn */
    case 1510:  /* neon_vclev16qi_insn */
    case 1509:  /* neon_vcgev16qi_insn */
    case 1508:  /* neon_vcgtv16qi_insn */
    case 1507:  /* neon_vceqv16qi_insn */
    case 1506:  /* neon_vcltv8qi_insn */
    case 1505:  /* neon_vclev8qi_insn */
    case 1504:  /* neon_vcgev8qi_insn */
    case 1503:  /* neon_vcgtv8qi_insn */
    case 1502:  /* neon_vceqv8qi_insn */
      if ((
#line 81 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB1)))
        {
	  return CONDS_CLOB;
        }
      else
        {
	  if (get_attr_is_neon_type (insn) == IS_NEON_TYPE_NO)
	    {
	      return CONDS_NOCOND;
	    }
	  else
	    {
	      return CONDS_UNCONDITIONAL;
	    }
        }

    case 1106:  /* bicdi3_neon */
    case 1094:  /* orndi3_neon */
      extract_constrain_insn_cached (insn);
      if ((
#line 81 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB1)))
        {
	  return CONDS_CLOB;
        }
      else
        {
	  if (which_alternative != 0)
	    {
	      return CONDS_NOCOND;
	    }
	  else
	    {
	      return CONDS_UNCONDITIONAL;
	    }
        }

    case 920:  /* *neon_movti */
    case 919:  /* *neon_movv2di */
    case 918:  /* *neon_movv4sf */
    case 917:  /* *neon_movv4si */
    case 916:  /* *neon_movv8hf */
    case 915:  /* *neon_movv8hi */
    case 914:  /* *neon_movv16qi */
    case 913:  /* *neon_movdi */
    case 912:  /* *neon_movv2sf */
    case 911:  /* *neon_movv2si */
    case 910:  /* *neon_movv4hf */
    case 909:  /* *neon_movv4hi */
    case 908:  /* *neon_movv8qi */
      extract_constrain_insn_cached (insn);
      if ((
#line 81 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB1)))
        {
	  return CONDS_CLOB;
        }
      else
        {
	  if (which_alternative == 6)
	    {
	      return CONDS_NOCOND;
	    }
	  else
	    {
	      return CONDS_UNCONDITIONAL;
	    }
        }

    case 4078:  /* *p *thumb2_neg_abssi2 */
    case 4077:  /* *p *thumb2_abssi2 */
    case 853:  /* *thumb2_neg_abssi2 */
    case 852:  /* *thumb2_abssi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if ((
#line 81 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB1)))
	    {
	      return CONDS_CLOB;
	    }
	  else
	    {
	      return CONDS_NOCOND;
	    }
        }
      else
        {
	  return CONDS_CLOB;
        }

    case 812:  /* *thumb1_movsf_insn */
    case 811:  /* *thumb1_movhf */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CONDS_CLOB;
        }
      else
        {
	  return CONDS_NOCOND;
        }

    case 810:  /* *thumb1_movqi_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CONDS_CLOB;
        }
      else if (((1 << which_alternative) & 0x1e))
        {
	  return CONDS_NOCOND;
        }
      else
        {
	  return CONDS_CLOB;
        }

    case 809:  /* *thumb1_movhi_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CONDS_CLOB;
        }
      else if (((1 << which_alternative) & 0x1e))
        {
	  return CONDS_NOCOND;
        }
      else if (which_alternative == 5)
        {
	  return CONDS_CLOB;
        }
      else
        {
	  return CONDS_NOCOND;
        }

    case 808:  /* *thumb1_movsi_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CONDS_SET;
        }
      else if (which_alternative == 1)
        {
	  return CONDS_CLOB;
        }
      else if (which_alternative == 2)
        {
	  return CONDS_NOCOND;
        }
      else if (((1 << which_alternative) & 0x18))
        {
	  if ((
#line 81 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB1)))
	    {
	      return CONDS_CLOB;
	    }
	  else
	    {
	      return CONDS_NOCOND;
	    }
        }
      else
        {
	  return CONDS_NOCOND;
        }

    case 4014:  /* *p *movdf_vfp */
    case 640:  /* *thumb2_movdf_vfp */
    case 639:  /* *movdf_vfp */
      extract_constrain_insn_cached (insn);
      if ((
#line 81 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB1)))
        {
	  return CONDS_CLOB;
        }
      else
        {
	  if (which_alternative != 3)
	    {
	      return CONDS_NOCOND;
	    }
	  else
	    {
	      return CONDS_UNCONDITIONAL;
	    }
        }

    case 4011:  /* *p *movhf_vfp_fp16 */
    case 634:  /* *movhf_vfp_fp16 */
      extract_constrain_insn_cached (insn);
      if ((
#line 81 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB1)))
        {
	  return CONDS_CLOB;
        }
      else
        {
	  if (!((1 << which_alternative) & 0x180))
	    {
	      return CONDS_NOCOND;
	    }
	  else
	    {
	      return CONDS_UNCONDITIONAL;
	    }
        }

    case 3670:  /* *p one_cmpldi2 */
    case 156:  /* one_cmpldi2 */
      extract_constrain_insn_cached (insn);
      if ((
#line 81 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB1)))
        {
	  return CONDS_CLOB;
        }
      else
        {
	  if (((1 << which_alternative) & 0x6))
	    {
	      return CONDS_NOCOND;
	    }
	  else
	    {
	      return CONDS_UNCONDITIONAL;
	    }
        }

    case 3669:  /* *p *arm_neg_abssi2 */
    case 3668:  /* *p *arm_abssi2 */
    case 155:  /* *arm_neg_abssi2 */
    case 154:  /* *arm_abssi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CONDS_CLOB;
        }
      else
        {
	  if ((
#line 81 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB1)))
	    {
	      return CONDS_CLOB;
	    }
	  else
	    {
	      return CONDS_NOCOND;
	    }
        }

    case 108:  /* *xordi3_insn */
      extract_constrain_insn_cached (insn);
      if ((
#line 81 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB1)))
        {
	  return CONDS_CLOB;
        }
      else
        {
	  if (((1 << which_alternative) & 0x1e))
	    {
	      return CONDS_NOCOND;
	    }
	  else
	    {
	      return CONDS_UNCONDITIONAL;
	    }
        }

    case 102:  /* *iordi3_insn */
    case 79:  /* *anddi3_insn */
      extract_constrain_insn_cached (insn);
      if ((
#line 81 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB1)))
        {
	  return CONDS_CLOB;
        }
      else
        {
	  if (((1 << which_alternative) & 0x3c))
	    {
	      return CONDS_NOCOND;
	    }
	  else
	    {
	      return CONDS_UNCONDITIONAL;
	    }
        }

    case 4179:  /* *p arm_usatsihi */
    case 4178:  /* *p arm_ssatsihi_shift */
    case 4177:  /* *p sssubsa3 */
    case 4176:  /* *p sssubsq3 */
    case 4175:  /* *p sssubha3 */
    case 4174:  /* *p sssubv2ha3 */
    case 4173:  /* *p sssubhq3 */
    case 4172:  /* *p sssubqq3 */
    case 4171:  /* *p sssubv2hq3 */
    case 4170:  /* *p sssubv4qq3 */
    case 4169:  /* *p ussubuha3 */
    case 4168:  /* *p ussubv2uha3 */
    case 4167:  /* *p ussubuhq3 */
    case 4166:  /* *p ussubuqq3 */
    case 4165:  /* *p ussubv2uhq3 */
    case 4164:  /* *p ussubv4uqq3 */
    case 4163:  /* *p subv2ha3 */
    case 4162:  /* *p subv2hq3 */
    case 4161:  /* *p subv4qq3 */
    case 4160:  /* *p subusa3 */
    case 4159:  /* *p subuha3 */
    case 4158:  /* *p subsa3 */
    case 4157:  /* *p subha3 */
    case 4156:  /* *p subusq3 */
    case 4155:  /* *p subuhq3 */
    case 4154:  /* *p subuqq3 */
    case 4153:  /* *p subsq3 */
    case 4152:  /* *p subhq3 */
    case 4151:  /* *p subqq3 */
    case 4150:  /* *p ssaddsa3 */
    case 4149:  /* *p ssaddsq3 */
    case 4148:  /* *p ssaddha3 */
    case 4147:  /* *p ssaddv2ha3 */
    case 4146:  /* *p ssaddhq3 */
    case 4145:  /* *p ssaddqq3 */
    case 4144:  /* *p ssaddv2hq3 */
    case 4143:  /* *p ssaddv4qq3 */
    case 4142:  /* *p usadduha3 */
    case 4141:  /* *p usaddv2uha3 */
    case 4140:  /* *p usadduhq3 */
    case 4139:  /* *p usadduqq3 */
    case 4138:  /* *p usaddv2uhq3 */
    case 4137:  /* *p usaddv4uqq3 */
    case 4136:  /* *p addv2ha3 */
    case 4135:  /* *p addv2hq3 */
    case 4134:  /* *p addv4qq3 */
    case 4133:  /* *p addusa3 */
    case 4132:  /* *p adduha3 */
    case 4131:  /* *p addsa3 */
    case 4130:  /* *p addha3 */
    case 4129:  /* *p addusq3 */
    case 4128:  /* *p adduhq3 */
    case 4127:  /* *p adduqq3 */
    case 4126:  /* *p addsq3 */
    case 4125:  /* *p addhq3 */
    case 4124:  /* *p addqq3 */
    case 4123:  /* *p arm_store_release_exclusivesi */
    case 4122:  /* *p arm_store_release_exclusivehi */
    case 4121:  /* *p arm_store_release_exclusiveqi */
    case 4120:  /* *p arm_store_release_exclusivedi */
    case 4119:  /* *p arm_store_exclusivedi */
    case 4118:  /* *p arm_store_exclusivesi */
    case 4117:  /* *p arm_store_exclusivehi */
    case 4116:  /* *p arm_store_exclusiveqi */
    case 4115:  /* *p arm_load_acquire_exclusivedi */
    case 4114:  /* *p arm_load_exclusivedi */
    case 4113:  /* *p arm_load_acquire_exclusivesi */
    case 4112:  /* *p arm_load_exclusivesi */
    case 4111:  /* *p arm_load_acquire_exclusivehi */
    case 4110:  /* *p arm_load_acquire_exclusiveqi */
    case 4109:  /* *p arm_load_exclusivehi */
    case 4108:  /* *p arm_load_exclusiveqi */
    case 4107:  /* *p arm_atomic_loaddi2_ldrd */
    case 4106:  /* *p atomic_storesi */
    case 4105:  /* *p atomic_storehi */
    case 4104:  /* *p atomic_storeqi */
    case 4103:  /* *p atomic_loadsi */
    case 4102:  /* *p atomic_loadhi */
    case 4101:  /* *p atomic_loadqi */
    case 4100:  /* *p *orsi_not_shiftsi_si */
    case 4099:  /* *p *orsi_notsi_si */
    case 4098:  /* *p *iordi_notsesidi_di */
    case 4097:  /* *p *iordi_notdi_zesidi */
    case 4096:  /* *p *iordi_notzesidi_di */
    case 4095:  /* *p *iordi_notdi_di */
    case 4094:  /* *p *thumb2_negsi2_short */
    case 4093:  /* *p *thumb2_one_cmplsi2_short */
    case 4092:  /* *p *thumb2_mulsi_short */
    case 4091:  /* *p *thumb2_subsi_short */
    case 4090:  /* *p *thumb2_addsi_short */
    case 4089:  /* *p *thumb2_movsi_shortim */
    case 4088:  /* *p *thumb2_movhi_shortim */
    case 4087:  /* *p *thumb2_movqi_shortim */
    case 4086:  /* *p *thumb2_shiftsi3_short */
    case 4085:  /* *p *thumb2_alusi3_short */
    case 4084:  /* *p thumb2_zero_extendqisi2_v6 */
    case 4083:  /* *p *thumb2_zero_extendhisi2_v6 */
    case 4082:  /* *p *thumb2_extendqisi_v6 */
    case 4081:  /* *p *thumb2_movhi_insn */
    case 4080:  /* *p *thumb2_movsi_insn */
    case 4079:  /* *p *thumb2_pop_single */
    case 4076:  /* *p *thumb_andsi_not_shiftsi_si */
    case 4069:  /* *p *combine_vcvtf2i */
    case 4068:  /* *p *combine_vcvt_f64_s32 */
    case 4067:  /* *p *combine_vcvt_f64_u32 */
    case 4066:  /* *p *combine_vcvt_f32_s32 */
    case 4065:  /* *p *combine_vcvt_f32_u32 */
    case 4064:  /* *p *cmpdf_trap_vfp */
    case 4063:  /* *p *cmpdf_vfp */
    case 4062:  /* *p *cmpsf_trap_vfp */
    case 4061:  /* *p *cmpsf_vfp */
    case 4060:  /* *p *sqrtdf2_vfp */
    case 4059:  /* *p *sqrtsf2_vfp */
    case 4058:  /* *p floatunssidf2 */
    case 4057:  /* *p floatunssisf2 */
    case 4056:  /* *p *floatsidf2_vfp */
    case 4055:  /* *p *floatsisf2_vfp */
    case 4054:  /* *p fixuns_truncdfsi2 */
    case 4053:  /* *p fixuns_truncsfsi2 */
    case 4052:  /* *p *truncsidf2_vfp */
    case 4051:  /* *p *truncsisf2_vfp */
    case 4050:  /* *p truncsfhf2 */
    case 4049:  /* *p extendhfsf2 */
    case 4048:  /* *p *truncdfsf2_vfp */
    case 4047:  /* *p *extendsfdf2_vfp */
    case 4046:  /* *p *fnmadddf4 */
    case 4045:  /* *p *fnmaddsf4 */
    case 4044:  /* *p *fnmsubdf4 */
    case 4043:  /* *p *fnmsubsf4 */
    case 4042:  /* *p *fmsubdf4 */
    case 4041:  /* *p *fmsubsf4 */
    case 4040:  /* *p fmadf4 */
    case 4039:  /* *p fmasf4 */
    case 4038:  /* *p *muldf3negdfsubdf_vfp */
    case 4037:  /* *p *mulsf3negsfsubsf_vfp */
    case 4036:  /* *p *fmuldf3negdfadddf_vfp */
    case 4035:  /* *p *mulsf3negsfaddsf_vfp */
    case 4034:  /* *p *muldf3subdf_vfp */
    case 4033:  /* *p *mulsf3subsf_vfp */
    case 4032:  /* *p *muldf3adddf_vfp */
    case 4031:  /* *p *mulsf3addsf_vfp */
    case 4030:  /* *p *negmuldf3_vfp */
    case 4029:  /* *p *muldf3negdf_vfp */
    case 4028:  /* *p *negmulsf3_vfp */
    case 4027:  /* *p *mulsf3negsf_vfp */
    case 4026:  /* *p *muldf3_vfp */
    case 4025:  /* *p *mulsf3_vfp */
    case 4024:  /* *p *divdf3_vfp */
    case 4023:  /* *p *divsf3_vfp */
    case 4022:  /* *p *subdf3_vfp */
    case 4021:  /* *p *subsf3_vfp */
    case 4020:  /* *p *adddf3_vfp */
    case 4019:  /* *p *addsf3_vfp */
    case 4018:  /* *p *negdf2_vfp */
    case 4017:  /* *p *negsf2_vfp */
    case 4016:  /* *p *absdf2_vfp */
    case 4015:  /* *p *abssf2_vfp */
    case 4013:  /* *p *thumb2_movsf_vfp */
    case 4012:  /* *p *movsf_vfp */
    case 4010:  /* *p *movdi_vfp_cortexa8 */
    case 4009:  /* *p *thumb2_movsi_vfp */
    case 4008:  /* *p *arm_movsi_vfp */
    case 4007:  /* *p *thumb2_movhi_fp16 */
    case 4006:  /* *p *arm_movhi_fp16 */
    case 4005:  /* *p *thumb2_movhi_vfp */
    case 4004:  /* *p *arm_movhi_vfp */
    case 4003:  /* *p iwmmxt_textrcv8qi3 */
    case 4002:  /* *p iwmmxt_textrcv4hi3 */
    case 4001:  /* *p iwmmxt_textrcv2si3 */
    case 4000:  /* *p iwmmxt_torvscv8qi3 */
    case 3999:  /* *p iwmmxt_torvscv4hi3 */
    case 3998:  /* *p iwmmxt_torvscv2si3 */
    case 3997:  /* *p iwmmxt_torcv8qi3 */
    case 3996:  /* *p iwmmxt_torcv4hi3 */
    case 3995:  /* *p iwmmxt_torcv2si3 */
    case 3994:  /* *p iwmmxt_tandcv8qi3 */
    case 3993:  /* *p iwmmxt_tandcv4hi3 */
    case 3992:  /* *p iwmmxt_tandcv2si3 */
    case 3991:  /* *p iwmmxt_wmerge */
    case 3990:  /* *p iwmmxt_wmiawttn */
    case 3989:  /* *p iwmmxt_wmiawtbn */
    case 3988:  /* *p iwmmxt_wmiawbtn */
    case 3987:  /* *p iwmmxt_wmiawbbn */
    case 3986:  /* *p iwmmxt_wmiawtt */
    case 3985:  /* *p iwmmxt_wmiawtb */
    case 3984:  /* *p iwmmxt_wmiawbt */
    case 3983:  /* *p iwmmxt_wmiawbb */
    case 3982:  /* *p iwmmxt_wmiattn */
    case 3981:  /* *p iwmmxt_wmiatbn */
    case 3980:  /* *p iwmmxt_wmiabtn */
    case 3979:  /* *p iwmmxt_wmiabbn */
    case 3978:  /* *p iwmmxt_wmiatt */
    case 3977:  /* *p iwmmxt_wmiatb */
    case 3976:  /* *p iwmmxt_wmiabt */
    case 3975:  /* *p iwmmxt_wmiabb */
    case 3974:  /* *p iwmmxt_wqmiattn */
    case 3973:  /* *p iwmmxt_wqmiatbn */
    case 3972:  /* *p iwmmxt_wqmiabtn */
    case 3971:  /* *p iwmmxt_wqmiabbn */
    case 3970:  /* *p iwmmxt_wqmiatt */
    case 3969:  /* *p iwmmxt_wqmiatb */
    case 3968:  /* *p iwmmxt_wqmiabt */
    case 3967:  /* *p iwmmxt_wqmiabb */
    case 3966:  /* *p iwmmxt_waddbhusl */
    case 3965:  /* *p iwmmxt_waddbhusm */
    case 3964:  /* *p iwmmxt_wqmulwmr */
    case 3963:  /* *p iwmmxt_wqmulmr */
    case 3962:  /* *p iwmmxt_wqmulwm */
    case 3961:  /* *p iwmmxt_wqmulm */
    case 3960:  /* *p iwmmxt_wmulwl */
    case 3959:  /* *p iwmmxt_wmulwumr */
    case 3958:  /* *p iwmmxt_wmulwsmr */
    case 3957:  /* *p iwmmxt_wmulumr */
    case 3956:  /* *p iwmmxt_wmulsmr */
    case 3955:  /* *p iwmmxt_wmulwum */
    case 3954:  /* *p iwmmxt_wmulwsm */
    case 3953:  /* *p iwmmxt_wmaddun */
    case 3952:  /* *p iwmmxt_wmaddsn */
    case 3951:  /* *p iwmmxt_wmaddux */
    case 3950:  /* *p iwmmxt_wmaddsx */
    case 3949:  /* *p iwmmxt_avg4r */
    case 3948:  /* *p iwmmxt_avg4 */
    case 3947:  /* *p addcv2si3 */
    case 3946:  /* *p addcv4hi3 */
    case 3945:  /* *p iwmmxt_wsubaddhx */
    case 3944:  /* *p iwmmxt_waddsubhx */
    case 3943:  /* *p iwmmxt_wabsdiffw */
    case 3942:  /* *p iwmmxt_wabsdiffh */
    case 3941:  /* *p iwmmxt_wabsdiffb */
    case 3940:  /* *p iwmmxt_wabsv8qi3 */
    case 3939:  /* *p iwmmxt_wabsv4hi3 */
    case 3938:  /* *p iwmmxt_wabsv2si3 */
    case 3937:  /* *p iwmmxt_wsadhz */
    case 3936:  /* *p iwmmxt_wsadbz */
    case 3935:  /* *p iwmmxt_wsadh */
    case 3934:  /* *p iwmmxt_wsadb */
    case 3933:  /* *p iwmmxt_walignr3 */
    case 3932:  /* *p iwmmxt_walignr2 */
    case 3931:  /* *p iwmmxt_walignr1 */
    case 3930:  /* *p iwmmxt_walignr0 */
    case 3929:  /* *p iwmmxt_walignr */
    case 3928:  /* *p iwmmxt_waligni */
    case 3927:  /* *p iwmmxt_waccw */
    case 3926:  /* *p iwmmxt_wacch */
    case 3925:  /* *p iwmmxt_waccb */
    case 3924:  /* *p iwmmxt_tmovmskw */
    case 3923:  /* *p iwmmxt_tmovmskh */
    case 3922:  /* *p iwmmxt_tmovmskb */
    case 3921:  /* *p iwmmxt_tmiatt */
    case 3920:  /* *p iwmmxt_tmiabt */
    case 3919:  /* *p iwmmxt_tmiatb */
    case 3918:  /* *p iwmmxt_tmiabb */
    case 3917:  /* *p iwmmxt_tmiaph */
    case 3916:  /* *p iwmmxt_tmia */
    case 3915:  /* *p iwmmxt_wmaddu */
    case 3914:  /* *p iwmmxt_wmadds */
    case 3913:  /* *p ashldi3_di */
    case 3912:  /* *p ashlv2si3_di */
    case 3911:  /* *p ashlv4hi3_di */
    case 3910:  /* *p lshrdi3_di */
    case 3909:  /* *p lshrv2si3_di */
    case 3908:  /* *p lshrv4hi3_di */
    case 3907:  /* *p ashrdi3_di */
    case 3906:  /* *p ashrv2si3_di */
    case 3905:  /* *p ashrv4hi3_di */
    case 3904:  /* *p rordi3_di */
    case 3903:  /* *p rorv2si3_di */
    case 3902:  /* *p rorv4hi3_di */
    case 3901:  /* *p ashldi3_iwmmxt */
    case 3900:  /* *p ashlv2si3_iwmmxt */
    case 3899:  /* *p ashlv4hi3_iwmmxt */
    case 3898:  /* *p lshrdi3_iwmmxt */
    case 3897:  /* *p lshrv2si3_iwmmxt */
    case 3896:  /* *p lshrv4hi3_iwmmxt */
    case 3895:  /* *p ashrdi3_iwmmxt */
    case 3894:  /* *p ashrv2si3_iwmmxt */
    case 3893:  /* *p ashrv4hi3_iwmmxt */
    case 3892:  /* *p rordi3 */
    case 3891:  /* *p rorv2si3 */
    case 3890:  /* *p rorv4hi3 */
    case 3889:  /* *p iwmmxt_wunpckelsw */
    case 3888:  /* *p iwmmxt_wunpckelsh */
    case 3887:  /* *p iwmmxt_wunpckelsb */
    case 3886:  /* *p iwmmxt_wunpckeluw */
    case 3885:  /* *p iwmmxt_wunpckeluh */
    case 3884:  /* *p iwmmxt_wunpckelub */
    case 3883:  /* *p iwmmxt_wunpckehsw */
    case 3882:  /* *p iwmmxt_wunpckehsh */
    case 3881:  /* *p iwmmxt_wunpckehsb */
    case 3880:  /* *p iwmmxt_wunpckehuw */
    case 3879:  /* *p iwmmxt_wunpckehuh */
    case 3878:  /* *p iwmmxt_wunpckehub */
    case 3877:  /* *p iwmmxt_wunpckilw */
    case 3876:  /* *p iwmmxt_wunpckilh */
    case 3875:  /* *p iwmmxt_wunpckilb */
    case 3874:  /* *p iwmmxt_wunpckihw */
    case 3873:  /* *p iwmmxt_wunpckihh */
    case 3872:  /* *p iwmmxt_wunpckihb */
    case 3871:  /* *p iwmmxt_wpackdus */
    case 3870:  /* *p iwmmxt_wpackwus */
    case 3869:  /* *p iwmmxt_wpackhus */
    case 3868:  /* *p iwmmxt_wpackdss */
    case 3867:  /* *p iwmmxt_wpackwss */
    case 3866:  /* *p iwmmxt_wpackhss */
    case 3865:  /* *p *uminv8qi3_iwmmxt */
    case 3864:  /* *p *uminv4hi3_iwmmxt */
    case 3863:  /* *p *uminv2si3_iwmmxt */
    case 3862:  /* *p *sminv8qi3_iwmmxt */
    case 3861:  /* *p *sminv4hi3_iwmmxt */
    case 3860:  /* *p *sminv2si3_iwmmxt */
    case 3859:  /* *p *umaxv8qi3_iwmmxt */
    case 3858:  /* *p *umaxv4hi3_iwmmxt */
    case 3857:  /* *p *umaxv2si3_iwmmxt */
    case 3856:  /* *p *smaxv8qi3_iwmmxt */
    case 3855:  /* *p *smaxv4hi3_iwmmxt */
    case 3854:  /* *p *smaxv2si3_iwmmxt */
    case 3853:  /* *p gtv2si3 */
    case 3852:  /* *p gtv4hi3 */
    case 3851:  /* *p gtv8qi3 */
    case 3850:  /* *p gtuv2si3 */
    case 3849:  /* *p gtuv4hi3 */
    case 3848:  /* *p gtuv8qi3 */
    case 3847:  /* *p eqv2si3 */
    case 3846:  /* *p eqv4hi3 */
    case 3845:  /* *p eqv8qi3 */
    case 3844:  /* *p iwmmxt_wshufh */
    case 3843:  /* *p iwmmxt_textrmw */
    case 3842:  /* *p iwmmxt_textrmsh */
    case 3841:  /* *p iwmmxt_textrmuh */
    case 3840:  /* *p iwmmxt_textrmsb */
    case 3839:  /* *p iwmmxt_textrmub */
    case 3838:  /* *p iwmmxt_tinsrw */
    case 3837:  /* *p iwmmxt_tinsrh */
    case 3836:  /* *p iwmmxt_tinsrb */
    case 3835:  /* *p iwmmxt_uavgv4hi3 */
    case 3834:  /* *p iwmmxt_uavgv8qi3 */
    case 3833:  /* *p iwmmxt_uavgrndv4hi3 */
    case 3832:  /* *p iwmmxt_uavgrndv8qi3 */
    case 3831:  /* *p iwmmxt_clrv2si */
    case 3830:  /* *p iwmmxt_clrv4hi */
    case 3829:  /* *p iwmmxt_clrv8qi */
    case 3828:  /* *p iwmmxt_clrdi */
    case 3827:  /* *p iwmmxt_wmacuz */
    case 3826:  /* *p iwmmxt_wmacu */
    case 3825:  /* *p iwmmxt_wmacsz */
    case 3824:  /* *p iwmmxt_wmacs */
    case 3823:  /* *p umulv4hi3_highpart */
    case 3822:  /* *p smulv4hi3_highpart */
    case 3821:  /* *p *mulv4hi3_iwmmxt */
    case 3820:  /* *p ussubv2si3 */
    case 3819:  /* *p ussubv4hi3 */
    case 3818:  /* *p ussubv8qi3 */
    case 3817:  /* *p sssubv2si3 */
    case 3816:  /* *p sssubv4hi3 */
    case 3815:  /* *p sssubv8qi3 */
    case 3814:  /* *p *subv8qi3_iwmmxt */
    case 3813:  /* *p *subv4hi3_iwmmxt */
    case 3812:  /* *p *subv2si3_iwmmxt */
    case 3811:  /* *p usaddv2si3 */
    case 3810:  /* *p usaddv4hi3 */
    case 3809:  /* *p usaddv8qi3 */
    case 3808:  /* *p ssaddv2si3 */
    case 3807:  /* *p ssaddv4hi3 */
    case 3806:  /* *p ssaddv8qi3 */
    case 3805:  /* *p *addv8qi3_iwmmxt */
    case 3804:  /* *p *addv4hi3_iwmmxt */
    case 3803:  /* *p *addv2si3_iwmmxt */
    case 3802:  /* *p *xorv8qi3_iwmmxt */
    case 3801:  /* *p *xorv4hi3_iwmmxt */
    case 3800:  /* *p *xorv2si3_iwmmxt */
    case 3799:  /* *p *iorv8qi3_iwmmxt */
    case 3798:  /* *p *iorv4hi3_iwmmxt */
    case 3797:  /* *p *iorv2si3_iwmmxt */
    case 3796:  /* *p *andv8qi3_iwmmxt */
    case 3795:  /* *p *andv4hi3_iwmmxt */
    case 3794:  /* *p *andv2si3_iwmmxt */
    case 3793:  /* *p movv8qi_internal */
    case 3792:  /* *p movv4hi_internal */
    case 3791:  /* *p movv2si_internal */
    case 3790:  /* *p iwmmxt_nanddi3 */
    case 3789:  /* *p iwmmxt_anddi3 */
    case 3788:  /* *p iwmmxt_xordi3 */
    case 3787:  /* *p iwmmxt_iordi3 */
    case 3786:  /* *p tbcstv2si */
    case 3785:  /* *p tbcstv4hi */
    case 3784:  /* *p tbcstv8qi */
    case 3783:  /* *p *load_multiple */
    case 3782:  /* *p *stm2_db_update */
    case 3781:  /* *p *stm2_db */
    case 3780:  /* *p *ldm2_db_update */
    case 3779:  /* *p *ldm2_db */
    case 3778:  /* *p *stm2_da_update */
    case 3777:  /* *p *stm2_da */
    case 3776:  /* *p *ldm2_da_update */
    case 3775:  /* *p *ldm2_da */
    case 3774:  /* *p *stm2_ib_update */
    case 3773:  /* *p *stm2_ib */
    case 3772:  /* *p *ldm2_ib_update */
    case 3771:  /* *p *ldm2_ib */
    case 3770:  /* *p *stm2_ia_update */
    case 3769:  /* *p *stm2_ */
    case 3768:  /* *p *ldm2_ia_update */
    case 3767:  /* *p *ldm2_ */
    case 3766:  /* *p *stm3_db_update */
    case 3765:  /* *p *stm3_db */
    case 3764:  /* *p *ldm3_db_update */
    case 3763:  /* *p *ldm3_db */
    case 3762:  /* *p *stm3_da_update */
    case 3761:  /* *p *stm3_da */
    case 3760:  /* *p *ldm3_da_update */
    case 3759:  /* *p *ldm3_da */
    case 3758:  /* *p *stm3_ib_update */
    case 3757:  /* *p *stm3_ib */
    case 3756:  /* *p *ldm3_ib_update */
    case 3755:  /* *p *ldm3_ib */
    case 3754:  /* *p *stm3_ia_update */
    case 3753:  /* *p *stm3_ */
    case 3752:  /* *p *ldm3_ia_update */
    case 3751:  /* *p *ldm3_ */
    case 3750:  /* *p *stm4_db_update */
    case 3749:  /* *p *stm4_db */
    case 3748:  /* *p *ldm4_db_update */
    case 3747:  /* *p *ldm4_db */
    case 3746:  /* *p *stm4_da_update */
    case 3745:  /* *p *stm4_da */
    case 3744:  /* *p *ldm4_da_update */
    case 3743:  /* *p *ldm4_da */
    case 3742:  /* *p *stm4_ib_update */
    case 3741:  /* *p *stm4_ib */
    case 3740:  /* *p *ldm4_ib_update */
    case 3739:  /* *p *ldm4_ib */
    case 3738:  /* *p *stm4_ia_update */
    case 3737:  /* *p *stm4_ */
    case 3736:  /* *p *ldm4_ia_update */
    case 3735:  /* *p *ldm4_ */
    case 3734:  /* *p *thumb2_strd_base_neg */
    case 3733:  /* *p *thumb2_strd_base */
    case 3732:  /* *p *thumb2_strd */
    case 3731:  /* *p *thumb2_ldrd_base_neg */
    case 3730:  /* *p *thumb2_ldrd_base */
    case 3729:  /* *p *thumb2_ldrd */
    case 3728:  /* *p *arm_rev */
    case 3727:  /* *p *arm_movtas_ze */
    case 3726:  /* *p load_tp_hard */
    case 3725:  /* *p rbitsi2 */
    case 3724:  /* *p clzsi2 */
    case 3723:  /* *p *ldr_with_return */
    case 3722:  /* *p *pop_multiple_with_return */
    case 3721:  /* *p *pop_multiple_with_writeback_and_return */
    case 3720:  /* *p *load_multiple_with_writeback */
    case 3719:  /* *p *arith_adjacentmem */
    case 3718:  /* *p *sub_shiftsi */
    case 3717:  /* *p *and_shiftsi */
    case 3716:  /* *p *eor_shiftsi */
    case 3715:  /* *p *orr_shiftsi */
    case 3714:  /* *p *rsb_shiftsi */
    case 3713:  /* *p *add_shiftsi */
    case 3712:  /* *p *and_multsi */
    case 3711:  /* *p *eor_multsi */
    case 3710:  /* *p *orr_multsi */
    case 3709:  /* *p *rsb_multsi */
    case 3708:  /* *p *add_multsi */
    case 3707:  /* *p *load_indirect_jump */
    case 3706:  /* *p *arm_indirect_jump */
    case 3705:  /* *p probe_stack */
    case 3704:  /* *p *arm_simple_return */
    case 3703:  /* *p *arm_return */
    case 3702:  /* *p *arm_jump */
    case 3699:  /* *p *arm_movsf_soft_insn */
    case 3697:  /* *p *arm_movqi_insn */
    case 3696:  /* *p *movhi_bytes */
    case 3695:  /* *p *movhi_insn_arch4 */
    case 3694:  /* *p tls_load_dot_plus_eight */
    case 3693:  /* *p pic_add_dot_plus_eight */
    case 3692:  /* *p *arm_movsi_insn */
    case 3691:  /* *p *arm_movt */
    case 3690:  /* *p *arm_extendqisi2addsi */
    case 3689:  /* *p *arm_extendqisi_v6 */
    case 3688:  /* *p *arm_extendqisi */
    case 3687:  /* *p *arm_extendqihi_insn */
    case 3686:  /* *p *arm_extendhisi2_v6 */
    case 3685:  /* *p *arm_extendhisi2 */
    case 3683:  /* *p *arm_zero_extendqisi2addsi */
    case 3682:  /* *p *arm_zero_extendqisi2_v6 */
    case 3681:  /* *p *arm_zero_extendqisi2 */
    case 3680:  /* *p *arm_zero_extendhisi2addsi */
    case 3679:  /* *p *arm_zero_extendhisi2_v6 */
    case 3678:  /* *p *arm_zero_extendhisi2 */
    case 3677:  /* *p extendsidi2 */
    case 3676:  /* *p extendhidi2 */
    case 3675:  /* *p extendqidi2 */
    case 3674:  /* *p zero_extendsidi2 */
    case 3673:  /* *p zero_extendhidi2 */
    case 3672:  /* *p zero_extendqidi2 */
    case 3671:  /* *p *arm_one_cmplsi2 */
    case 3667:  /* *p *arm_negsi2 */
    case 3666:  /* *p udivsi3 */
    case 3665:  /* *p divsi3 */
    case 3664:  /* *p extzv_t2 */
    case 3663:  /* *p *extv_reg */
    case 3662:  /* *p unaligned_storehi */
    case 3661:  /* *p unaligned_storesi */
    case 3660:  /* *p unaligned_loadhiu */
    case 3659:  /* *p unaligned_loadhis */
    case 3658:  /* *p unaligned_loadsi */
    case 3657:  /* *p *not_shiftsi */
    case 3656:  /* *p *arm_shiftsi3 */
    case 3655:  /* *p *satsi_smax_shift */
    case 3654:  /* *p *satsi_smin_shift */
    case 3653:  /* *p *satsi_smax_shift */
    case 3652:  /* *p *satsi_smin_shift */
    case 3651:  /* *p *satsi_smax */
    case 3650:  /* *p *satsi_smin */
    case 3649:  /* *p *satsi_smax */
    case 3648:  /* *p *satsi_smin */
    case 3647:  /* *p *smin_0 */
    case 3646:  /* *p *smax_m1 */
    case 3645:  /* *p *smax_0 */
    case 3644:  /* *p *andsi_iorsi3_notsi */
    case 3643:  /* *p *arm_xorsi3 */
    case 3642:  /* *p *xordi_sesidi_di */
    case 3641:  /* *p *xordi_zesidi_di */
    case 3640:  /* *p *iorsi3_insn */
    case 3639:  /* *p *iordi_sesidi_di */
    case 3638:  /* *p *iordi_zesidi_di */
    case 3635:  /* *p andsi_not_shiftsi_si */
    case 3634:  /* *p andsi_notsi_si */
    case 3633:  /* *p *anddi_notsesidi_di */
    case 3632:  /* *p *anddi_notdi_zesidi */
    case 3631:  /* *p *anddi_notzesidi_di */
    case 3630:  /* *p *anddi_notdi_di */
    case 3629:  /* *p insv_t2 */
    case 3628:  /* *p insv_zero */
    case 3626:  /* *p *arm_andsi3_insn */
    case 3625:  /* *p *maddhidi4tt */
    case 3624:  /* *p *maddhidi4tb */
    case 3623:  /* *p maddhidi4 */
    case 3622:  /* *p *maddhisi4tt */
    case 3621:  /* *p *maddhisi4tb */
    case 3620:  /* *p maddhisi4 */
    case 3619:  /* *p *mulhisi3tt */
    case 3618:  /* *p *mulhisi3bt */
    case 3617:  /* *p *mulhisi3tb */
    case 3616:  /* *p mulhisi3 */
    case 3615:  /* *p *umulsi3_highpart_v6 */
    case 3614:  /* *p *umulsi3_highpart_nov6 */
    case 3613:  /* *p *smulsi3_highpart_v6 */
    case 3612:  /* *p *smulsi3_highpart_nov6 */
    case 3611:  /* *p *umulsidi3adddi_v6 */
    case 3610:  /* *p *umulsidi3adddi */
    case 3609:  /* *p *umulsidi3_v6 */
    case 3608:  /* *p *umulsidi3_nov6 */
    case 3607:  /* *p *mulsidi3_v6 */
    case 3606:  /* *p *mulsidi3_nov6 */
    case 3605:  /* *p *mulsidi3adddi_v6 */
    case 3604:  /* *p *mulsidi3adddi */
    case 3603:  /* *p *mulsi3subsi */
    case 3602:  /* *p *mulsi3addsi_v6 */
    case 3601:  /* *p *mulsi3addsi */
    case 3600:  /* *p *arm_mulsi3_v6 */
    case 3599:  /* *p *arm_mulsi3 */
    case 3598:  /* *p *arm_subsi3_insn */
    case 3584:  /* *p *arm_addsi3 */
    case 2723:  /* arm_usatsihi */
    case 2722:  /* arm_ssatsihi_shift */
    case 2719:  /* sssubsa3 */
    case 2718:  /* sssubsq3 */
    case 2717:  /* sssubha3 */
    case 2716:  /* sssubv2ha3 */
    case 2715:  /* sssubhq3 */
    case 2714:  /* sssubqq3 */
    case 2713:  /* sssubv2hq3 */
    case 2712:  /* sssubv4qq3 */
    case 2711:  /* ussubuha3 */
    case 2710:  /* ussubv2uha3 */
    case 2709:  /* ussubuhq3 */
    case 2708:  /* ussubuqq3 */
    case 2707:  /* ussubv2uhq3 */
    case 2706:  /* ussubv4uqq3 */
    case 2705:  /* subv2ha3 */
    case 2704:  /* subv2hq3 */
    case 2703:  /* subv4qq3 */
    case 2702:  /* subusa3 */
    case 2701:  /* subuha3 */
    case 2700:  /* subsa3 */
    case 2699:  /* subha3 */
    case 2698:  /* subusq3 */
    case 2697:  /* subuhq3 */
    case 2696:  /* subuqq3 */
    case 2695:  /* subsq3 */
    case 2694:  /* subhq3 */
    case 2693:  /* subqq3 */
    case 2692:  /* ssaddsa3 */
    case 2691:  /* ssaddsq3 */
    case 2690:  /* ssaddha3 */
    case 2689:  /* ssaddv2ha3 */
    case 2688:  /* ssaddhq3 */
    case 2687:  /* ssaddqq3 */
    case 2686:  /* ssaddv2hq3 */
    case 2685:  /* ssaddv4qq3 */
    case 2684:  /* usadduha3 */
    case 2683:  /* usaddv2uha3 */
    case 2682:  /* usadduhq3 */
    case 2681:  /* usadduqq3 */
    case 2680:  /* usaddv2uhq3 */
    case 2679:  /* usaddv4uqq3 */
    case 2678:  /* addv2ha3 */
    case 2677:  /* addv2hq3 */
    case 2676:  /* addv4qq3 */
    case 2675:  /* addusa3 */
    case 2674:  /* adduha3 */
    case 2673:  /* addsa3 */
    case 2672:  /* addha3 */
    case 2671:  /* addusq3 */
    case 2670:  /* adduhq3 */
    case 2669:  /* adduqq3 */
    case 2668:  /* addsq3 */
    case 2667:  /* addhq3 */
    case 2666:  /* addqq3 */
    case 2665:  /* arm_store_release_exclusivesi */
    case 2664:  /* arm_store_release_exclusivehi */
    case 2663:  /* arm_store_release_exclusiveqi */
    case 2662:  /* arm_store_release_exclusivedi */
    case 2661:  /* arm_store_exclusivedi */
    case 2660:  /* arm_store_exclusivesi */
    case 2659:  /* arm_store_exclusivehi */
    case 2658:  /* arm_store_exclusiveqi */
    case 2657:  /* arm_load_acquire_exclusivedi */
    case 2656:  /* arm_load_exclusivedi */
    case 2655:  /* arm_load_acquire_exclusivesi */
    case 2654:  /* arm_load_exclusivesi */
    case 2653:  /* arm_load_acquire_exclusivehi */
    case 2652:  /* arm_load_acquire_exclusiveqi */
    case 2651:  /* arm_load_exclusivehi */
    case 2650:  /* arm_load_exclusiveqi */
    case 2649:  /* atomic_nand_fetchdi */
    case 2648:  /* atomic_nand_fetchsi */
    case 2647:  /* atomic_nand_fetchhi */
    case 2646:  /* atomic_nand_fetchqi */
    case 2645:  /* atomic_and_fetchdi */
    case 2644:  /* atomic_xor_fetchdi */
    case 2643:  /* atomic_or_fetchdi */
    case 2642:  /* atomic_sub_fetchdi */
    case 2641:  /* atomic_add_fetchdi */
    case 2640:  /* atomic_and_fetchsi */
    case 2639:  /* atomic_xor_fetchsi */
    case 2638:  /* atomic_or_fetchsi */
    case 2637:  /* atomic_sub_fetchsi */
    case 2636:  /* atomic_add_fetchsi */
    case 2635:  /* atomic_and_fetchhi */
    case 2634:  /* atomic_xor_fetchhi */
    case 2633:  /* atomic_or_fetchhi */
    case 2632:  /* atomic_sub_fetchhi */
    case 2631:  /* atomic_add_fetchhi */
    case 2630:  /* atomic_and_fetchqi */
    case 2629:  /* atomic_xor_fetchqi */
    case 2628:  /* atomic_or_fetchqi */
    case 2627:  /* atomic_sub_fetchqi */
    case 2626:  /* atomic_add_fetchqi */
    case 2625:  /* atomic_fetch_nanddi */
    case 2624:  /* atomic_fetch_nandsi */
    case 2623:  /* atomic_fetch_nandhi */
    case 2622:  /* atomic_fetch_nandqi */
    case 2621:  /* atomic_fetch_anddi */
    case 2620:  /* atomic_fetch_xordi */
    case 2619:  /* atomic_fetch_ordi */
    case 2618:  /* atomic_fetch_subdi */
    case 2617:  /* atomic_fetch_adddi */
    case 2616:  /* atomic_fetch_andsi */
    case 2615:  /* atomic_fetch_xorsi */
    case 2614:  /* atomic_fetch_orsi */
    case 2613:  /* atomic_fetch_subsi */
    case 2612:  /* atomic_fetch_addsi */
    case 2611:  /* atomic_fetch_andhi */
    case 2610:  /* atomic_fetch_xorhi */
    case 2609:  /* atomic_fetch_orhi */
    case 2608:  /* atomic_fetch_subhi */
    case 2607:  /* atomic_fetch_addhi */
    case 2606:  /* atomic_fetch_andqi */
    case 2605:  /* atomic_fetch_xorqi */
    case 2604:  /* atomic_fetch_orqi */
    case 2603:  /* atomic_fetch_subqi */
    case 2602:  /* atomic_fetch_addqi */
    case 2601:  /* atomic_nanddi */
    case 2600:  /* atomic_nandsi */
    case 2599:  /* atomic_nandhi */
    case 2598:  /* atomic_nandqi */
    case 2597:  /* atomic_anddi */
    case 2596:  /* atomic_xordi */
    case 2595:  /* atomic_ordi */
    case 2594:  /* atomic_subdi */
    case 2593:  /* atomic_adddi */
    case 2592:  /* atomic_andsi */
    case 2591:  /* atomic_xorsi */
    case 2590:  /* atomic_orsi */
    case 2589:  /* atomic_subsi */
    case 2588:  /* atomic_addsi */
    case 2587:  /* atomic_andhi */
    case 2586:  /* atomic_xorhi */
    case 2585:  /* atomic_orhi */
    case 2584:  /* atomic_subhi */
    case 2583:  /* atomic_addhi */
    case 2582:  /* atomic_andqi */
    case 2581:  /* atomic_xorqi */
    case 2580:  /* atomic_orqi */
    case 2579:  /* atomic_subqi */
    case 2578:  /* atomic_addqi */
    case 2577:  /* atomic_exchangedi */
    case 2576:  /* atomic_exchangesi */
    case 2575:  /* atomic_exchangehi */
    case 2574:  /* atomic_exchangeqi */
    case 2573:  /* atomic_compare_and_swapdi_1 */
    case 2572:  /* atomic_compare_and_swapsi_1 */
    case 2571:  /* atomic_compare_and_swaphi_1 */
    case 2570:  /* atomic_compare_and_swapqi_1 */
    case 2569:  /* arm_atomic_loaddi2_ldrd */
    case 2568:  /* atomic_storesi */
    case 2567:  /* atomic_storehi */
    case 2566:  /* atomic_storeqi */
    case 2565:  /* atomic_loadsi */
    case 2564:  /* atomic_loadhi */
    case 2563:  /* atomic_loadqi */
    case 2521:  /* vec_pack_trunc_v2di */
    case 2520:  /* vec_pack_trunc_v4si */
    case 2519:  /* vec_pack_trunc_v8hi */
    case 2225:  /* neon_vcombinev16qi */
    case 2224:  /* neon_vtbl2v16qi */
    case 2223:  /* neon_vtbl1v16qi */
    case 1841:  /* neon_vcombinedi */
    case 1840:  /* neon_vcombinev2sf */
    case 1839:  /* neon_vcombinev2si */
    case 1838:  /* neon_vcombinev4hf */
    case 1837:  /* neon_vcombinev4hi */
    case 1836:  /* neon_vcombinev8qi */
    case 1813:  /* neon_vdup_nv2di */
    case 1232:  /* lshrdi3_neon */
    case 1231:  /* ashrdi3_neon */
    case 1226:  /* ashldi3_neon */
    case 1145:  /* negdi2_neon */
    case 907:  /* *orsi_not_shiftsi_si */
    case 906:  /* *orsi_notsi_si */
    case 905:  /* *iordi_notsesidi_di */
    case 904:  /* *iordi_notdi_zesidi */
    case 903:  /* *iordi_notzesidi_di */
    case 902:  /* *iordi_notdi_di */
    case 901:  /* *thumb2_negsi2_short */
    case 900:  /* *thumb2_one_cmplsi2_short */
    case 899:  /* *thumb2_cbnz */
    case 898:  /* *thumb2_cbz */
    case 897:  /* *thumb2_mulsi_short_compare0_scratch */
    case 896:  /* *thumb2_mulsi_short_compare0 */
    case 895:  /* *thumb2_mulsi_short */
    case 892:  /* *thumb2_subsi_short */
    case 891:  /* *thumb2_addsi_short */
    case 890:  /* *thumb2_movsi_shortim */
    case 889:  /* *thumb2_movhi_shortim */
    case 888:  /* *thumb2_movqi_shortim */
    case 887:  /* *thumb2_shiftsi3_short */
    case 886:  /* *thumb2_alusi3_short */
    case 885:  /* thumb2_eh_return */
    case 884:  /* *thumb2_return */
    case 881:  /* thumb2_zero_extendqisi2_v6 */
    case 880:  /* *thumb2_zero_extendhisi2_v6 */
    case 879:  /* *thumb2_extendqisi_v6 */
    case 858:  /* *thumb2_storewb_pairsi */
    case 857:  /* *thumb2_movhi_insn */
    case 856:  /* tls_load_dot_plus_four */
    case 855:  /* *thumb2_movsi_insn */
    case 854:  /* *thumb2_pop_single */
    case 846:  /* *thumb_andsi_not_shiftsi_si */
    case 845:  /* thumb_eh_return */
    case 844:  /* *thumb1_tablejump */
    case 841:  /* prologue_thumb1_interwork */
    case 839:  /* thumb1_casesi_dispatch */
    case 832:  /* *thumb_jump */
    case 831:  /* thumb1_addsi3_addgeu */
    case 830:  /* cstoresi_ltu_thumb1 */
    case 829:  /* cstoresi_nltu_thumb1 */
    case 828:  /* *cstoresi_ne0_thumb1_insn */
    case 827:  /* *cstoresi_eq0_thumb1_insn */
    case 825:  /* *addsi3_cbranch_scratch */
    case 824:  /* *addsi3_cbranch */
    case 823:  /* *cbranchne_decr1 */
    case 822:  /* *tstsi3_cbranch */
    case 821:  /* *tlobits_cbranch */
    case 820:  /* *tbit_cbranch */
    case 819:  /* *negated_cbranchsi4 */
    case 818:  /* cbranchsi4_scratch */
    case 817:  /* cbranchsi4_insn */
    case 816:  /* thumb1_cbz */
    case 815:  /* movmem8b */
    case 814:  /* movmem12b */
    case 813:  /* *thumb_movdf_insn */
    case 807:  /* *thumb1_movdi_insn */
    case 806:  /* thumb1_extendqisi2 */
    case 805:  /* thumb1_extendhisi2 */
    case 804:  /* *thumb1_zero_extendqisi2_v6 */
    case 803:  /* *thumb1_zero_extendqisi2 */
    case 802:  /* *thumb1_zero_extendhisi2 */
    case 801:  /* *thumb1_one_cmplsi2 */
    case 800:  /* *thumb1_neg_abssi2 */
    case 799:  /* *thumb1_abssi2 */
    case 798:  /* *thumb1_negsi2 */
    case 797:  /* *thumb1_negdi2 */
    case 796:  /* *thumb1_rotrsi3 */
    case 788:  /* *thumb_mulsi3_v6 */
    case 787:  /* *thumb_mulsi3 */
    case 785:  /* *thumb_subdi3 */
    case 784:  /* *thumb1_addsi3 */
    case 783:  /* *thumb1_adddi3 */
    case 782:  /* get_fpscr */
    case 781:  /* set_fpscr */
    case 746:  /* *push_multi_vfp */
    case 729:  /* *combine_vcvtf2i */
    case 728:  /* *combine_vcvt_f64_s32 */
    case 727:  /* *combine_vcvt_f64_u32 */
    case 726:  /* *combine_vcvt_f32_s32 */
    case 725:  /* *combine_vcvt_f32_u32 */
    case 724:  /* *cmpdf_trap_vfp */
    case 723:  /* *cmpdf_vfp */
    case 722:  /* *cmpsf_trap_vfp */
    case 721:  /* *cmpsf_vfp */
    case 720:  /* *cmpdf_trap_split_vfp */
    case 719:  /* *cmpdf_split_vfp */
    case 718:  /* *cmpsf_trap_split_vfp */
    case 717:  /* *cmpsf_split_vfp */
    case 715:  /* *sqrtdf2_vfp */
    case 714:  /* *sqrtsf2_vfp */
    case 711:  /* floatunssidf2 */
    case 710:  /* floatunssisf2 */
    case 709:  /* *floatsidf2_vfp */
    case 708:  /* *floatsisf2_vfp */
    case 707:  /* fixuns_truncdfsi2 */
    case 706:  /* fixuns_truncsfsi2 */
    case 705:  /* *truncsidf2_vfp */
    case 704:  /* *truncsisf2_vfp */
    case 703:  /* truncsfhf2 */
    case 702:  /* extendhfsf2 */
    case 701:  /* *truncdfsf2_vfp */
    case 700:  /* *extendsfdf2_vfp */
    case 699:  /* *fnmadddf4 */
    case 698:  /* *fnmaddsf4 */
    case 696:  /* *fnmsubdf4 */
    case 695:  /* *fnmsubsf4 */
    case 693:  /* *fmsubdf4 */
    case 692:  /* *fmsubsf4 */
    case 690:  /* fmadf4 */
    case 689:  /* fmasf4 */
    case 687:  /* *muldf3negdfsubdf_vfp */
    case 686:  /* *mulsf3negsfsubsf_vfp */
    case 684:  /* *fmuldf3negdfadddf_vfp */
    case 683:  /* *mulsf3negsfaddsf_vfp */
    case 681:  /* *muldf3subdf_vfp */
    case 680:  /* *mulsf3subsf_vfp */
    case 678:  /* *muldf3adddf_vfp */
    case 677:  /* *mulsf3addsf_vfp */
    case 675:  /* *negmuldf3_vfp */
    case 674:  /* *muldf3negdf_vfp */
    case 673:  /* *negmulsf3_vfp */
    case 672:  /* *mulsf3negsf_vfp */
    case 669:  /* *muldf3_vfp */
    case 668:  /* *mulsf3_vfp */
    case 666:  /* *divdf3_vfp */
    case 665:  /* *divsf3_vfp */
    case 663:  /* *subdf3_vfp */
    case 662:  /* *subsf3_vfp */
    case 660:  /* *adddf3_vfp */
    case 659:  /* *addsf3_vfp */
    case 648:  /* *negdf2_vfp */
    case 647:  /* *negsf2_vfp */
    case 646:  /* *absdf2_vfp */
    case 645:  /* *abssf2_vfp */
    case 638:  /* *thumb2_movsf_vfp */
    case 637:  /* *movsf_vfp */
    case 633:  /* *movdi_vfp_cortexa8 */
    case 632:  /* *movdi_vfp */
    case 631:  /* *thumb2_movsi_vfp */
    case 630:  /* *arm_movsi_vfp */
    case 629:  /* *thumb2_movhi_fp16 */
    case 628:  /* *arm_movhi_fp16 */
    case 627:  /* *thumb2_movhi_vfp */
    case 626:  /* *arm_movhi_vfp */
    case 625:  /* iwmmxt_textrcv8qi3 */
    case 624:  /* iwmmxt_textrcv4hi3 */
    case 623:  /* iwmmxt_textrcv2si3 */
    case 622:  /* iwmmxt_torvscv8qi3 */
    case 621:  /* iwmmxt_torvscv4hi3 */
    case 620:  /* iwmmxt_torvscv2si3 */
    case 619:  /* iwmmxt_torcv8qi3 */
    case 618:  /* iwmmxt_torcv4hi3 */
    case 617:  /* iwmmxt_torcv2si3 */
    case 616:  /* iwmmxt_tandcv8qi3 */
    case 615:  /* iwmmxt_tandcv4hi3 */
    case 614:  /* iwmmxt_tandcv2si3 */
    case 613:  /* iwmmxt_wmerge */
    case 612:  /* iwmmxt_wmiawttn */
    case 611:  /* iwmmxt_wmiawtbn */
    case 610:  /* iwmmxt_wmiawbtn */
    case 609:  /* iwmmxt_wmiawbbn */
    case 608:  /* iwmmxt_wmiawtt */
    case 607:  /* iwmmxt_wmiawtb */
    case 606:  /* iwmmxt_wmiawbt */
    case 605:  /* iwmmxt_wmiawbb */
    case 604:  /* iwmmxt_wmiattn */
    case 603:  /* iwmmxt_wmiatbn */
    case 602:  /* iwmmxt_wmiabtn */
    case 601:  /* iwmmxt_wmiabbn */
    case 600:  /* iwmmxt_wmiatt */
    case 599:  /* iwmmxt_wmiatb */
    case 598:  /* iwmmxt_wmiabt */
    case 597:  /* iwmmxt_wmiabb */
    case 596:  /* iwmmxt_wqmiattn */
    case 595:  /* iwmmxt_wqmiatbn */
    case 594:  /* iwmmxt_wqmiabtn */
    case 593:  /* iwmmxt_wqmiabbn */
    case 592:  /* iwmmxt_wqmiatt */
    case 591:  /* iwmmxt_wqmiatb */
    case 590:  /* iwmmxt_wqmiabt */
    case 589:  /* iwmmxt_wqmiabb */
    case 588:  /* iwmmxt_waddbhusl */
    case 587:  /* iwmmxt_waddbhusm */
    case 586:  /* iwmmxt_wqmulwmr */
    case 585:  /* iwmmxt_wqmulmr */
    case 584:  /* iwmmxt_wqmulwm */
    case 583:  /* iwmmxt_wqmulm */
    case 582:  /* iwmmxt_wmulwl */
    case 581:  /* iwmmxt_wmulwumr */
    case 580:  /* iwmmxt_wmulwsmr */
    case 579:  /* iwmmxt_wmulumr */
    case 578:  /* iwmmxt_wmulsmr */
    case 577:  /* iwmmxt_wmulwum */
    case 576:  /* iwmmxt_wmulwsm */
    case 575:  /* iwmmxt_wmaddun */
    case 574:  /* iwmmxt_wmaddsn */
    case 573:  /* iwmmxt_wmaddux */
    case 572:  /* iwmmxt_wmaddsx */
    case 571:  /* iwmmxt_avg4r */
    case 570:  /* iwmmxt_avg4 */
    case 569:  /* addcv2si3 */
    case 568:  /* addcv4hi3 */
    case 567:  /* iwmmxt_wsubaddhx */
    case 566:  /* iwmmxt_waddsubhx */
    case 565:  /* iwmmxt_wabsdiffw */
    case 564:  /* iwmmxt_wabsdiffh */
    case 563:  /* iwmmxt_wabsdiffb */
    case 562:  /* iwmmxt_wabsv8qi3 */
    case 561:  /* iwmmxt_wabsv4hi3 */
    case 560:  /* iwmmxt_wabsv2si3 */
    case 559:  /* iwmmxt_wsadhz */
    case 558:  /* iwmmxt_wsadbz */
    case 557:  /* iwmmxt_wsadh */
    case 556:  /* iwmmxt_wsadb */
    case 555:  /* iwmmxt_walignr3 */
    case 554:  /* iwmmxt_walignr2 */
    case 553:  /* iwmmxt_walignr1 */
    case 552:  /* iwmmxt_walignr0 */
    case 551:  /* iwmmxt_walignr */
    case 550:  /* iwmmxt_waligni */
    case 549:  /* iwmmxt_waccw */
    case 548:  /* iwmmxt_wacch */
    case 547:  /* iwmmxt_waccb */
    case 546:  /* iwmmxt_tmovmskw */
    case 545:  /* iwmmxt_tmovmskh */
    case 544:  /* iwmmxt_tmovmskb */
    case 543:  /* iwmmxt_tmiatt */
    case 542:  /* iwmmxt_tmiabt */
    case 541:  /* iwmmxt_tmiatb */
    case 540:  /* iwmmxt_tmiabb */
    case 539:  /* iwmmxt_tmiaph */
    case 538:  /* iwmmxt_tmia */
    case 537:  /* iwmmxt_wmaddu */
    case 536:  /* iwmmxt_wmadds */
    case 535:  /* ashldi3_di */
    case 534:  /* ashlv2si3_di */
    case 533:  /* ashlv4hi3_di */
    case 532:  /* lshrdi3_di */
    case 531:  /* lshrv2si3_di */
    case 530:  /* lshrv4hi3_di */
    case 529:  /* ashrdi3_di */
    case 528:  /* ashrv2si3_di */
    case 527:  /* ashrv4hi3_di */
    case 526:  /* rordi3_di */
    case 525:  /* rorv2si3_di */
    case 524:  /* rorv4hi3_di */
    case 523:  /* ashldi3_iwmmxt */
    case 522:  /* ashlv2si3_iwmmxt */
    case 521:  /* ashlv4hi3_iwmmxt */
    case 520:  /* lshrdi3_iwmmxt */
    case 519:  /* lshrv2si3_iwmmxt */
    case 518:  /* lshrv4hi3_iwmmxt */
    case 517:  /* ashrdi3_iwmmxt */
    case 516:  /* ashrv2si3_iwmmxt */
    case 515:  /* ashrv4hi3_iwmmxt */
    case 514:  /* rordi3 */
    case 513:  /* rorv2si3 */
    case 512:  /* rorv4hi3 */
    case 511:  /* iwmmxt_wunpckelsw */
    case 510:  /* iwmmxt_wunpckelsh */
    case 509:  /* iwmmxt_wunpckelsb */
    case 508:  /* iwmmxt_wunpckeluw */
    case 507:  /* iwmmxt_wunpckeluh */
    case 506:  /* iwmmxt_wunpckelub */
    case 505:  /* iwmmxt_wunpckehsw */
    case 504:  /* iwmmxt_wunpckehsh */
    case 503:  /* iwmmxt_wunpckehsb */
    case 502:  /* iwmmxt_wunpckehuw */
    case 501:  /* iwmmxt_wunpckehuh */
    case 500:  /* iwmmxt_wunpckehub */
    case 499:  /* iwmmxt_wunpckilw */
    case 498:  /* iwmmxt_wunpckilh */
    case 497:  /* iwmmxt_wunpckilb */
    case 496:  /* iwmmxt_wunpckihw */
    case 495:  /* iwmmxt_wunpckihh */
    case 494:  /* iwmmxt_wunpckihb */
    case 493:  /* iwmmxt_wpackdus */
    case 492:  /* iwmmxt_wpackwus */
    case 491:  /* iwmmxt_wpackhus */
    case 490:  /* iwmmxt_wpackdss */
    case 489:  /* iwmmxt_wpackwss */
    case 488:  /* iwmmxt_wpackhss */
    case 487:  /* *uminv8qi3_iwmmxt */
    case 486:  /* *uminv4hi3_iwmmxt */
    case 485:  /* *uminv2si3_iwmmxt */
    case 484:  /* *sminv8qi3_iwmmxt */
    case 483:  /* *sminv4hi3_iwmmxt */
    case 482:  /* *sminv2si3_iwmmxt */
    case 481:  /* *umaxv8qi3_iwmmxt */
    case 480:  /* *umaxv4hi3_iwmmxt */
    case 479:  /* *umaxv2si3_iwmmxt */
    case 478:  /* *smaxv8qi3_iwmmxt */
    case 477:  /* *smaxv4hi3_iwmmxt */
    case 476:  /* *smaxv2si3_iwmmxt */
    case 475:  /* gtv2si3 */
    case 474:  /* gtv4hi3 */
    case 473:  /* gtv8qi3 */
    case 472:  /* gtuv2si3 */
    case 471:  /* gtuv4hi3 */
    case 470:  /* gtuv8qi3 */
    case 469:  /* eqv2si3 */
    case 468:  /* eqv4hi3 */
    case 467:  /* eqv8qi3 */
    case 466:  /* iwmmxt_wshufh */
    case 465:  /* iwmmxt_textrmw */
    case 464:  /* iwmmxt_textrmsh */
    case 463:  /* iwmmxt_textrmuh */
    case 462:  /* iwmmxt_textrmsb */
    case 461:  /* iwmmxt_textrmub */
    case 460:  /* iwmmxt_tinsrw */
    case 459:  /* iwmmxt_tinsrh */
    case 458:  /* iwmmxt_tinsrb */
    case 457:  /* iwmmxt_uavgv4hi3 */
    case 456:  /* iwmmxt_uavgv8qi3 */
    case 455:  /* iwmmxt_uavgrndv4hi3 */
    case 454:  /* iwmmxt_uavgrndv8qi3 */
    case 453:  /* iwmmxt_clrv2si */
    case 452:  /* iwmmxt_clrv4hi */
    case 451:  /* iwmmxt_clrv8qi */
    case 450:  /* iwmmxt_clrdi */
    case 449:  /* iwmmxt_wmacuz */
    case 448:  /* iwmmxt_wmacu */
    case 447:  /* iwmmxt_wmacsz */
    case 446:  /* iwmmxt_wmacs */
    case 445:  /* umulv4hi3_highpart */
    case 444:  /* smulv4hi3_highpart */
    case 443:  /* *mulv4hi3_iwmmxt */
    case 442:  /* ussubv2si3 */
    case 441:  /* ussubv4hi3 */
    case 440:  /* ussubv8qi3 */
    case 439:  /* sssubv2si3 */
    case 438:  /* sssubv4hi3 */
    case 437:  /* sssubv8qi3 */
    case 436:  /* *subv8qi3_iwmmxt */
    case 435:  /* *subv4hi3_iwmmxt */
    case 434:  /* *subv2si3_iwmmxt */
    case 433:  /* usaddv2si3 */
    case 432:  /* usaddv4hi3 */
    case 431:  /* usaddv8qi3 */
    case 430:  /* ssaddv2si3 */
    case 429:  /* ssaddv4hi3 */
    case 428:  /* ssaddv8qi3 */
    case 427:  /* *addv8qi3_iwmmxt */
    case 426:  /* *addv4hi3_iwmmxt */
    case 425:  /* *addv2si3_iwmmxt */
    case 424:  /* *xorv8qi3_iwmmxt */
    case 423:  /* *xorv4hi3_iwmmxt */
    case 422:  /* *xorv2si3_iwmmxt */
    case 421:  /* *iorv8qi3_iwmmxt */
    case 420:  /* *iorv4hi3_iwmmxt */
    case 419:  /* *iorv2si3_iwmmxt */
    case 418:  /* *andv8qi3_iwmmxt */
    case 417:  /* *andv4hi3_iwmmxt */
    case 416:  /* *andv2si3_iwmmxt */
    case 415:  /* movv8qi_internal */
    case 414:  /* movv4hi_internal */
    case 413:  /* movv2si_internal */
    case 412:  /* *cond_iwmmxt_movsi_insn */
    case 410:  /* *iwmmxt_arm_movdi */
    case 409:  /* iwmmxt_nanddi3 */
    case 408:  /* iwmmxt_anddi3 */
    case 407:  /* iwmmxt_xordi3 */
    case 406:  /* iwmmxt_iordi3 */
    case 405:  /* tbcstv2si */
    case 404:  /* tbcstv4hi */
    case 403:  /* tbcstv8qi */
    case 402:  /* *load_multiple */
    case 401:  /* *stm2_db_update */
    case 400:  /* *stm2_db */
    case 399:  /* *ldm2_db_update */
    case 398:  /* *ldm2_db */
    case 397:  /* *stm2_da_update */
    case 396:  /* *stm2_da */
    case 395:  /* *ldm2_da_update */
    case 394:  /* *ldm2_da */
    case 393:  /* *stm2_ib_update */
    case 392:  /* *stm2_ib */
    case 391:  /* *ldm2_ib_update */
    case 390:  /* *ldm2_ib */
    case 389:  /* *thumb_stm2_ia_update */
    case 388:  /* *stm2_ia_update */
    case 387:  /* *stm2_ */
    case 386:  /* *thumb_ldm2_ia_update */
    case 385:  /* *ldm2_ia_update */
    case 384:  /* *thumb_ldm2_ia */
    case 383:  /* *ldm2_ */
    case 382:  /* *stm3_db_update */
    case 381:  /* *stm3_db */
    case 380:  /* *ldm3_db_update */
    case 379:  /* *ldm3_db */
    case 378:  /* *stm3_da_update */
    case 377:  /* *stm3_da */
    case 376:  /* *ldm3_da_update */
    case 375:  /* *ldm3_da */
    case 374:  /* *stm3_ib_update */
    case 373:  /* *stm3_ib */
    case 372:  /* *ldm3_ib_update */
    case 371:  /* *ldm3_ib */
    case 370:  /* *thumb_stm3_ia_update */
    case 369:  /* *stm3_ia_update */
    case 368:  /* *stm3_ */
    case 367:  /* *thumb_ldm3_ia_update */
    case 366:  /* *ldm3_ia_update */
    case 365:  /* *thumb_ldm3_ia */
    case 364:  /* *ldm3_ */
    case 363:  /* *stm4_db_update */
    case 362:  /* *stm4_db */
    case 361:  /* *ldm4_db_update */
    case 360:  /* *ldm4_db */
    case 359:  /* *stm4_da_update */
    case 358:  /* *stm4_da */
    case 357:  /* *ldm4_da_update */
    case 356:  /* *ldm4_da */
    case 355:  /* *stm4_ib_update */
    case 354:  /* *stm4_ib */
    case 353:  /* *ldm4_ib_update */
    case 352:  /* *ldm4_ib */
    case 351:  /* *thumb_stm4_ia_update */
    case 350:  /* *stm4_ia_update */
    case 349:  /* *stm4_ */
    case 348:  /* *thumb_ldm4_ia_update */
    case 347:  /* *ldm4_ia_update */
    case 346:  /* *thumb_ldm4_ia */
    case 345:  /* *ldm4_ */
    case 338:  /* *thumb2_strd_base_neg */
    case 337:  /* *thumb2_strd_base */
    case 336:  /* *thumb2_strd */
    case 335:  /* *thumb2_ldrd_base_neg */
    case 334:  /* *thumb2_ldrd_base */
    case 333:  /* *thumb2_ldrd */
    case 332:  /* arm_rev16si2_alt */
    case 331:  /* arm_rev16si2 */
    case 330:  /* *arm_rev16 */
    case 329:  /* *arm_revsh */
    case 328:  /* *arm_rev */
    case 327:  /* *arm_movtas_ze */
    case 324:  /* load_tp_hard */
    case 323:  /* arm_eh_return */
    case 322:  /* force_register_use */
    case 321:  /* prefetch */
    case 320:  /* ctzsi2 */
    case 319:  /* rbitsi2 */
    case 318:  /* clzsi2 */
    case 317:  /* consttable_16 */
    case 316:  /* consttable_8 */
    case 315:  /* consttable_4 */
    case 314:  /* consttable_2 */
    case 313:  /* consttable_1 */
    case 312:  /* consttable_end */
    case 311:  /* align_8 */
    case 310:  /* align_4 */
    case 308:  /* *ldr_with_return */
    case 307:  /* *pop_multiple_with_return */
    case 306:  /* *pop_multiple_with_writeback_and_return */
    case 305:  /* *load_multiple_with_writeback */
    case 304:  /* stack_tie */
    case 303:  /* *push_multi */
    case 299:  /* *arith_adjacentmem */
    case 255:  /* *compare_scc */
    case 250:  /* *sub_shiftsi */
    case 247:  /* *and_shiftsi */
    case 246:  /* *eor_shiftsi */
    case 245:  /* *orr_shiftsi */
    case 244:  /* *rsb_shiftsi */
    case 243:  /* *add_shiftsi */
    case 242:  /* *and_multsi */
    case 241:  /* *eor_multsi */
    case 240:  /* *orr_multsi */
    case 239:  /* *rsb_multsi */
    case 238:  /* *add_multsi */
    case 236:  /* nop */
    case 235:  /* *load_indirect_jump */
    case 234:  /* *arm_indirect_jump */
    case 231:  /* probe_stack */
    case 230:  /* blockage */
    case 228:  /* *arm_simple_return */
    case 223:  /* *arm_return */
    case 214:  /* *arm_jump */
    case 195:  /* *movdf_soft_insn */
    case 194:  /* *arm_movsf_soft_insn */
    case 192:  /* *arm_movqi_insn */
    case 191:  /* *movhi_bytes */
    case 190:  /* *movhi_insn_arch4 */
    case 188:  /* tls_load_dot_plus_eight */
    case 187:  /* pic_add_dot_plus_eight */
    case 186:  /* pic_add_dot_plus_four */
    case 185:  /* pic_load_addr_thumb1 */
    case 184:  /* pic_load_addr_32bit */
    case 183:  /* pic_load_addr_unified */
    case 182:  /* *arm_movsi_insn */
    case 181:  /* *arm_movt */
    case 180:  /* *arm_movdi */
    case 179:  /* *arm_extendqisi2addsi */
    case 178:  /* *arm_extendqisi_v6 */
    case 177:  /* *arm_extendqisi */
    case 176:  /* *arm_extendqihi_insn */
    case 175:  /* *arm_extendhisi2addsi */
    case 174:  /* *arm_extendhisi2_v6 */
    case 173:  /* *arm_extendhisi2 */
    case 171:  /* *arm_zero_extendqisi2addsi */
    case 170:  /* *arm_zero_extendqisi2_v6 */
    case 169:  /* *arm_zero_extendqisi2 */
    case 168:  /* *arm_zero_extendhisi2addsi */
    case 167:  /* *arm_zero_extendhisi2_v6 */
    case 166:  /* *arm_zero_extendhisi2 */
    case 165:  /* extendsidi2 */
    case 164:  /* extendhidi2 */
    case 163:  /* extendqidi2 */
    case 162:  /* zero_extendsidi2 */
    case 161:  /* zero_extendhidi2 */
    case 160:  /* zero_extendqidi2 */
    case 157:  /* *arm_one_cmplsi2 */
    case 152:  /* *negdi_extendsidi */
    case 151:  /* *zextendsidi_negsi */
    case 150:  /* *arm_negsi2 */
    case 146:  /* udivsi3 */
    case 145:  /* divsi3 */
    case 144:  /* extzv_t2 */
    case 143:  /* *extv_reg */
    case 142:  /* unaligned_storehi */
    case 141:  /* unaligned_storesi */
    case 140:  /* unaligned_loadhiu */
    case 139:  /* unaligned_loadhis */
    case 138:  /* unaligned_loadsi */
    case 135:  /* *not_shiftsi */
    case 132:  /* *arm_shiftsi3 */
    case 128:  /* *satsi_smin_shift */
    case 127:  /* *satsi_smax_shift */
    case 126:  /* *satsi_smin */
    case 125:  /* *satsi_smax */
    case 118:  /* *smin_0 */
    case 116:  /* *smax_m1 */
    case 115:  /* *smax_0 */
    case 114:  /* *andsi_iorsi3_notsi */
    case 111:  /* *arm_xorsi3 */
    case 110:  /* *xordi_sesidi_di */
    case 109:  /* *xordi_zesidi_di */
    case 105:  /* *iorsi3_insn */
    case 104:  /* *iordi_sesidi_di */
    case 103:  /* *iordi_zesidi_di */
    case 97:  /* andsi_not_shiftsi_si */
    case 96:  /* andsi_notsi_si */
    case 95:  /* *anddi_notsesidi_di */
    case 94:  /* *anddi_notdi_zesidi */
    case 93:  /* *anddi_notzesidi_di */
    case 92:  /* *anddi_notdi_di */
    case 91:  /* insv_t2 */
    case 90:  /* insv_zero */
    case 82:  /* *arm_andsi3_insn */
    case 81:  /* *anddi_sesdi_di */
    case 80:  /* *anddi_zesidi_di */
    case 78:  /* *maddhidi4tt */
    case 77:  /* *maddhidi4tb */
    case 76:  /* maddhidi4 */
    case 75:  /* *maddhisi4tt */
    case 74:  /* *maddhisi4tb */
    case 73:  /* maddhisi4 */
    case 72:  /* *mulhisi3tt */
    case 71:  /* *mulhisi3bt */
    case 70:  /* *mulhisi3tb */
    case 69:  /* mulhisi3 */
    case 68:  /* *umulsi3_highpart_v6 */
    case 67:  /* *umulsi3_highpart_nov6 */
    case 66:  /* *smulsi3_highpart_v6 */
    case 65:  /* *smulsi3_highpart_nov6 */
    case 64:  /* *umulsidi3adddi_v6 */
    case 63:  /* *umulsidi3adddi */
    case 62:  /* *umulsidi3_v6 */
    case 61:  /* *umulsidi3_nov6 */
    case 60:  /* *mulsidi3_v6 */
    case 59:  /* *mulsidi3_nov6 */
    case 58:  /* *mulsidi3adddi_v6 */
    case 57:  /* *mulsidi3adddi */
    case 56:  /* *mulsi3subsi */
    case 51:  /* *mulsi3addsi_v6 */
    case 50:  /* *mulsi3addsi */
    case 45:  /* *arm_mulsi3_v6 */
    case 44:  /* *arm_mulsi3 */
    case 41:  /* *arm_subsi3_insn */
    case 4:  /* *arm_addsi3 */
      if ((
#line 81 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB1)))
        {
	  return CONDS_CLOB;
        }
      else
        {
	  return CONDS_NOCOND;
        }

    case 984:  /* adddi3_neon */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if (((
#line 81 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB1))) || (get_attr_type (insn) == TYPE_CALL))
	    {
	      return CONDS_CLOB;
	    }
	  else
	    {
	      return CONDS_UNCONDITIONAL;
	    }
        }
      else if (which_alternative == 1)
        {
	  return CONDS_CLOB;
        }
      else if (which_alternative == 2)
        {
	  return CONDS_CLOB;
        }
      else if (which_alternative == 3)
        {
	  if (((
#line 81 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB1))) || (get_attr_type (insn) == TYPE_CALL))
	    {
	      return CONDS_CLOB;
	    }
	  else
	    {
	      return CONDS_UNCONDITIONAL;
	    }
        }
      else if (which_alternative == 4)
        {
	  return CONDS_CLOB;
        }
      else if (which_alternative == 5)
        {
	  return CONDS_CLOB;
        }
      else
        {
	  return CONDS_CLOB;
        }

    case 998:  /* subdi3_neon */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if (((
#line 81 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB1))) || (get_attr_type (insn) == TYPE_CALL))
	    {
	      return CONDS_CLOB;
	    }
	  else
	    {
	      return CONDS_UNCONDITIONAL;
	    }
        }
      else if (which_alternative == 1)
        {
	  return CONDS_CLOB;
        }
      else if (which_alternative == 2)
        {
	  return CONDS_CLOB;
        }
      else if (which_alternative == 3)
        {
	  return CONDS_CLOB;
        }
      else
        {
	  if (((
#line 81 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB1))) || (get_attr_type (insn) == TYPE_CALL))
	    {
	      return CONDS_CLOB;
	    }
	  else
	    {
	      return CONDS_UNCONDITIONAL;
	    }
        }

    case 747:  /* btruncsf2 */
    case 750:  /* nearbyintsf2 */
    case 751:  /* rintsf2 */
    case 753:  /* btruncdf2 */
    case 756:  /* nearbyintdf2 */
    case 757:  /* rintdf2 */
    case 843:  /* *thumb1_movpc_insn */
    case 4070:  /* *p btruncsf2 */
    case 4071:  /* *p nearbyintsf2 */
    case 4072:  /* *p rintsf2 */
    case 4073:  /* *p btruncdf2 */
    case 4074:  /* *p nearbyintdf2 */
    case 4075:  /* *p rintdf2 */
      return CONDS_NOCOND;

    case 193:  /* *arm32_movhf */
    case 237:  /* trap */
    case 309:  /* *vfp_pop_multiple_with_writeback */
    case 339:  /* crc32b */
    case 340:  /* crc32h */
    case 341:  /* crc32w */
    case 342:  /* crc32cb */
    case 343:  /* crc32ch */
    case 344:  /* crc32cw */
    case 635:  /* *movhf_vfp_neon */
    case 636:  /* *movhf_vfp */
    case 649:  /* abshf2 */
    case 650:  /* neghf2 */
    case 651:  /* neon_vrndhf */
    case 652:  /* neon_vrndahf */
    case 653:  /* neon_vrndmhf */
    case 654:  /* neon_vrndnhf */
    case 655:  /* neon_vrndphf */
    case 656:  /* neon_vrndxhf */
    case 657:  /* neon_vrndihf */
    case 658:  /* addhf3 */
    case 661:  /* subhf3 */
    case 664:  /* divhf3 */
    case 667:  /* mulhf3 */
    case 670:  /* *mulsf3neghf_vfp */
    case 671:  /* *negmulhf3_vfp */
    case 676:  /* *mulsf3addhf_vfp */
    case 679:  /* *mulhf3subhf_vfp */
    case 682:  /* *mulhf3neghfaddhf_vfp */
    case 685:  /* *mulhf3neghfsubhf_vfp */
    case 688:  /* fmahf4 */
    case 691:  /* fmsubhf4_fp16 */
    case 694:  /* *fnmsubhf4 */
    case 697:  /* *fnmaddhf4 */
    case 712:  /* neon_vsqrthf */
    case 713:  /* neon_vrsqrtshf */
    case 730:  /* neon_vcvthshf */
    case 731:  /* neon_vcvthuhf */
    case 732:  /* neon_vcvthssi */
    case 733:  /* neon_vcvthusi */
    case 734:  /* neon_vcvths_nhf_unspec */
    case 735:  /* neon_vcvthu_nhf_unspec */
    case 736:  /* neon_vcvths_nsi_unspec */
    case 737:  /* neon_vcvthu_nsi_unspec */
    case 738:  /* neon_vcvtahssi */
    case 739:  /* neon_vcvtahusi */
    case 740:  /* neon_vcvtmhssi */
    case 741:  /* neon_vcvtmhusi */
    case 742:  /* neon_vcvtnhssi */
    case 743:  /* neon_vcvtnhusi */
    case 744:  /* neon_vcvtphssi */
    case 745:  /* neon_vcvtphusi */
    case 748:  /* ceilsf2 */
    case 749:  /* floorsf2 */
    case 752:  /* roundsf2 */
    case 754:  /* ceildf2 */
    case 755:  /* floordf2 */
    case 758:  /* rounddf2 */
    case 759:  /* lceilsfsi2 */
    case 760:  /* lfloorsfsi2 */
    case 761:  /* lroundsfsi2 */
    case 762:  /* lceilusfsi2 */
    case 763:  /* lfloorusfsi2 */
    case 764:  /* lroundusfsi2 */
    case 765:  /* lceildfsi2 */
    case 766:  /* lfloordfsi2 */
    case 767:  /* lrounddfsi2 */
    case 768:  /* lceiludfsi2 */
    case 769:  /* lfloorudfsi2 */
    case 770:  /* lroundudfsi2 */
    case 771:  /* smaxsf3 */
    case 772:  /* smaxdf3 */
    case 773:  /* sminsf3 */
    case 774:  /* smindf3 */
    case 775:  /* neon_vmaxnmhf */
    case 776:  /* neon_vminnmhf */
    case 777:  /* fmaxsf3 */
    case 778:  /* fminsf3 */
    case 779:  /* fmaxdf3 */
    case 780:  /* fmindf3 */
    case 2562:  /* *memory_barrier */
    case 3698:  /* *p *arm32_movhf */
      return CONDS_UNCONDITIONAL;

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
    case 868:  /* *call_value_reg_thumb2 */
    case 867:  /* *call_reg_thumb2 */
    case 838:  /* *call_value_insn */
    case 837:  /* *call_insn */
    case 836:  /* *call_value_reg_thumb1 */
    case 835:  /* *call_value_reg_thumb1_v5 */
    case 834:  /* *call_reg_thumb1 */
    case 833:  /* *call_reg_thumb1_v5 */
    case 222:  /* *sibcall_value_insn */
    case 221:  /* *sibcall_insn */
    case 220:  /* *call_value_symbol */
    case 219:  /* *call_symbol */
    case 218:  /* *call_value_reg_arm */
    case 217:  /* *call_value_reg_armv5 */
    case 216:  /* *call_reg_arm */
    case 215:  /* *call_reg_armv5 */
    case 1:  /* *arm_adddi3 */
    case 2:  /* *adddi_sesidi_di */
    case 3:  /* *adddi_zesidi_di */
    case 35:  /* *arm_subdi3 */
    case 36:  /* *subdi_di_zesidi */
    case 37:  /* *subdi_di_sesidi */
    case 38:  /* *subdi_zesidi_di */
    case 39:  /* *subdi_sesidi_di */
    case 40:  /* *subdi_zesidi_zesidi */
    case 86:  /* *ne_zeroextractsi */
    case 87:  /* *ne_zeroextractsi_shifted */
    case 88:  /* *ite_ne_zeroextractsi */
    case 89:  /* *ite_ne_zeroextractsi_shifted */
    case 117:  /* *arm_smax_insn */
    case 119:  /* *arm_smin_insn */
    case 120:  /* *arm_umaxsi3 */
    case 121:  /* *arm_uminsi3 */
    case 122:  /* *store_minmaxsi */
    case 123:  /* *minmax_arithsi */
    case 124:  /* *minmax_arithsi_non_canon */
    case 129:  /* arm_ashldi3_1bit */
    case 130:  /* arm_ashrdi3_1bit */
    case 131:  /* arm_lshrdi3_1bit */
    case 148:  /* *arm_negdi2 */
    case 153:  /* *negdi_zero_extendsidi */
    case 232:  /* probe_stack_range */
    case 233:  /* arm_casesi_internal */
    case 257:  /* *cond_arith */
    case 258:  /* *cond_sub */
    case 263:  /* *ior_scc_scc */
    case 265:  /* *and_scc_scc */
    case 267:  /* *and_scc_scc_nodom */
    case 268:  /* *negscc */
    case 269:  /* movcond_addsi */
    case 270:  /* movcond */
    case 271:  /* *ifcompare_plus_move */
    case 273:  /* *ifcompare_move_plus */
    case 275:  /* *ifcompare_arith_arith */
    case 277:  /* *ifcompare_arith_move */
    case 279:  /* *ifcompare_move_arith */
    case 281:  /* *ifcompare_move_not */
    case 283:  /* *ifcompare_not_move */
    case 285:  /* *ifcompare_shift_move */
    case 287:  /* *ifcompare_move_shift */
    case 289:  /* *ifcompare_shift_shift */
    case 291:  /* *ifcompare_not_arith */
    case 293:  /* *ifcompare_arith_not */
    case 295:  /* *ifcompare_neg_move */
    case 297:  /* *ifcompare_move_neg */
    case 301:  /* *sign_extract_onebit */
    case 302:  /* *not_signextract_onebit */
    case 325:  /* load_tp_soft */
    case 326:  /* tlscall */
    case 411:  /* *iwmmxt_movsi_insn */
    case 840:  /* *thumb1_indirect_jump */
    case 842:  /* *epilogue_insns */
    case 847:  /* *thumb2_smaxsi3 */
    case 848:  /* *thumb2_sminsi3 */
    case 849:  /* *thumb32_umaxsi3 */
    case 850:  /* *thumb2_uminsi3 */
    case 851:  /* *thumb2_negdi2 */
    case 869:  /* *thumb2_indirect_jump */
    case 874:  /* *thumb2_cond_arith */
    case 875:  /* *thumb2_cond_arith_strict_it */
    case 876:  /* *thumb2_cond_sub */
    case 877:  /* *thumb2_negscc */
    case 878:  /* *thumb2_movcond */
    case 882:  /* thumb2_casesi_internal */
    case 883:  /* thumb2_casesi_internal_pic */
    case 2720:  /* ssmulsa3 */
    case 2721:  /* usmulusa3 */
      return CONDS_CLOB;

    case 5:  /* adddi3_compareV */
    case 6:  /* addsi3_compareV */
    case 7:  /* *addsi3_compareV_upper */
    case 8:  /* adddi3_compareC */
    case 9:  /* *addsi3_compareC_upper */
    case 10:  /* addsi3_compareC */
    case 11:  /* addsi3_compare0 */
    case 12:  /* *addsi3_compare0_scratch */
    case 13:  /* *compare_negsi_si */
    case 14:  /* cmpsi2_addneg */
    case 15:  /* *addsi3_compare_op1 */
    case 16:  /* *addsi3_compare_op2 */
    case 17:  /* *compare_addsi2_op0 */
    case 18:  /* *compare_addsi2_op1 */
    case 25:  /* *addsi3_carryin_clobercc_ltu */
    case 26:  /* *addsi3_carryin_clobercc_geu */
    case 27:  /* subdi3_compare1 */
    case 28:  /* subsi3_compare1 */
    case 31:  /* *subsi3_carryin_compare */
    case 32:  /* *subsi3_carryin_compare_const */
    case 42:  /* subsi3_compare0 */
    case 43:  /* subsi3_compare */
    case 46:  /* *mulsi3_compare0 */
    case 47:  /* *mulsi3_compare0_v6 */
    case 48:  /* *mulsi_compare0_scratch */
    case 49:  /* *mulsi_compare0_scratch_v6 */
    case 52:  /* *mulsi3addsi_compare0 */
    case 53:  /* *mulsi3addsi_compare0_v6 */
    case 54:  /* *mulsi3addsi_compare0_scratch */
    case 55:  /* *mulsi3addsi_compare0_scratch_v6 */
    case 83:  /* *andsi3_compare0 */
    case 84:  /* *andsi3_compare0_scratch */
    case 85:  /* *zeroextractsi_compare0_scratch */
    case 98:  /* andsi_not_shiftsi_si_scc_no_reuse */
    case 99:  /* andsi_not_shiftsi_si_scc */
    case 100:  /* *andsi_notsi_si_compare0 */
    case 101:  /* *andsi_notsi_si_compare0_scratch */
    case 106:  /* *iorsi3_compare0 */
    case 107:  /* *iorsi3_compare0_scratch */
    case 112:  /* *xorsi3_compare0 */
    case 113:  /* *xorsi3_compare0_scratch */
    case 133:  /* *shiftsi3_compare0 */
    case 134:  /* *shiftsi3_compare0_scratch */
    case 136:  /* *not_shiftsi_compare0 */
    case 137:  /* *not_shiftsi_compare0_scratch */
    case 147:  /* negdi2_compare */
    case 149:  /* *negsi2_carryin_compare */
    case 158:  /* *notsi_compare0 */
    case 159:  /* *notsi_compare0_scratch */
    case 172:  /* *compareqi_eq0 */
    case 189:  /* *movsi_compare0 */
    case 196:  /* *arm_cmpsi_insn */
    case 197:  /* *cmpsi_shiftsi */
    case 198:  /* *cmpsi_shiftsi_swp */
    case 199:  /* *arm_cmpsi_negshiftsi_si */
    case 200:  /* *arm_cmpdi_insn */
    case 201:  /* *arm_cmpdi_unsigned */
    case 202:  /* *arm_cmpdi_zero */
    case 203:  /* *deleted_compare */
    case 229:  /* *check_arch2 */
    case 248:  /* *arith_shiftsi_compare0 */
    case 249:  /* *arith_shiftsi_compare0_scratch */
    case 251:  /* *sub_shiftsi_compare0 */
    case 252:  /* *sub_shiftsi_compare0_scratch */
    case 259:  /* *cmp_ite0 */
    case 260:  /* *cmp_ite1 */
    case 261:  /* *cmp_and */
    case 262:  /* *cmp_ior */
    case 264:  /* *ior_scc_scc_cmp */
    case 266:  /* *and_scc_scc_cmp */
    case 716:  /* *movcc_vfp */
    case 786:  /* thumb1_subsi3_insn */
    case 789:  /* *thumb1_andsi3_insn */
    case 790:  /* thumb1_bicsi3 */
    case 791:  /* *thumb1_iorsi3_insn */
    case 792:  /* *thumb1_xorsi3_insn */
    case 793:  /* *thumb1_ashlsi3 */
    case 794:  /* *thumb1_ashrsi3 */
    case 795:  /* *thumb1_lshrsi3 */
    case 826:  /* *thumb_cmpdi_zero */
    case 859:  /* *thumb2_cmpsi_neg_shiftsi */
    case 893:  /* thumb2_addsi3_compare0 */
    case 894:  /* *thumb2_addsi3_compare0_scratch */
    case 3585:  /* *p *addsi3_compare0_scratch */
    case 3586:  /* *p *compare_negsi_si */
    case 3587:  /* *p *compare_addsi2_op0 */
    case 3588:  /* *p *compare_addsi2_op1 */
    case 3627:  /* *p *zeroextractsi_compare0_scratch */
    case 3636:  /* *p andsi_not_shiftsi_si_scc_no_reuse */
    case 3637:  /* *p andsi_not_shiftsi_si_scc */
    case 3684:  /* *p *compareqi_eq0 */
    case 3700:  /* *p *arm_cmpsi_insn */
    case 3701:  /* *p *arm_cmpsi_negshiftsi_si */
      return CONDS_SET;

    case 19:  /* *addsi3_carryin_ltu */
    case 20:  /* *addsi3_carryin_geu */
    case 21:  /* *addsi3_carryin_alt2_ltu */
    case 22:  /* *addsi3_carryin_alt2_geu */
    case 23:  /* *addsi3_carryin_shift_ltu */
    case 24:  /* *addsi3_carryin_shift_geu */
    case 29:  /* *subsi3_carryin */
    case 30:  /* *subsi3_carryin_const */
    case 33:  /* *subsi3_carryin_shift */
    case 34:  /* *rsbsi3_carryin_shift */
    case 204:  /* arm_cond_branch */
    case 205:  /* *arm_cond_branch_reversed */
    case 206:  /* *mov_scc */
    case 207:  /* *mov_negscc */
    case 208:  /* *mov_notscc */
    case 209:  /* *cmovsf */
    case 210:  /* *cmovdf */
    case 211:  /* *cmovhf */
    case 212:  /* *movsicc_insn */
    case 213:  /* *movsfcc_soft_insn */
    case 224:  /* *cond_return */
    case 225:  /* *cond_simple_return */
    case 226:  /* *cond_return_inverted */
    case 227:  /* *cond_simple_return_inverted */
    case 253:  /* *and_scc */
    case 254:  /* *ior_scc */
    case 256:  /* *cond_move */
    case 272:  /* *if_plus_move */
    case 274:  /* *if_move_plus */
    case 276:  /* *if_arith_arith */
    case 278:  /* *if_arith_move */
    case 280:  /* *if_move_arith */
    case 282:  /* *if_move_not */
    case 284:  /* *if_not_move */
    case 286:  /* *if_shift_move */
    case 288:  /* *if_move_shift */
    case 290:  /* *if_shift_shift */
    case 292:  /* *if_not_arith */
    case 294:  /* *if_arith_not */
    case 296:  /* *if_neg_move */
    case 298:  /* *if_move_neg */
    case 300:  /* *cond_move_not */
    case 641:  /* *movsfcc_vfp */
    case 642:  /* *thumb2_movsfcc_vfp */
    case 643:  /* *movdfcc_vfp */
    case 644:  /* *thumb2_movdfcc_vfp */
    case 860:  /* *thumb2_mov_scc */
    case 861:  /* *thumb2_mov_negscc */
    case 862:  /* *thumb2_mov_negscc_strict_it */
    case 863:  /* *thumb2_mov_notscc */
    case 864:  /* *thumb2_mov_notscc_strict_it */
    case 865:  /* *thumb2_movsicc_insn */
    case 866:  /* *thumb2_movsfcc_soft_insn */
    case 870:  /* *thumb2_and_scc */
    case 871:  /* *thumb2_ior_scc */
    case 872:  /* *thumb2_ior_scc_strict_it */
    case 873:  /* *thumb2_cond_move */
    case 3589:  /* *p *addsi3_carryin_ltu */
    case 3590:  /* *p *addsi3_carryin_geu */
    case 3591:  /* *p *addsi3_carryin_alt2_ltu */
    case 3592:  /* *p *addsi3_carryin_alt2_geu */
    case 3593:  /* *p *addsi3_carryin_shift_ltu */
    case 3594:  /* *p *addsi3_carryin_shift_geu */
    case 3595:  /* *p *subsi3_carryin */
    case 3596:  /* *p *subsi3_carryin_shift */
    case 3597:  /* *p *rsbsi3_carryin_shift */
      return CONDS_USE;

    default:
      if ((
#line 81 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB1)))
        {
	  return CONDS_CLOB;
        }
      else
        {
	  return CONDS_UNCONDITIONAL;
        }

    }
}

enum attr_ce_enabled
get_attr_ce_enabled (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  switch (recog_memoized (insn))
    {
    case 4078:  /* *p *thumb2_neg_abssi2 */
    case 4077:  /* *p *thumb2_abssi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CE_ENABLED_YES;
        }
      else
        {
	  return CE_ENABLED_NO;
        }

    case 4014:  /* *p *movdf_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7))
        {
	  return CE_ENABLED_YES;
        }
      else if (which_alternative == 3)
        {
	  return CE_ENABLED_NO;
        }
      else
        {
	  return CE_ENABLED_YES;
        }

    case 4011:  /* *p *movhf_vfp_fp16 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return CE_ENABLED_YES;
        }
      else if (which_alternative == 2)
        {
	  return CE_ENABLED_NO;
        }
      else if (which_alternative == 3)
        {
	  return CE_ENABLED_YES;
        }
      else
        {
	  return CE_ENABLED_NO;
        }

    case 4007:  /* *p *thumb2_movhi_fp16 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3f))
        {
	  return CE_ENABLED_YES;
        }
      else if (((1 << which_alternative) & 0xc0))
        {
	  return CE_ENABLED_NO;
        }
      else
        {
	  return CE_ENABLED_YES;
        }

    case 4006:  /* *p *arm_movhi_fp16 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x1f))
        {
	  return CE_ENABLED_YES;
        }
      else if (((1 << which_alternative) & 0x60))
        {
	  return CE_ENABLED_NO;
        }
      else
        {
	  return CE_ENABLED_YES;
        }

    case 3670:  /* *p one_cmpldi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CE_ENABLED_NO;
        }
      else if (((1 << which_alternative) & 0x6))
        {
	  return CE_ENABLED_YES;
        }
      else
        {
	  return CE_ENABLED_NO;
        }

    case 3728:  /* *p *arm_rev */
    case 3668:  /* *p *arm_abssi2 */
    case 3669:  /* *p *arm_neg_abssi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return CE_ENABLED_NO;
        }
      else
        {
	  return CE_ENABLED_YES;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
    default:
      return CE_ENABLED_YES;

    }
}

enum attr_exynos_m1_neon_type
get_attr_exynos_m1_neon_type (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  enum attr_type cached_type ATTRIBUTE_UNUSED;

  switch (recog_memoized (insn))
    {
    case 2546:  /* neon_vabdv2di_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_SIMPLE;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_ABD;
        }

    case 2545:  /* neon_vabdv4sf_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_SIMPLE;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_ABD;
        }

    case 2544:  /* neon_vabdv2sf_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_SIMPLE;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_ABD;
        }

    case 2543:  /* neon_vabdv8hf_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_SIMPLE;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_ABD;
        }

    case 2542:  /* neon_vabdv4hf_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_SIMPLE;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_ABD;
        }

    case 2541:  /* neon_vabdv4si_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_SIMPLE;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_ABD;
        }

    case 2540:  /* neon_vabdv2si_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_SIMPLE;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_ABD;
        }

    case 2539:  /* neon_vabdv8hi_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_SIMPLE;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_ABD;
        }

    case 2538:  /* neon_vabdv4hi_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_SIMPLE;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_ABD;
        }

    case 2537:  /* neon_vabdv16qi_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_SIMPLE;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_ABD;
        }

    case 2536:  /* neon_vabdv8qi_3 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_SIMPLE;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_ABD;
        }

    case 2535:  /* neon_vabdv2di_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_SIMPLE;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_ABD;
        }

    case 2534:  /* neon_vabdv4sf_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_SIMPLE;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_ABD;
        }

    case 2533:  /* neon_vabdv2sf_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_SIMPLE;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_ABD;
        }

    case 2532:  /* neon_vabdv8hf_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_SIMPLE;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_ABD;
        }

    case 2531:  /* neon_vabdv4hf_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_SIMPLE;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_ABD;
        }

    case 2530:  /* neon_vabdv4si_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_SIMPLE;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_ABD;
        }

    case 2529:  /* neon_vabdv2si_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_SIMPLE;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_ABD;
        }

    case 2528:  /* neon_vabdv8hi_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_SIMPLE;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_ABD;
        }

    case 2527:  /* neon_vabdv4hi_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_SIMPLE;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_ABD;
        }

    case 2526:  /* neon_vabdv16qi_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_SIMPLE;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_ABD;
        }

    case 2525:  /* neon_vabdv8qi_2 */
      extract_constrain_insn_cached (insn);
      if (! ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_SIMPLE;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_ABD;
        }

    case 2457:  /* neon_vst4di */
      if ((64) == (64))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE1_4;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE4_4;
        }

    case 2456:  /* neon_vst4v2sf */
    case 2455:  /* neon_vst4v2si */
      if ((32) == (64))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE1_4;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE4_4;
        }

    case 2454:  /* neon_vst4v4hf */
    case 2453:  /* neon_vst4v4hi */
      if ((16) == (64))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE1_4;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE4_4;
        }

    case 2452:  /* neon_vst4v8qi */
      if ((8) == (64))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE1_4;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE4_4;
        }

    case 2451:  /* neon_vld4_dupdi */
      if (! ((1) > (1)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_1;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD4_ALL;
        }

    case 2450:  /* neon_vld4_dupv2sf */
    case 2449:  /* neon_vld4_dupv2si */
      if (! ((2) > (1)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_1;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD4_ALL;
        }

    case 2448:  /* neon_vld4_dupv4hf */
    case 2447:  /* neon_vld4_dupv4hi */
      if (! ((4) > (1)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_1;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD4_ALL;
        }

    case 2446:  /* neon_vld4_dupv8qi */
      if (! ((8) > (1)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_1;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD4_ALL;
        }

    case 2426:  /* neon_vld4di */
      if ((64) == (64))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_4;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD4_4;
        }

    case 2425:  /* neon_vld4v2sf */
    case 2424:  /* neon_vld4v2si */
      if ((32) == (64))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_4;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD4_4;
        }

    case 2423:  /* neon_vld4v4hf */
    case 2422:  /* neon_vld4v4hi */
      if ((16) == (64))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_4;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD4_4;
        }

    case 2421:  /* neon_vld4v8qi */
      if ((8) == (64))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_4;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD4_4;
        }

    case 2401:  /* neon_vst3di */
      if ((64) == (64))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE1_3;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE3_ONE;
        }

    case 2400:  /* neon_vst3v2sf */
    case 2399:  /* neon_vst3v2si */
      if ((32) == (64))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE1_3;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE3_ONE;
        }

    case 2398:  /* neon_vst3v4hf */
    case 2397:  /* neon_vst3v4hi */
      if ((16) == (64))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE1_3;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE3_ONE;
        }

    case 2396:  /* neon_vst3v8qi */
      if ((8) == (64))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE1_3;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE3_ONE;
        }

    case 2395:  /* neon_vld3_dupdi */
      if (! ((1) > (1)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_1;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD3_ALL;
        }

    case 2394:  /* neon_vld3_dupv2sf */
    case 2393:  /* neon_vld3_dupv2si */
      if (! ((2) > (1)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_1;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD3_ALL;
        }

    case 2392:  /* neon_vld3_dupv4hf */
    case 2391:  /* neon_vld3_dupv4hi */
      if (! ((4) > (1)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_1;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD3_ALL;
        }

    case 2390:  /* neon_vld3_dupv8qi */
      if (! ((8) > (1)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_1;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD3_ALL;
        }

    case 2370:  /* neon_vld3di */
      if ((64) == (64))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_3;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD3_3;
        }

    case 2369:  /* neon_vld3v2sf */
    case 2368:  /* neon_vld3v2si */
      if ((32) == (64))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_3;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD3_3;
        }

    case 2367:  /* neon_vld3v4hf */
    case 2366:  /* neon_vld3v4hi */
      if ((16) == (64))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_3;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD3_3;
        }

    case 2365:  /* neon_vld3v8qi */
      if ((8) == (64))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_3;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD3_3;
        }

    case 2350:  /* neon_vst2di */
      if ((64) == (64))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE1_2;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE2_ONE;
        }

    case 2349:  /* neon_vst2v2sf */
    case 2348:  /* neon_vst2v2si */
      if ((32) == (64))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE1_2;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE2_ONE;
        }

    case 2347:  /* neon_vst2v4hf */
    case 2346:  /* neon_vst2v4hi */
      if ((16) == (64))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE1_2;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE2_ONE;
        }

    case 2345:  /* neon_vst2v8qi */
      if ((8) == (64))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE1_2;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE2_ONE;
        }

    case 2344:  /* neon_vld2_dupdi */
      if (! ((1) > (1)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_1;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD2_ALL;
        }

    case 2343:  /* neon_vld2_dupv2sf */
    case 2342:  /* neon_vld2_dupv2si */
      if (! ((2) > (1)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_1;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD2_ALL;
        }

    case 2341:  /* neon_vld2_dupv4hf */
    case 2340:  /* neon_vld2_dupv4hi */
      if (! ((4) > (1)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_1;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD2_ALL;
        }

    case 2339:  /* neon_vld2_dupv8qi */
      if (! ((8) > (1)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_1;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD2_ALL;
        }

    case 2324:  /* neon_vld2di */
      if ((64) == (64))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_2;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD2_2;
        }

    case 2323:  /* neon_vld2v2sf */
    case 2322:  /* neon_vld2v2si */
      if ((32) == (64))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_2;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD2_2;
        }

    case 2321:  /* neon_vld2v4hf */
    case 2320:  /* neon_vld2v4hi */
      if ((16) == (64))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_2;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD2_2;
        }

    case 2319:  /* neon_vld2v8qi */
      if ((8) == (64))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_2;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD2_2;
        }

    case 1812:  /* neon_vdup_nv4sf */
    case 1811:  /* neon_vdup_nv4si */
    case 1810:  /* neon_vdup_nv2sf */
    case 1809:  /* neon_vdup_nv2si */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_BITOPS;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FROM_GP;
        }

    case 1556:  /* neon_vcltv8hf_fp16insn */
    case 1555:  /* neon_vclev8hf_fp16insn */
    case 1554:  /* neon_vcgev8hf_fp16insn */
    case 1553:  /* neon_vcgtv8hf_fp16insn */
    case 1552:  /* neon_vceqv8hf_fp16insn */
    case 1541:  /* neon_vcltv4sf_insn */
    case 1540:  /* neon_vclev4sf_insn */
    case 1539:  /* neon_vcgev4sf_insn */
    case 1538:  /* neon_vcgtv4sf_insn */
    case 1537:  /* neon_vceqv4sf_insn */
    case 1531:  /* neon_vcltv4si_insn */
    case 1530:  /* neon_vclev4si_insn */
    case 1529:  /* neon_vcgev4si_insn */
    case 1528:  /* neon_vcgtv4si_insn */
    case 1527:  /* neon_vceqv4si_insn */
    case 1521:  /* neon_vcltv8hi_insn */
    case 1520:  /* neon_vclev8hi_insn */
    case 1519:  /* neon_vcgev8hi_insn */
    case 1518:  /* neon_vcgtv8hi_insn */
    case 1517:  /* neon_vceqv8hi_insn */
    case 1511:  /* neon_vcltv16qi_insn */
    case 1510:  /* neon_vclev16qi_insn */
    case 1509:  /* neon_vcgev16qi_insn */
    case 1508:  /* neon_vcgtv16qi_insn */
    case 1507:  /* neon_vceqv16qi_insn */
      if ((cached_type = get_attr_type (insn)) == TYPE_NEON_COMPARE_ZERO_Q)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else if (cached_type == TYPE_NEON_COMPARE_Q)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_COMPLEX;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_UNKNOWN;
        }

    case 1561:  /* neon_vcltv4hf_fp16insn */
    case 1560:  /* neon_vclev4hf_fp16insn */
    case 1559:  /* neon_vcgev4hf_fp16insn */
    case 1558:  /* neon_vcgtv4hf_fp16insn */
    case 1557:  /* neon_vceqv4hf_fp16insn */
    case 1536:  /* neon_vcltv2sf_insn */
    case 1535:  /* neon_vclev2sf_insn */
    case 1534:  /* neon_vcgev2sf_insn */
    case 1533:  /* neon_vcgtv2sf_insn */
    case 1532:  /* neon_vceqv2sf_insn */
    case 1526:  /* neon_vcltv2si_insn */
    case 1525:  /* neon_vclev2si_insn */
    case 1524:  /* neon_vcgev2si_insn */
    case 1523:  /* neon_vcgtv2si_insn */
    case 1522:  /* neon_vceqv2si_insn */
    case 1516:  /* neon_vcltv4hi_insn */
    case 1515:  /* neon_vclev4hi_insn */
    case 1514:  /* neon_vcgev4hi_insn */
    case 1513:  /* neon_vcgtv4hi_insn */
    case 1512:  /* neon_vceqv4hi_insn */
    case 1506:  /* neon_vcltv8qi_insn */
    case 1505:  /* neon_vclev8qi_insn */
    case 1504:  /* neon_vcgev8qi_insn */
    case 1503:  /* neon_vcgtv8qi_insn */
    case 1502:  /* neon_vceqv8qi_insn */
      if ((cached_type = get_attr_type (insn)) == TYPE_NEON_COMPARE_ZERO)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else if (cached_type == TYPE_NEON_COMPARE)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_COMPLEX;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_UNKNOWN;
        }

    case 1306:  /* neon_vpsmaxv2sf */
    case 1302:  /* neon_vpsminv2sf */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_COMPLEX;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_REDUC_MINMAX;
        }

    case 1305:  /* neon_vpsmaxv2si */
    case 1304:  /* neon_vpsmaxv4hi */
    case 1303:  /* neon_vpsmaxv8qi */
    case 1301:  /* neon_vpsminv2si */
    case 1300:  /* neon_vpsminv4hi */
    case 1299:  /* neon_vpsminv8qi */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_COMPLEX;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_REDUC_MINMAX;
        }

    case 1297:  /* neon_vpadd_internalv2sf */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_COMPLEX;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_REDUC_ADD;
        }

    case 1296:  /* neon_vpadd_internalv2si */
    case 1295:  /* neon_vpadd_internalv4hi */
    case 1294:  /* neon_vpadd_internalv8qi */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_COMPLEX;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_REDUC_ADD;
        }

    case 1225:  /* ashldi3_neon_noclobber */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_SHIFT_IMM_BASIC;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_SHIFT_REG_BASIC;
        }

    case 1224:  /* neon_load_count */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FROM_GP;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_1;
        }

    case 1197:  /* vashlv4si3 */
    case 1196:  /* vashlv2si3 */
    case 1195:  /* vashlv8hi3 */
    case 1194:  /* vashlv4hi3 */
    case 1193:  /* vashlv16qi3 */
    case 1192:  /* vashlv8qi3 */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_SHIFT_IMM_BASIC;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_SHIFT_REG_BASIC;
        }

    case 1191:  /* *smaxv4sf3_neon */
    case 1190:  /* *smaxv2sf3_neon */
    case 1183:  /* *sminv4sf3_neon */
    case 1182:  /* *sminv2sf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_SIMPLE;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_COMPARE;
        }

    case 1189:  /* *smaxv4si3_neon */
    case 1188:  /* *smaxv2si3_neon */
    case 1187:  /* *smaxv8hi3_neon */
    case 1186:  /* *smaxv4hi3_neon */
    case 1185:  /* *smaxv16qi3_neon */
    case 1184:  /* *smaxv8qi3_neon */
    case 1181:  /* *sminv4si3_neon */
    case 1180:  /* *sminv2si3_neon */
    case 1179:  /* *sminv8hi3_neon */
    case 1178:  /* *sminv4hi3_neon */
    case 1177:  /* *sminv16qi3_neon */
    case 1176:  /* *sminv8qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_SIMPLE;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_COMPARE;
        }

    case 1144:  /* negv4sf2 */
    case 1143:  /* negv2sf2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_UNARY;
        }

    case 1142:  /* negv4si2 */
    case 1141:  /* negv2si2 */
    case 1140:  /* negv8hi2 */
    case 1139:  /* negv4hi2 */
    case 1138:  /* negv16qi2 */
    case 1137:  /* negv8qi2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_UNARY;
        }

    case 1136:  /* absv4sf2 */
    case 1135:  /* absv2sf2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_SIMPLE;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_UNARY;
        }

    case 1134:  /* absv4si2 */
    case 1133:  /* absv2si2 */
    case 1132:  /* absv8hi2 */
    case 1131:  /* absv4hi2 */
    case 1130:  /* absv16qi2 */
    case 1129:  /* absv8qi2 */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_SIMPLE;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_UNARY;
        }

    case 1106:  /* bicdi3_neon */
    case 1094:  /* orndi3_neon */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_UNKNOWN;
        }

    case 1965:  /* neon_vmls_lanev4sf */
    case 1962:  /* neon_vmls_lanev2sf */
    case 1953:  /* neon_vmla_lanev4sf */
    case 1950:  /* neon_vmla_lanev2sf */
    case 1416:  /* neon_vmlsv4sf_unspec */
    case 1415:  /* neon_vmlsv2sf_unspec */
    case 1402:  /* neon_vmlav4sf_unspec */
    case 1401:  /* neon_vmlav2sf_unspec */
    case 1024:  /* mulv4sf3negv4sfaddv4sf_neon */
    case 1023:  /* mulv2sf3negv2sfaddv2sf_neon */
    case 1014:  /* mulv4sf3addv4sf_neon */
    case 1013:  /* mulv2sf3addv2sf_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_MLA;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_MLA;
        }

    case 1964:  /* neon_vmls_lanev4si */
    case 1963:  /* neon_vmls_lanev8hi */
    case 1961:  /* neon_vmls_lanev2si */
    case 1960:  /* neon_vmls_lanev4hi */
    case 1952:  /* neon_vmla_lanev4si */
    case 1951:  /* neon_vmla_lanev8hi */
    case 1949:  /* neon_vmla_lanev2si */
    case 1948:  /* neon_vmla_lanev4hi */
    case 1414:  /* neon_vmlsv4si_unspec */
    case 1413:  /* neon_vmlsv2si_unspec */
    case 1412:  /* neon_vmlsv8hi_unspec */
    case 1411:  /* neon_vmlsv4hi_unspec */
    case 1410:  /* neon_vmlsv16qi_unspec */
    case 1409:  /* neon_vmlsv8qi_unspec */
    case 1400:  /* neon_vmlav4si_unspec */
    case 1399:  /* neon_vmlav2si_unspec */
    case 1398:  /* neon_vmlav8hi_unspec */
    case 1397:  /* neon_vmlav4hi_unspec */
    case 1396:  /* neon_vmlav16qi_unspec */
    case 1395:  /* neon_vmlav8qi_unspec */
    case 1022:  /* mulv4si3negv4siaddv4si_neon */
    case 1021:  /* mulv2si3negv2siaddv2si_neon */
    case 1020:  /* mulv8hi3negv8hiaddv8hi_neon */
    case 1019:  /* mulv4hi3negv4hiaddv4hi_neon */
    case 1018:  /* mulv16qi3negv16qiaddv16qi_neon */
    case 1017:  /* mulv8qi3negv8qiaddv8qi_neon */
    case 1012:  /* mulv4si3addv4si_neon */
    case 1011:  /* mulv2si3addv2si_neon */
    case 1010:  /* mulv8hi3addv8hi_neon */
    case 1009:  /* mulv4hi3addv4hi_neon */
    case 1008:  /* mulv16qi3addv16qi_neon */
    case 1007:  /* mulv8qi3addv8qi_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_MLA;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_MLA;
        }

    case 1923:  /* neon_vmul_lanev4sf */
    case 1920:  /* neon_vmul_lanev2sf */
    case 1392:  /* neon_vmulfv4sf */
    case 1391:  /* neon_vmulfv2sf */
    case 1006:  /* *mulv4sf3_neon */
    case 1005:  /* *mulv2sf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_MULTIPLY;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_MUL;
        }

    case 1922:  /* neon_vmul_lanev4si */
    case 1921:  /* neon_vmul_lanev8hi */
    case 1919:  /* neon_vmul_lanev2si */
    case 1918:  /* neon_vmul_lanev4hi */
    case 1390:  /* neon_vmulpv16qi */
    case 1389:  /* neon_vmulpv8qi */
    case 1004:  /* *mulv4si3_neon */
    case 1003:  /* *mulv2si3_neon */
    case 1002:  /* *mulv8hi3_neon */
    case 1001:  /* *mulv4hi3_neon */
    case 1000:  /* *mulv16qi3_neon */
    case 999:  /* *mulv8qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_MULTIPLY;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_MUL;
        }

    case 998:  /* subdi3_neon */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0xe))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_UNKNOWN;
        }

    case 984:  /* adddi3_neon */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x9))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_UNKNOWN;
        }

    case 1455:  /* neon_vsubv4sf_unspec */
    case 1454:  /* neon_vsubv2sf_unspec */
    case 1330:  /* neon_vaddv4sf_unspec */
    case 1329:  /* neon_vaddv2sf_unspec */
    case 994:  /* *subv4sf3_neon */
    case 993:  /* *subv2sf3_neon */
    case 992:  /* *subv8hf3_neon */
    case 991:  /* *subv4hf3_neon */
    case 983:  /* addv4hf3_fp16 */
    case 982:  /* addv8hf3_fp16 */
    case 980:  /* *addv4sf3_neon */
    case 979:  /* *addv2sf3_neon */
    case 978:  /* *addv8hf3_neon */
    case 977:  /* *addv4hf3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_ADD;
        }

    case 995:  /* *subv2di3_neon */
    case 990:  /* *subv4si3_neon */
    case 989:  /* *subv2si3_neon */
    case 988:  /* *subv8hi3_neon */
    case 987:  /* *subv4hi3_neon */
    case 986:  /* *subv16qi3_neon */
    case 985:  /* *subv8qi3_neon */
    case 981:  /* *addv2di3_neon */
    case 976:  /* *addv4si3_neon */
    case 975:  /* *addv2si3_neon */
    case 974:  /* *addv8hi3_neon */
    case 973:  /* *addv4hi3_neon */
    case 972:  /* *addv16qi3_neon */
    case 971:  /* *addv8qi3_neon */
      extract_constrain_insn_cached (insn);
      if (! (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_ADD;
        }

    case 970:  /* vec_extractv2di */
    case 969:  /* vec_extractv4sf */
    case 968:  /* vec_extractv4si */
    case 967:  /* vec_extractv8hf */
    case 966:  /* vec_extractv8hi */
    case 965:  /* vec_extractv16qi */
    case 964:  /* vec_extractv2sf */
    case 963:  /* vec_extractv2si */
    case 962:  /* vec_extractv4hf */
    case 961:  /* vec_extractv4hi */
    case 960:  /* vec_extractv8qi */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_TO_GP;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE1_ONE;
        }

    case 959:  /* vec_setv2di_internal */
    case 958:  /* vec_setv4sf_internal */
    case 957:  /* vec_setv4si_internal */
    case 956:  /* vec_setv8hf_internal */
    case 955:  /* vec_setv8hi_internal */
    case 954:  /* vec_setv16qi_internal */
    case 953:  /* vec_setv2sf_internal */
    case 952:  /* vec_setv2si_internal */
    case 951:  /* vec_setv4hf_internal */
    case 950:  /* vec_setv4hi_internal */
    case 949:  /* vec_setv8qi_internal */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FROM_GP;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_ALL;
        }

    case 924:  /* *neon_movxi */
    case 923:  /* *neon_movci */
    case 922:  /* *neon_movoi */
    case 921:  /* *neon_movei */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_BITOPS;
        }
      else if (!((1 << which_alternative) & 0x3))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD2_2;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE2_2;
        }

    case 920:  /* *neon_movti */
    case 919:  /* *neon_movv2di */
    case 918:  /* *neon_movv4sf */
    case 917:  /* *neon_movv4si */
    case 916:  /* *neon_movv8hf */
    case 915:  /* *neon_movv8hi */
    case 914:  /* *neon_movv16qi */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x5))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_BITOPS;
        }
      else if (which_alternative == 5)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FROM_GP;
        }
      else if (which_alternative == 4)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_TO_GP;
        }
      else if (which_alternative == 7)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_4;
        }
      else if (which_alternative == 3)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD2_2;
        }
      else if (!((1 << which_alternative) & 0xff))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE1_4;
        }
      else if (which_alternative == 1)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE2_2;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_UNKNOWN;
        }

    case 913:  /* *neon_movdi */
    case 912:  /* *neon_movv2sf */
    case 911:  /* *neon_movv2si */
    case 910:  /* *neon_movv4hf */
    case 909:  /* *neon_movv4hi */
    case 908:  /* *neon_movv8qi */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x5))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_BITOPS;
        }
      else if (which_alternative == 5)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FROM_GP;
        }
      else if (which_alternative == 4)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_TO_GP;
        }
      else if (which_alternative == 3)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_1;
        }
      else if (which_alternative == 7)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_2;
        }
      else if (which_alternative == 1)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE1_1;
        }
      else if (!((1 << which_alternative) & 0xff))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE1_2;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_UNKNOWN;
        }

    case 644:  /* *thumb2_movdfcc_vfp */
    case 643:  /* *movdfcc_vfp */
    case 642:  /* *thumb2_movsfcc_vfp */
    case 641:  /* *movsfcc_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x38))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FROM_GP;
        }
      else if (!((1 << which_alternative) & 0x3f))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_TO_GP;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_UNKNOWN;
        }

    case 4014:  /* *p *movdf_vfp */
    case 640:  /* *thumb2_movdf_vfp */
    case 639:  /* *movdf_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 3)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_BITOPS;
        }
      else if (which_alternative == 0)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FROM_GP;
        }
      else if (which_alternative == 1)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_TO_GP;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_UNKNOWN;
        }

    case 4013:  /* *p *thumb2_movsf_vfp */
    case 4012:  /* *p *movsf_vfp */
    case 638:  /* *thumb2_movsf_vfp */
    case 637:  /* *movsf_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FROM_GP;
        }
      else if (which_alternative == 1)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_TO_GP;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_UNKNOWN;
        }

    case 636:  /* *movhf_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 4)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FROM_GP;
        }
      else if (which_alternative == 5)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_TO_GP;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_UNKNOWN;
        }

    case 635:  /* *movhf_vfp_neon */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 6)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FROM_GP;
        }
      else if (which_alternative == 7)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_TO_GP;
        }
      else if (which_alternative == 0)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_1;
        }
      else if (which_alternative == 1)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE1_1;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_UNKNOWN;
        }

    case 4011:  /* *p *movhf_vfp_fp16 */
    case 634:  /* *movhf_vfp_fp16 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 4)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FROM_GP;
        }
      else if (which_alternative == 5)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_TO_GP;
        }
      else if (which_alternative == 7)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_1;
        }
      else if (which_alternative == 8)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE1_1;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_UNKNOWN;
        }

    case 4010:  /* *p *movdi_vfp_cortexa8 */
    case 633:  /* *movdi_vfp_cortexa8 */
    case 632:  /* *movdi_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 7)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FROM_GP;
        }
      else if (which_alternative == 8)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_TO_GP;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_UNKNOWN;
        }

    case 4009:  /* *p *thumb2_movsi_vfp */
    case 631:  /* *thumb2_movsi_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 9)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FROM_GP;
        }
      else if (which_alternative == 10)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_TO_GP;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_UNKNOWN;
        }

    case 4008:  /* *p *arm_movsi_vfp */
    case 4007:  /* *p *thumb2_movhi_fp16 */
    case 4005:  /* *p *thumb2_movhi_vfp */
    case 630:  /* *arm_movsi_vfp */
    case 629:  /* *thumb2_movhi_fp16 */
    case 627:  /* *thumb2_movhi_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 6)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FROM_GP;
        }
      else if (which_alternative == 7)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_TO_GP;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_UNKNOWN;
        }

    case 4006:  /* *p *arm_movhi_fp16 */
    case 4004:  /* *p *arm_movhi_vfp */
    case 628:  /* *arm_movhi_fp16 */
    case 626:  /* *arm_movhi_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 5)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FROM_GP;
        }
      else if (which_alternative == 6)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_TO_GP;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_UNKNOWN;
        }

    case 411:  /* *iwmmxt_movsi_insn */
    case 410:  /* *iwmmxt_arm_movdi */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 10)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FROM_GP;
        }
      else if (which_alternative == 11)
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_TO_GP;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_UNKNOWN;
        }

    case 3670:  /* *p one_cmpldi2 */
    case 156:  /* one_cmpldi2 */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0x6))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_BITOPS;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_UNKNOWN;
        }

    case 108:  /* *xordi3_insn */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0x1e))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_UNKNOWN;
        }

    case 102:  /* *iordi3_insn */
    case 79:  /* *anddi3_insn */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0x3c))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_UNKNOWN;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
      if (((cached_type = get_attr_type (insn)) == TYPE_NEON_ABD) || ((cached_type == TYPE_NEON_ABD_Q) || ((cached_type == TYPE_NEON_ABD_LONG) || ((cached_type == TYPE_NEON_ABS) || ((cached_type == TYPE_NEON_ABS_Q) || ((cached_type == TYPE_NEON_MINMAX) || (cached_type == TYPE_NEON_MINMAX_Q)))))))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_SIMPLE;
        }
      else if ((cached_type == TYPE_NEON_ADD) || ((cached_type == TYPE_NEON_ADD_Q) || ((cached_type == TYPE_NEON_ADD_LONG) || ((cached_type == TYPE_NEON_NEG) || ((cached_type == TYPE_NEON_NEG_Q) || ((cached_type == TYPE_NEON_SUB) || ((cached_type == TYPE_NEON_SUB_Q) || ((cached_type == TYPE_NEON_SUB_LONG) || ((cached_type == TYPE_NEON_SUB_WIDEN) || ((cached_type == TYPE_NEON_LOGIC) || ((cached_type == TYPE_NEON_LOGIC_Q) || ((cached_type == TYPE_NEON_TST) || ((cached_type == TYPE_NEON_TST_Q) || ((cached_type == TYPE_NEON_COMPARE_ZERO) || (cached_type == TYPE_NEON_COMPARE_ZERO_Q)))))))))))))))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_BASIC;
        }
      else if ((cached_type == TYPE_NEON_ADD_WIDEN) || ((cached_type == TYPE_NEON_ARITH_ACC) || ((cached_type == TYPE_NEON_ARITH_ACC_Q) || ((cached_type == TYPE_NEON_REDUC_ADD) || ((cached_type == TYPE_NEON_REDUC_ADD_Q) || ((cached_type == TYPE_NEON_REDUC_ADD_ACC) || ((cached_type == TYPE_NEON_REDUC_ADD_ACC_Q) || ((cached_type == TYPE_NEON_REDUC_ADD_LONG) || ((cached_type == TYPE_NEON_ADD_HALVE_NARROW_Q) || ((cached_type == TYPE_NEON_ADD_HALVE) || ((cached_type == TYPE_NEON_ADD_HALVE_Q) || ((cached_type == TYPE_NEON_SUB_HALVE) || ((cached_type == TYPE_NEON_SUB_HALVE_Q) || ((cached_type == TYPE_NEON_QABS) || ((cached_type == TYPE_NEON_QABS_Q) || ((cached_type == TYPE_NEON_QADD) || ((cached_type == TYPE_NEON_QADD_Q) || ((cached_type == TYPE_NEON_QNEG) || ((cached_type == TYPE_NEON_QNEG_Q) || ((cached_type == TYPE_NEON_QSUB) || ((cached_type == TYPE_NEON_QSUB_Q) || ((cached_type == TYPE_NEON_SUB_HALVE_NARROW_Q) || ((cached_type == TYPE_NEON_COMPARE) || ((cached_type == TYPE_NEON_COMPARE_Q) || ((cached_type == TYPE_NEON_REDUC_MINMAX) || (cached_type == TYPE_NEON_REDUC_MINMAX_Q))))))))))))))))))))))))))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_ARITH_COMPLEX;
        }
      else if ((cached_type == TYPE_NEON_MUL_B) || ((cached_type == TYPE_NEON_MUL_B_Q) || ((cached_type == TYPE_NEON_MUL_H) || ((cached_type == TYPE_NEON_MUL_H_Q) || ((cached_type == TYPE_NEON_MUL_S) || ((cached_type == TYPE_NEON_MUL_S_Q) || ((cached_type == TYPE_NEON_MUL_H_SCALAR) || ((cached_type == TYPE_NEON_MUL_H_SCALAR_Q) || ((cached_type == TYPE_NEON_MUL_S_SCALAR) || ((cached_type == TYPE_NEON_MUL_S_SCALAR_Q) || ((cached_type == TYPE_NEON_MUL_H_SCALAR_LONG) || ((cached_type == TYPE_NEON_MUL_S_SCALAR_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_B) || ((cached_type == TYPE_NEON_SAT_MUL_B_Q) || ((cached_type == TYPE_NEON_SAT_MUL_H) || ((cached_type == TYPE_NEON_SAT_MUL_H_Q) || ((cached_type == TYPE_NEON_SAT_MUL_S) || ((cached_type == TYPE_NEON_SAT_MUL_S_Q) || ((cached_type == TYPE_NEON_SAT_MUL_H_SCALAR) || ((cached_type == TYPE_NEON_SAT_MUL_H_SCALAR_Q) || ((cached_type == TYPE_NEON_SAT_MUL_S_SCALAR) || ((cached_type == TYPE_NEON_SAT_MUL_S_SCALAR_Q) || ((cached_type == TYPE_NEON_SAT_MUL_B_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_H_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_S_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_H_SCALAR_LONG) || (cached_type == TYPE_NEON_SAT_MUL_S_SCALAR_LONG)))))))))))))))))))))))))))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_MULTIPLY;
        }
      else if ((cached_type == TYPE_NEON_MLA_B) || ((cached_type == TYPE_NEON_MLA_H) || ((cached_type == TYPE_NEON_MLA_S) || ((cached_type == TYPE_NEON_MLA_H_SCALAR) || ((cached_type == TYPE_NEON_MLA_S_SCALAR) || ((cached_type == TYPE_NEON_MLA_B_LONG) || ((cached_type == TYPE_NEON_MLA_H_LONG) || ((cached_type == TYPE_NEON_MLA_S_LONG) || ((cached_type == TYPE_NEON_MLA_H_SCALAR_LONG) || ((cached_type == TYPE_NEON_MLA_S_SCALAR_LONG) || ((cached_type == TYPE_NEON_MLA_B_Q) || ((cached_type == TYPE_NEON_MLA_H_Q) || ((cached_type == TYPE_NEON_MLA_S_Q) || ((cached_type == TYPE_NEON_MLA_H_SCALAR_Q) || (cached_type == TYPE_NEON_MLA_S_SCALAR_Q)))))))))))))))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_MLA;
        }
      else if ((cached_type == TYPE_NEON_SAT_MLA_B_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_H_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_S_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_H_SCALAR_LONG) || (cached_type == TYPE_NEON_SAT_MLA_S_SCALAR_LONG)))))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_SAT_MLA_LONG;
        }
      else if ((cached_type == TYPE_NEON_SHIFT_ACC) || (cached_type == TYPE_NEON_SHIFT_ACC_Q))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_SHIFT_ACC;
        }
      else if ((cached_type == TYPE_NEON_SHIFT_IMM) || ((cached_type == TYPE_NEON_SHIFT_IMM_Q) || ((cached_type == TYPE_NEON_SHIFT_IMM_NARROW_Q) || (cached_type == TYPE_NEON_SHIFT_IMM_LONG))))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_SHIFT_IMM_BASIC;
        }
      else if ((cached_type == TYPE_NEON_SAT_SHIFT_IMM) || ((cached_type == TYPE_NEON_SAT_SHIFT_IMM_Q) || (cached_type == TYPE_NEON_SAT_SHIFT_IMM_NARROW_Q)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_SHIFT_IMM_COMPLEX;
        }
      else if ((cached_type == TYPE_NEON_SHIFT_REG) || (cached_type == TYPE_NEON_SHIFT_REG_Q))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_SHIFT_REG_BASIC;
        }
      else if ((cached_type == TYPE_NEON_SAT_SHIFT_REG) || (cached_type == TYPE_NEON_SAT_SHIFT_REG_Q))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_SHIFT_REG_COMPLEX;
        }
      else if ((cached_type == TYPE_NEON_FP_NEG_S) || ((cached_type == TYPE_NEON_FP_NEG_S_Q) || ((cached_type == TYPE_NEON_FP_ABS_S) || ((cached_type == TYPE_NEON_FP_ABS_S_Q) || ((cached_type == TYPE_NEON_FP_NEG_D) || ((cached_type == TYPE_NEON_FP_NEG_D_Q) || ((cached_type == TYPE_NEON_FP_ABS_D) || (cached_type == TYPE_NEON_FP_ABS_D_Q))))))))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_UNARY;
        }
      else if ((cached_type == TYPE_NEON_FP_ADDSUB_S) || ((cached_type == TYPE_NEON_FP_ADDSUB_S_Q) || ((cached_type == TYPE_NEON_FP_ADDSUB_D) || (cached_type == TYPE_NEON_FP_ADDSUB_D_Q))))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_ADD;
        }
      else if ((cached_type == TYPE_NEON_FP_ABD_S) || ((cached_type == TYPE_NEON_FP_ABD_S_Q) || ((cached_type == TYPE_NEON_FP_ABD_D) || (cached_type == TYPE_NEON_FP_ABD_D_Q))))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_ABD;
        }
      else if ((cached_type == TYPE_NEON_FP_COMPARE_S) || ((cached_type == TYPE_NEON_FP_COMPARE_S_Q) || ((cached_type == TYPE_NEON_FP_COMPARE_D) || ((cached_type == TYPE_NEON_FP_COMPARE_D_Q) || ((cached_type == TYPE_NEON_FP_MINMAX_S) || ((cached_type == TYPE_NEON_FP_MINMAX_S_Q) || ((cached_type == TYPE_NEON_FP_MINMAX_D) || (cached_type == TYPE_NEON_FP_MINMAX_D_Q))))))))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_COMPARE;
        }
      else if ((cached_type == TYPE_NEON_FP_REDUC_MINMAX_S) || ((cached_type == TYPE_NEON_FP_REDUC_MINMAX_S_Q) || ((cached_type == TYPE_NEON_FP_REDUC_MINMAX_D) || (cached_type == TYPE_NEON_FP_REDUC_MINMAX_D_Q))))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_REDUC_MINMAX;
        }
      else if ((cached_type == TYPE_NEON_FP_REDUC_ADD_S) || ((cached_type == TYPE_NEON_FP_REDUC_ADD_S_Q) || ((cached_type == TYPE_NEON_FP_REDUC_ADD_D) || (cached_type == TYPE_NEON_FP_REDUC_ADD_D_Q))))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_REDUC_ADD;
        }
      else if ((cached_type == TYPE_NEON_FP_ROUND_S) || ((cached_type == TYPE_NEON_FP_ROUND_S_Q) || ((cached_type == TYPE_NEON_FP_ROUND_D) || (cached_type == TYPE_NEON_FP_ROUND_D_Q))))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_ROUND;
        }
      else if ((cached_type == TYPE_NEON_FP_CVT_NARROW_S_Q) || ((cached_type == TYPE_NEON_FP_CVT_WIDEN_H) || ((cached_type == TYPE_NEON_FP_TO_INT_S) || ((cached_type == TYPE_NEON_FP_TO_INT_S_Q) || ((cached_type == TYPE_NEON_FP_TO_INT_D_Q) || ((cached_type == TYPE_NEON_FP_TO_INT_D) || ((cached_type == TYPE_NEON_INT_TO_FP_S) || ((cached_type == TYPE_NEON_INT_TO_FP_S_Q) || ((cached_type == TYPE_NEON_INT_TO_FP_D) || (cached_type == TYPE_NEON_INT_TO_FP_D_Q))))))))))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_CVT;
        }
      else if ((cached_type == TYPE_NEON_FP_MUL_S) || ((cached_type == TYPE_NEON_FP_MUL_S_Q) || ((cached_type == TYPE_NEON_FP_MUL_S_SCALAR) || ((cached_type == TYPE_NEON_FP_MUL_S_SCALAR_Q) || ((cached_type == TYPE_NEON_FP_MUL_D) || ((cached_type == TYPE_NEON_FP_MUL_D_Q) || (cached_type == TYPE_NEON_FP_MUL_D_SCALAR_Q)))))))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_MUL;
        }
      else if ((cached_type == TYPE_NEON_FP_MLA_S) || ((cached_type == TYPE_NEON_FP_MLA_S_Q) || ((cached_type == TYPE_NEON_FP_MLA_S_SCALAR) || ((cached_type == TYPE_NEON_FP_MLA_S_SCALAR_Q) || ((cached_type == TYPE_NEON_FP_MLA_D) || ((cached_type == TYPE_NEON_FP_MLA_D_Q) || (cached_type == TYPE_NEON_FP_MLA_D_SCALAR_Q)))))))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_MLA;
        }
      else if ((cached_type == TYPE_NEON_FP_RECPE_S) || ((cached_type == TYPE_NEON_FP_RECPE_S_Q) || ((cached_type == TYPE_NEON_FP_RSQRTE_S) || ((cached_type == TYPE_NEON_FP_RSQRTE_S_Q) || ((cached_type == TYPE_NEON_FP_RECPE_D) || ((cached_type == TYPE_NEON_FP_RECPE_D_Q) || ((cached_type == TYPE_NEON_FP_RSQRTE_D) || (cached_type == TYPE_NEON_FP_RSQRTE_D_Q))))))))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_ESTIMATE;
        }
      else if ((cached_type == TYPE_NEON_FP_RECPX_S) || ((cached_type == TYPE_NEON_FP_RECPX_S_Q) || ((cached_type == TYPE_NEON_FP_RECPX_D) || (cached_type == TYPE_NEON_FP_RECPX_D_Q))))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_ESTIMATEX;
        }
      else if ((cached_type == TYPE_NEON_FP_RECPS_S) || ((cached_type == TYPE_NEON_FP_RECPS_S_Q) || ((cached_type == TYPE_NEON_FP_RSQRTS_S) || ((cached_type == TYPE_NEON_FP_RSQRTS_S_Q) || ((cached_type == TYPE_NEON_FP_RECPS_D) || ((cached_type == TYPE_NEON_FP_RECPS_D_Q) || ((cached_type == TYPE_NEON_FP_RSQRTS_D) || (cached_type == TYPE_NEON_FP_RSQRTS_D_Q))))))))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FP_STEP;
        }
      else if ((cached_type == TYPE_NEON_RBIT) || ((cached_type == TYPE_NEON_RBIT_Q) || ((cached_type == TYPE_NEON_CLS) || ((cached_type == TYPE_NEON_CLS_Q) || ((cached_type == TYPE_NEON_CNT) || ((cached_type == TYPE_NEON_CNT_Q) || ((cached_type == TYPE_NEON_DUP) || ((cached_type == TYPE_NEON_DUP_Q) || ((cached_type == TYPE_NEON_REV) || ((cached_type == TYPE_NEON_REV_Q) || ((cached_type == TYPE_NEON_MOVE) || ((cached_type == TYPE_NEON_MOVE_Q) || ((cached_type == TYPE_NEON_EXT) || ((cached_type == TYPE_NEON_PERMUTE) || (cached_type == TYPE_NEON_ZIP)))))))))))))))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_BITOPS;
        }
      else if ((cached_type == TYPE_NEON_EXT_Q) || ((cached_type == TYPE_NEON_PERMUTE_Q) || (cached_type == TYPE_NEON_ZIP_Q)))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_BITOPS_Q;
        }
      else if ((cached_type == TYPE_NEON_BSL) || (cached_type == TYPE_NEON_BSL_Q))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_BITINS;
        }
      else if ((cached_type == TYPE_NEON_TBL1) || ((cached_type == TYPE_NEON_TBL2) || ((cached_type == TYPE_NEON_TBL3) || (cached_type == TYPE_NEON_TBL4))))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_TBL;
        }
      else if ((cached_type == TYPE_NEON_FROM_GP) || ((cached_type == TYPE_NEON_FROM_GP_Q) || ((cached_type == TYPE_F_MCR) || (cached_type == TYPE_F_MCRR))))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_FROM_GP;
        }
      else if ((cached_type == TYPE_NEON_TO_GP) || ((cached_type == TYPE_NEON_TO_GP_Q) || ((cached_type == TYPE_F_MRC) || (cached_type == TYPE_F_MRRC))))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_TO_GP;
        }
      else if ((cached_type == TYPE_NEON_LOAD1_1REG) || (cached_type == TYPE_NEON_LOAD1_1REG_Q))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_1;
        }
      else if ((cached_type == TYPE_NEON_LOAD1_2REG) || (cached_type == TYPE_NEON_LOAD1_2REG_Q))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_2;
        }
      else if ((cached_type == TYPE_NEON_LOAD1_3REG) || (cached_type == TYPE_NEON_LOAD1_3REG_Q))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_3;
        }
      else if ((cached_type == TYPE_NEON_LOAD1_4REG) || (cached_type == TYPE_NEON_LOAD1_4REG_Q))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_4;
        }
      else if ((cached_type == TYPE_NEON_LOAD1_ONE_LANE) || (cached_type == TYPE_NEON_LOAD1_ONE_LANE_Q))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_ONE;
        }
      else if ((cached_type == TYPE_NEON_LOAD1_ALL_LANES) || (cached_type == TYPE_NEON_LOAD1_ALL_LANES_Q))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_ALL;
        }
      else if ((cached_type == TYPE_NEON_LOAD2_2REG) || ((cached_type == TYPE_NEON_LOAD2_2REG_Q) || ((cached_type == TYPE_NEON_LOAD2_4REG) || (cached_type == TYPE_NEON_LOAD2_4REG_Q))))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD2_2;
        }
      else if ((cached_type == TYPE_NEON_LOAD2_ONE_LANE) || (cached_type == TYPE_NEON_LOAD2_ONE_LANE_Q))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD2_ONE;
        }
      else if ((cached_type == TYPE_NEON_LOAD2_ALL_LANES) || (cached_type == TYPE_NEON_LOAD2_ALL_LANES_Q))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD2_ALL;
        }
      else if ((cached_type == TYPE_NEON_LOAD3_3REG) || (cached_type == TYPE_NEON_LOAD3_3REG_Q))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD3_3;
        }
      else if ((cached_type == TYPE_NEON_LOAD3_ONE_LANE) || (cached_type == TYPE_NEON_LOAD3_ONE_LANE_Q))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD3_ONE;
        }
      else if ((cached_type == TYPE_NEON_LOAD3_ALL_LANES) || (cached_type == TYPE_NEON_LOAD3_ALL_LANES_Q))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD3_ALL;
        }
      else if ((cached_type == TYPE_NEON_LOAD4_4REG) || (cached_type == TYPE_NEON_LOAD4_4REG_Q))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD4_4;
        }
      else if ((cached_type == TYPE_NEON_LOAD4_ONE_LANE) || (cached_type == TYPE_NEON_LOAD4_ONE_LANE_Q))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD4_ONE;
        }
      else if ((cached_type == TYPE_NEON_LOAD4_ALL_LANES) || (cached_type == TYPE_NEON_LOAD4_ALL_LANES_Q))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_LOAD4_ALL;
        }
      else if ((cached_type == TYPE_NEON_STORE1_1REG) || (cached_type == TYPE_NEON_STORE1_1REG_Q))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE1_1;
        }
      else if ((cached_type == TYPE_NEON_STORE1_2REG) || (cached_type == TYPE_NEON_STORE1_2REG_Q))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE1_2;
        }
      else if ((cached_type == TYPE_NEON_STORE1_3REG) || (cached_type == TYPE_NEON_STORE1_3REG_Q))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE1_3;
        }
      else if ((cached_type == TYPE_NEON_STORE1_4REG) || (cached_type == TYPE_NEON_STORE1_4REG_Q))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE1_4;
        }
      else if ((cached_type == TYPE_NEON_STORE1_ONE_LANE) || (cached_type == TYPE_NEON_STORE1_ONE_LANE_Q))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE1_ONE;
        }
      else if ((cached_type == TYPE_NEON_STORE2_2REG) || ((cached_type == TYPE_NEON_STORE2_2REG_Q) || ((cached_type == TYPE_NEON_STORE2_4REG) || (cached_type == TYPE_NEON_STORE2_4REG_Q))))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE2_2;
        }
      else if ((cached_type == TYPE_NEON_STORE2_ONE_LANE) || (cached_type == TYPE_NEON_STORE2_ONE_LANE_Q))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE2_ONE;
        }
      else if ((cached_type == TYPE_NEON_STORE3_3REG) || (cached_type == TYPE_NEON_STORE3_3REG_Q))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE3_3;
        }
      else if ((cached_type == TYPE_NEON_STORE3_ONE_LANE) || (cached_type == TYPE_NEON_STORE3_ONE_LANE_Q))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE3_ONE;
        }
      else if ((cached_type == TYPE_NEON_STORE4_4REG) || (cached_type == TYPE_NEON_STORE4_4REG_Q))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE4_4;
        }
      else if ((cached_type == TYPE_NEON_STORE4_ONE_LANE) || (cached_type == TYPE_NEON_STORE4_ONE_LANE_Q))
        {
	  return EXYNOS_M1_NEON_TYPE_NEON_STORE4_ONE;
        }
      else
        {
	  return EXYNOS_M1_NEON_TYPE_UNKNOWN;
        }

    case 2472:  /* neon_vst4_lanev2sf */
    case 2471:  /* neon_vst4_lanev2si */
    case 2470:  /* neon_vst4_lanev4hf */
    case 2469:  /* neon_vst4_lanev4hi */
    case 2468:  /* neon_vst4_lanev8qi */
      return EXYNOS_M1_NEON_TYPE_NEON_STORE4_ONE;

    case 2476:  /* neon_vst4_lanev4sf */
    case 2475:  /* neon_vst4_lanev4si */
    case 2474:  /* neon_vst4_lanev8hf */
    case 2473:  /* neon_vst4_lanev8hi */
    case 2467:  /* neon_vst4qbv4sf */
    case 2466:  /* neon_vst4qbv4si */
    case 2465:  /* neon_vst4qbv8hf */
    case 2464:  /* neon_vst4qbv8hi */
    case 2463:  /* neon_vst4qbv16qi */
    case 2462:  /* neon_vst4qav4sf */
    case 2461:  /* neon_vst4qav4si */
    case 2460:  /* neon_vst4qav8hf */
    case 2459:  /* neon_vst4qav8hi */
    case 2458:  /* neon_vst4qav16qi */
      return EXYNOS_M1_NEON_TYPE_NEON_STORE4_4;

    case 2420:  /* neon_vst3_lanev4sf */
    case 2419:  /* neon_vst3_lanev4si */
    case 2418:  /* neon_vst3_lanev8hf */
    case 2417:  /* neon_vst3_lanev8hi */
    case 2416:  /* neon_vst3_lanev2sf */
    case 2415:  /* neon_vst3_lanev2si */
    case 2414:  /* neon_vst3_lanev4hf */
    case 2413:  /* neon_vst3_lanev4hi */
    case 2412:  /* neon_vst3_lanev8qi */
      return EXYNOS_M1_NEON_TYPE_NEON_STORE3_ONE;

    case 2411:  /* neon_vst3qbv4sf */
    case 2410:  /* neon_vst3qbv4si */
    case 2409:  /* neon_vst3qbv8hf */
    case 2408:  /* neon_vst3qbv8hi */
    case 2407:  /* neon_vst3qbv16qi */
    case 2406:  /* neon_vst3qav4sf */
    case 2405:  /* neon_vst3qav4si */
    case 2404:  /* neon_vst3qav8hf */
    case 2403:  /* neon_vst3qav8hi */
    case 2402:  /* neon_vst3qav16qi */
      return EXYNOS_M1_NEON_TYPE_NEON_STORE3_3;

    case 2364:  /* neon_vst2_lanev4sf */
    case 2363:  /* neon_vst2_lanev4si */
    case 2362:  /* neon_vst2_lanev8hf */
    case 2361:  /* neon_vst2_lanev8hi */
    case 2360:  /* neon_vst2_lanev2sf */
    case 2359:  /* neon_vst2_lanev2si */
    case 2358:  /* neon_vst2_lanev4hf */
    case 2357:  /* neon_vst2_lanev4hi */
    case 2356:  /* neon_vst2_lanev8qi */
      return EXYNOS_M1_NEON_TYPE_NEON_STORE2_ONE;

    case 2355:  /* neon_vst2v4sf */
    case 2354:  /* neon_vst2v4si */
    case 2353:  /* neon_vst2v8hf */
    case 2352:  /* neon_vst2v8hi */
    case 2351:  /* neon_vst2v16qi */
      return EXYNOS_M1_NEON_TYPE_NEON_STORE2_2;

    case 2318:  /* neon_vst1_lanev2di */
    case 2317:  /* neon_vst1_lanev4sf */
    case 2316:  /* neon_vst1_lanev4si */
    case 2315:  /* neon_vst1_lanev8hf */
    case 2314:  /* neon_vst1_lanev8hi */
    case 2313:  /* neon_vst1_lanev16qi */
    case 2312:  /* neon_vst1_lanedi */
    case 2311:  /* neon_vst1_lanev2sf */
    case 2310:  /* neon_vst1_lanev2si */
    case 2309:  /* neon_vst1_lanev4hf */
    case 2308:  /* neon_vst1_lanev4hi */
    case 2307:  /* neon_vst1_lanev8qi */
      return EXYNOS_M1_NEON_TYPE_NEON_STORE1_ONE;

    case 2306:  /* neon_vst1v2di */
    case 2305:  /* neon_vst1di */
    case 2304:  /* neon_vst1v4sf */
    case 2303:  /* neon_vst1v2sf */
    case 2302:  /* neon_vst1v8hf */
    case 2301:  /* neon_vst1v4hf */
    case 2300:  /* neon_vst1v4si */
    case 2299:  /* neon_vst1v2si */
    case 2298:  /* neon_vst1v8hi */
    case 2297:  /* neon_vst1v4hi */
    case 2296:  /* neon_vst1v16qi */
    case 2295:  /* neon_vst1v8qi */
    case 942:  /* *movmisalignv2di_neon_store */
    case 941:  /* *movmisalignv4sf_neon_store */
    case 940:  /* *movmisalignv4si_neon_store */
    case 939:  /* *movmisalignv8hf_neon_store */
    case 938:  /* *movmisalignv8hi_neon_store */
    case 937:  /* *movmisalignv16qi_neon_store */
    case 930:  /* *movmisaligndi_neon_store */
    case 929:  /* *movmisalignv2sf_neon_store */
    case 928:  /* *movmisalignv2si_neon_store */
    case 927:  /* *movmisalignv4hf_neon_store */
    case 926:  /* *movmisalignv4hi_neon_store */
    case 925:  /* *movmisalignv8qi_neon_store */
      return EXYNOS_M1_NEON_TYPE_NEON_STORE1_1;

    case 2445:  /* neon_vld4_lanev4sf */
    case 2444:  /* neon_vld4_lanev4si */
    case 2443:  /* neon_vld4_lanev8hf */
    case 2442:  /* neon_vld4_lanev8hi */
    case 2441:  /* neon_vld4_lanev2sf */
    case 2440:  /* neon_vld4_lanev2si */
    case 2439:  /* neon_vld4_lanev4hf */
    case 2438:  /* neon_vld4_lanev4hi */
    case 2437:  /* neon_vld4_lanev8qi */
      return EXYNOS_M1_NEON_TYPE_NEON_LOAD4_ONE;

    case 2436:  /* neon_vld4qbv4sf */
    case 2435:  /* neon_vld4qbv4si */
    case 2434:  /* neon_vld4qbv8hf */
    case 2433:  /* neon_vld4qbv8hi */
    case 2432:  /* neon_vld4qbv16qi */
    case 2431:  /* neon_vld4qav4sf */
    case 2430:  /* neon_vld4qav4si */
    case 2429:  /* neon_vld4qav8hf */
    case 2428:  /* neon_vld4qav8hi */
    case 2427:  /* neon_vld4qav16qi */
      return EXYNOS_M1_NEON_TYPE_NEON_LOAD4_4;

    case 2389:  /* neon_vld3_lanev4sf */
    case 2388:  /* neon_vld3_lanev4si */
    case 2387:  /* neon_vld3_lanev8hf */
    case 2386:  /* neon_vld3_lanev8hi */
    case 2385:  /* neon_vld3_lanev2sf */
    case 2384:  /* neon_vld3_lanev2si */
    case 2383:  /* neon_vld3_lanev4hf */
    case 2382:  /* neon_vld3_lanev4hi */
    case 2381:  /* neon_vld3_lanev8qi */
      return EXYNOS_M1_NEON_TYPE_NEON_LOAD3_ONE;

    case 2380:  /* neon_vld3qbv4sf */
    case 2379:  /* neon_vld3qbv4si */
    case 2378:  /* neon_vld3qbv8hf */
    case 2377:  /* neon_vld3qbv8hi */
    case 2376:  /* neon_vld3qbv16qi */
    case 2375:  /* neon_vld3qav4sf */
    case 2374:  /* neon_vld3qav4si */
    case 2373:  /* neon_vld3qav8hf */
    case 2372:  /* neon_vld3qav8hi */
    case 2371:  /* neon_vld3qav16qi */
      return EXYNOS_M1_NEON_TYPE_NEON_LOAD3_3;

    case 2338:  /* neon_vld2_lanev4sf */
    case 2337:  /* neon_vld2_lanev4si */
    case 2336:  /* neon_vld2_lanev8hf */
    case 2335:  /* neon_vld2_lanev8hi */
    case 2334:  /* neon_vld2_lanev2sf */
    case 2333:  /* neon_vld2_lanev2si */
    case 2332:  /* neon_vld2_lanev4hf */
    case 2331:  /* neon_vld2_lanev4hi */
    case 2330:  /* neon_vld2_lanev8qi */
      return EXYNOS_M1_NEON_TYPE_NEON_LOAD2_ONE;

    case 2329:  /* neon_vld2v4sf */
    case 2328:  /* neon_vld2v4si */
    case 2327:  /* neon_vld2v8hf */
    case 2326:  /* neon_vld2v8hi */
    case 2325:  /* neon_vld2v16qi */
      return EXYNOS_M1_NEON_TYPE_NEON_LOAD2_2;

    case 2294:  /* neon_vld1_dupv2di */
    case 2293:  /* neon_vld1_dupv4sf */
    case 2292:  /* neon_vld1_dupv4si */
    case 2291:  /* neon_vld1_dupv8hf */
    case 2290:  /* neon_vld1_dupv8hi */
    case 2289:  /* neon_vld1_dupv16qi */
    case 2288:  /* neon_vld1_dupv2sf */
    case 2287:  /* neon_vld1_dupv2si */
    case 2286:  /* neon_vld1_dupv4hf */
    case 2285:  /* neon_vld1_dupv4hi */
    case 2284:  /* neon_vld1_dupv8qi */
      return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_ALL;

    case 2283:  /* neon_vld1_lanev2di */
    case 2282:  /* neon_vld1_lanev4sf */
    case 2281:  /* neon_vld1_lanev4si */
    case 2280:  /* neon_vld1_lanev8hf */
    case 2279:  /* neon_vld1_lanev8hi */
    case 2278:  /* neon_vld1_lanev16qi */
    case 2277:  /* neon_vld1_lanedi */
    case 2276:  /* neon_vld1_lanev2sf */
    case 2275:  /* neon_vld1_lanev2si */
    case 2274:  /* neon_vld1_lanev4hf */
    case 2273:  /* neon_vld1_lanev4hi */
    case 2272:  /* neon_vld1_lanev8qi */
      return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_ONE;

    case 2271:  /* neon_vld1v2di */
    case 2270:  /* neon_vld1di */
    case 2269:  /* neon_vld1v4sf */
    case 2268:  /* neon_vld1v2sf */
    case 2267:  /* neon_vld1v8hf */
    case 2266:  /* neon_vld1v4hf */
    case 2265:  /* neon_vld1v4si */
    case 2264:  /* neon_vld1v2si */
    case 2263:  /* neon_vld1v8hi */
    case 2262:  /* neon_vld1v4hi */
    case 2261:  /* neon_vld1v16qi */
    case 2260:  /* neon_vld1v8qi */
    case 948:  /* *movmisalignv2di_neon_load */
    case 947:  /* *movmisalignv4sf_neon_load */
    case 946:  /* *movmisalignv4si_neon_load */
    case 945:  /* *movmisalignv8hf_neon_load */
    case 944:  /* *movmisalignv8hi_neon_load */
    case 943:  /* *movmisalignv16qi_neon_load */
    case 936:  /* *movmisaligndi_neon_load */
    case 935:  /* *movmisalignv2sf_neon_load */
    case 934:  /* *movmisalignv2si_neon_load */
    case 933:  /* *movmisalignv4hf_neon_load */
    case 932:  /* *movmisalignv4hi_neon_load */
    case 931:  /* *movmisalignv8qi_neon_load */
      return EXYNOS_M1_NEON_TYPE_NEON_LOAD1_1;

    case 2229:  /* neon_vtbx4v8qi */
    case 2228:  /* neon_vtbx3v8qi */
    case 2227:  /* neon_vtbx2v8qi */
    case 2226:  /* neon_vtbx1v8qi */
    case 2222:  /* neon_vtbl4v8qi */
    case 2221:  /* neon_vtbl3v8qi */
    case 2220:  /* neon_vtbl2v8qi */
    case 2219:  /* neon_vtbl1v8qi */
      return EXYNOS_M1_NEON_TYPE_NEON_TBL;

    case 1808:  /* neon_vdup_nv8hf */
    case 1807:  /* neon_vdup_nv4hf */
    case 1806:  /* neon_vdup_nv8hi */
    case 1805:  /* neon_vdup_nv16qi */
    case 1804:  /* neon_vdup_nv4hi */
    case 1803:  /* neon_vdup_nv8qi */
      return EXYNOS_M1_NEON_TYPE_NEON_FROM_GP;

    case 1802:  /* neon_vget_lanev4sf_zext_internal */
    case 1801:  /* neon_vget_lanev4si_zext_internal */
    case 1800:  /* neon_vget_lanev8hf_zext_internal */
    case 1799:  /* neon_vget_lanev8hi_zext_internal */
    case 1798:  /* neon_vget_lanev16qi_zext_internal */
    case 1797:  /* neon_vget_lanev4sf_sext_internal */
    case 1796:  /* neon_vget_lanev4si_sext_internal */
    case 1795:  /* neon_vget_lanev8hf_sext_internal */
    case 1794:  /* neon_vget_lanev8hi_sext_internal */
    case 1793:  /* neon_vget_lanev16qi_sext_internal */
    case 1792:  /* neon_vget_lanev2sf_zext_internal */
    case 1791:  /* neon_vget_lanev2si_zext_internal */
    case 1790:  /* neon_vget_lanev4hi_zext_internal */
    case 1789:  /* neon_vget_lanev8qi_zext_internal */
    case 1788:  /* neon_vget_lanev2sf_sext_internal */
    case 1787:  /* neon_vget_lanev2si_sext_internal */
    case 1786:  /* neon_vget_lanev4hi_sext_internal */
    case 1785:  /* neon_vget_lanev8qi_sext_internal */
      return EXYNOS_M1_NEON_TYPE_NEON_TO_GP;

    case 2012:  /* neon_vbslv2di_internal */
    case 2011:  /* neon_vbsldi_internal */
    case 2010:  /* neon_vbslv4sf_internal */
    case 2009:  /* neon_vbslv2sf_internal */
    case 2008:  /* neon_vbslv8hf_internal */
    case 2007:  /* neon_vbslv4hf_internal */
    case 2006:  /* neon_vbslv4si_internal */
    case 2005:  /* neon_vbslv2si_internal */
    case 2004:  /* neon_vbslv8hi_internal */
    case 2003:  /* neon_vbslv4hi_internal */
    case 2002:  /* neon_vbslv16qi_internal */
    case 2001:  /* neon_vbslv8qi_internal */
      return EXYNOS_M1_NEON_TYPE_NEON_BITINS;

    case 2258:  /* *neon_vuzpv8hf_insn */
    case 2257:  /* *neon_vuzpv4sf_insn */
    case 2255:  /* *neon_vuzpv4si_insn */
    case 2253:  /* *neon_vuzpv8hi_insn */
    case 2251:  /* *neon_vuzpv16qi_insn */
    case 2248:  /* *neon_vzipv8hf_insn */
    case 2247:  /* *neon_vzipv4sf_insn */
    case 2245:  /* *neon_vzipv4si_insn */
    case 2243:  /* *neon_vzipv8hi_insn */
    case 2241:  /* *neon_vzipv16qi_insn */
    case 2238:  /* *neon_vtrnv8hf_insn */
    case 2237:  /* *neon_vtrnv4sf_insn */
    case 2235:  /* *neon_vtrnv4si_insn */
    case 2233:  /* *neon_vtrnv8hi_insn */
    case 2231:  /* *neon_vtrnv16qi_insn */
    case 1983:  /* neon_vextv2di */
    case 1981:  /* neon_vextv4sf */
    case 1979:  /* neon_vextv8hf */
    case 1977:  /* neon_vextv4si */
    case 1975:  /* neon_vextv8hi */
    case 1973:  /* neon_vextv16qi */
    case 1835:  /* *neon_vswpv2di */
    case 1833:  /* *neon_vswpv4sf */
    case 1831:  /* *neon_vswpv8hf */
    case 1829:  /* *neon_vswpv4si */
    case 1827:  /* *neon_vswpv8hi */
    case 1825:  /* *neon_vswpv16qi */
      return EXYNOS_M1_NEON_TYPE_NEON_BITOPS_Q;

    case 2512:  /* neon_unpacku_v2si */
    case 2511:  /* neon_unpacks_v2si */
    case 2510:  /* neon_unpacku_v4hi */
    case 2509:  /* neon_unpacks_v4hi */
    case 2508:  /* neon_unpacku_v8qi */
    case 2507:  /* neon_unpacks_v8qi */
    case 2259:  /* *neon_vuzpv4hf_insn */
    case 2256:  /* *neon_vuzpv2sf_insn */
    case 2254:  /* *neon_vuzpv2si_insn */
    case 2252:  /* *neon_vuzpv4hi_insn */
    case 2250:  /* *neon_vuzpv8qi_insn */
    case 2249:  /* *neon_vzipv4hf_insn */
    case 2246:  /* *neon_vzipv2sf_insn */
    case 2244:  /* *neon_vzipv2si_insn */
    case 2242:  /* *neon_vzipv4hi_insn */
    case 2240:  /* *neon_vzipv8qi_insn */
    case 2239:  /* *neon_vtrnv4hf_insn */
    case 2236:  /* *neon_vtrnv2sf_insn */
    case 2234:  /* *neon_vtrnv2si_insn */
    case 2232:  /* *neon_vtrnv4hi_insn */
    case 2230:  /* *neon_vtrnv8qi_insn */
    case 2000:  /* neon_vrev16v16qi */
    case 1999:  /* neon_vrev16v8qi */
    case 1998:  /* neon_vrev32v8hi */
    case 1997:  /* neon_vrev32v16qi */
    case 1996:  /* neon_vrev32v4hi */
    case 1995:  /* neon_vrev32v8qi */
    case 1994:  /* neon_vrev64v2di */
    case 1993:  /* neon_vrev64v4sf */
    case 1992:  /* neon_vrev64v2sf */
    case 1991:  /* neon_vrev64v8hf */
    case 1990:  /* neon_vrev64v4hf */
    case 1989:  /* neon_vrev64v4si */
    case 1988:  /* neon_vrev64v2si */
    case 1987:  /* neon_vrev64v8hi */
    case 1986:  /* neon_vrev64v4hi */
    case 1985:  /* neon_vrev64v16qi */
    case 1984:  /* neon_vrev64v8qi */
    case 1982:  /* neon_vextdi */
    case 1980:  /* neon_vextv2sf */
    case 1978:  /* neon_vextv4hf */
    case 1976:  /* neon_vextv2si */
    case 1974:  /* neon_vextv4hi */
    case 1972:  /* neon_vextv8qi */
    case 1834:  /* *neon_vswpdi */
    case 1832:  /* *neon_vswpv2sf */
    case 1830:  /* *neon_vswpv4hf */
    case 1828:  /* *neon_vswpv2si */
    case 1826:  /* *neon_vswpv4hi */
    case 1824:  /* *neon_vswpv8qi */
    case 1823:  /* neon_vdup_lanev4hf_internal */
    case 1822:  /* neon_vdup_lanev8hf_internal */
    case 1821:  /* neon_vdup_lanev4sf_internal */
    case 1820:  /* neon_vdup_lanev2sf_internal */
    case 1819:  /* neon_vdup_lanev4si_internal */
    case 1818:  /* neon_vdup_lanev2si_internal */
    case 1817:  /* neon_vdup_lanev8hi_internal */
    case 1816:  /* neon_vdup_lanev4hi_internal */
    case 1815:  /* neon_vdup_lanev16qi_internal */
    case 1814:  /* neon_vdup_lanev8qi_internal */
    case 1774:  /* popcountv16qi2 */
    case 1773:  /* popcountv8qi2 */
    case 1772:  /* clzv4si2 */
    case 1771:  /* clzv2si2 */
    case 1770:  /* clzv8hi2 */
    case 1769:  /* clzv4hi2 */
    case 1768:  /* clzv16qi2 */
    case 1767:  /* clzv8qi2 */
    case 1766:  /* neon_vclsv4si */
    case 1765:  /* neon_vclsv2si */
    case 1764:  /* neon_vclsv8hi */
    case 1763:  /* neon_vclsv4hi */
    case 1762:  /* neon_vclsv16qi */
    case 1761:  /* neon_vclsv8qi */
    case 1754:  /* neon_bswapv2di */
    case 1753:  /* neon_bswapv4si */
    case 1752:  /* neon_bswapv2si */
    case 1751:  /* neon_bswapv8hi */
    case 1750:  /* neon_bswapv4hi */
    case 1128:  /* one_cmplv2di2 */
    case 1127:  /* one_cmplv4sf2 */
    case 1126:  /* one_cmplv2sf2 */
    case 1125:  /* one_cmplv8hf2 */
    case 1124:  /* one_cmplv4hf2 */
    case 1123:  /* one_cmplv4si2 */
    case 1122:  /* one_cmplv2si2 */
    case 1121:  /* one_cmplv8hi2 */
    case 1120:  /* one_cmplv4hi2 */
    case 1119:  /* one_cmplv16qi2 */
    case 1118:  /* one_cmplv8qi2 */
      return EXYNOS_M1_NEON_TYPE_NEON_BITOPS;

    case 1743:  /* neon_vrsqrtsv4hf */
    case 1742:  /* neon_vrsqrtsv8hf */
    case 1741:  /* neon_vrsqrtsv4sf */
    case 1740:  /* neon_vrsqrtsv2sf */
    case 1739:  /* neon_vrecpsv4hf */
    case 1738:  /* neon_vrecpsv8hf */
    case 1737:  /* neon_vrecpsv4sf */
    case 1736:  /* neon_vrecpsv2sf */
      return EXYNOS_M1_NEON_TYPE_NEON_FP_STEP;

    case 1784:  /* neon_vrsqrtev4sf */
    case 1783:  /* neon_vrsqrtev4si */
    case 1782:  /* neon_vrsqrtev2sf */
    case 1781:  /* neon_vrsqrtev2si */
    case 1780:  /* neon_vrecpev4sf */
    case 1779:  /* neon_vrecpev4si */
    case 1778:  /* neon_vrecpev2sf */
    case 1777:  /* neon_vrecpev2si */
    case 1776:  /* neon_vrecpev4hf */
    case 1775:  /* neon_vrecpev8hf */
    case 1163:  /* neon_vrsqrtev4hf */
    case 1162:  /* neon_vrsqrtev8hf */
      return EXYNOS_M1_NEON_TYPE_NEON_FP_ESTIMATE;

    case 1036:  /* fmsubv4hf4_intrinsic */
    case 1035:  /* fmsubv8hf4_intrinsic */
    case 1034:  /* fmsubv4sf4_intrinsic */
    case 1033:  /* fmsubv2sf4_intrinsic */
    case 1032:  /* *fmsubv4sf4 */
    case 1031:  /* *fmsubv2sf4 */
    case 1030:  /* fmav4hf4_intrinsic */
    case 1029:  /* fmav8hf4_intrinsic */
    case 1028:  /* fmav4sf4_intrinsic */
    case 1027:  /* fmav2sf4_intrinsic */
    case 1026:  /* fmav4sf4 */
    case 1025:  /* fmav2sf4 */
    case 1016:  /* mulv4hf3addv4hf_neon */
    case 1015:  /* mulv8hf3addv8hf_neon */
      return EXYNOS_M1_NEON_TYPE_NEON_FP_MLA;

    case 1925:  /* neon_vmul_lanev4hf */
    case 1924:  /* neon_vmul_lanev8hf */
      return EXYNOS_M1_NEON_TYPE_NEON_FP_MUL;

    case 1899:  /* neon_vcvtpuv4hf */
    case 1898:  /* neon_vcvtpsv4hf */
    case 1897:  /* neon_vcvtnuv4hf */
    case 1896:  /* neon_vcvtnsv4hf */
    case 1895:  /* neon_vcvtmuv4hf */
    case 1894:  /* neon_vcvtmsv4hf */
    case 1893:  /* neon_vcvtauv4hf */
    case 1892:  /* neon_vcvtasv4hf */
    case 1891:  /* neon_vcvtpuv8hf */
    case 1890:  /* neon_vcvtpsv8hf */
    case 1889:  /* neon_vcvtnuv8hf */
    case 1888:  /* neon_vcvtnsv8hf */
    case 1887:  /* neon_vcvtmuv8hf */
    case 1886:  /* neon_vcvtmsv8hf */
    case 1885:  /* neon_vcvtauv8hf */
    case 1884:  /* neon_vcvtasv8hf */
    case 1883:  /* neon_vcvtu_nv8hi */
    case 1882:  /* neon_vcvts_nv8hi */
    case 1881:  /* neon_vcvtu_nv4hi */
    case 1880:  /* neon_vcvts_nv4hi */
    case 1879:  /* neon_vcvtu_nv4si */
    case 1878:  /* neon_vcvts_nv4si */
    case 1877:  /* neon_vcvtu_nv2si */
    case 1876:  /* neon_vcvts_nv2si */
    case 1875:  /* neon_vcvtu_nv4hf */
    case 1874:  /* neon_vcvts_nv4hf */
    case 1873:  /* neon_vcvtu_nv8hf */
    case 1872:  /* neon_vcvts_nv8hf */
    case 1871:  /* neon_vcvtu_nv4sf */
    case 1870:  /* neon_vcvts_nv4sf */
    case 1869:  /* neon_vcvtu_nv2sf */
    case 1868:  /* neon_vcvts_nv2sf */
    case 1867:  /* neon_vcvtuv4hf */
    case 1866:  /* neon_vcvtsv4hf */
    case 1865:  /* neon_vcvtuv8hf */
    case 1864:  /* neon_vcvtsv8hf */
    case 1863:  /* neon_vcvtuv8hi */
    case 1862:  /* neon_vcvtsv8hi */
    case 1861:  /* neon_vcvtuv4hi */
    case 1860:  /* neon_vcvtsv4hi */
    case 1859:  /* neon_vcvtv4hfv4sf */
    case 1858:  /* neon_vcvtv4sfv4hf */
    case 1857:  /* neon_vcvtuv4si */
    case 1856:  /* neon_vcvtsv4si */
    case 1855:  /* neon_vcvtuv2si */
    case 1854:  /* neon_vcvtsv2si */
    case 1853:  /* neon_vcvtuv4sf */
    case 1852:  /* neon_vcvtsv4sf */
    case 1851:  /* neon_vcvtuv2sf */
    case 1850:  /* neon_vcvtsv2sf */
    case 1849:  /* fixuns_truncv4sfv4si2 */
    case 1848:  /* fixuns_truncv2sfv2si2 */
    case 1847:  /* fix_truncv4sfv4si2 */
    case 1846:  /* fix_truncv2sfv2si2 */
    case 1845:  /* floatunsv4siv4sf2 */
    case 1844:  /* floatunsv2siv2sf2 */
    case 1843:  /* floatv4siv4sf2 */
    case 1842:  /* floatv2siv2sf2 */
    case 1060:  /* neon_vcvtauv4sfv4si */
    case 1059:  /* neon_vcvtmuv4sfv4si */
    case 1058:  /* neon_vcvtpuv4sfv4si */
    case 1057:  /* neon_vcvtav4sfv4si */
    case 1056:  /* neon_vcvtmv4sfv4si */
    case 1055:  /* neon_vcvtpv4sfv4si */
    case 1054:  /* neon_vcvtauv2sfv2si */
    case 1053:  /* neon_vcvtmuv2sfv2si */
    case 1052:  /* neon_vcvtpuv2sfv2si */
    case 1051:  /* neon_vcvtav2sfv2si */
    case 1050:  /* neon_vcvtmv2sfv2si */
    case 1049:  /* neon_vcvtpv2sfv2si */
      return EXYNOS_M1_NEON_TYPE_NEON_FP_CVT;

    case 1161:  /* neon_vrndxv4hf */
    case 1160:  /* neon_vrndpv4hf */
    case 1159:  /* neon_vrndnv4hf */
    case 1158:  /* neon_vrndmv4hf */
    case 1157:  /* neon_vrndav4hf */
    case 1156:  /* neon_vrndv4hf */
    case 1155:  /* neon_vrndxv8hf */
    case 1154:  /* neon_vrndpv8hf */
    case 1153:  /* neon_vrndnv8hf */
    case 1152:  /* neon_vrndmv8hf */
    case 1151:  /* neon_vrndav8hf */
    case 1150:  /* neon_vrndv8hf */
    case 1048:  /* neon_vrintnv4sf */
    case 1047:  /* neon_vrintav4sf */
    case 1046:  /* neon_vrintxv4sf */
    case 1045:  /* neon_vrintmv4sf */
    case 1044:  /* neon_vrintzv4sf */
    case 1043:  /* neon_vrintpv4sf */
    case 1042:  /* neon_vrintnv2sf */
    case 1041:  /* neon_vrintav2sf */
    case 1040:  /* neon_vrintxv2sf */
    case 1039:  /* neon_vrintmv2sf */
    case 1038:  /* neon_vrintzv2sf */
    case 1037:  /* neon_vrintpv2sf */
    case 657:  /* neon_vrndihf */
    case 656:  /* neon_vrndxhf */
    case 655:  /* neon_vrndphf */
    case 654:  /* neon_vrndnhf */
    case 653:  /* neon_vrndmhf */
    case 652:  /* neon_vrndahf */
    case 651:  /* neon_vrndhf */
      return EXYNOS_M1_NEON_TYPE_NEON_FP_ROUND;

    case 1280:  /* quad_halves_plusv4sf */
      return EXYNOS_M1_NEON_TYPE_NEON_FP_REDUC_ADD;

    case 1735:  /* neon_vpminfv4sf */
    case 1734:  /* neon_vpmaxfv4sf */
    case 1733:  /* neon_vpminfv2sf */
    case 1732:  /* neon_vpmaxfv2sf */
    case 1282:  /* quad_halves_smaxv4sf */
    case 1281:  /* quad_halves_sminv4sf */
      return EXYNOS_M1_NEON_TYPE_NEON_FP_REDUC_MINMAX;

    case 1695:  /* fminv4sf3 */
    case 1694:  /* fmaxv4sf3 */
    case 1693:  /* fminv2sf3 */
    case 1692:  /* fmaxv2sf3 */
    case 1691:  /* neon_vminnmv4hf */
    case 1690:  /* neon_vmaxnmv4hf */
    case 1689:  /* neon_vminnmv8hf */
    case 1688:  /* neon_vmaxnmv8hf */
    case 1685:  /* neon_vminfv4hf */
    case 1684:  /* neon_vmaxfv4hf */
    case 1683:  /* neon_vminfv8hf */
    case 1682:  /* neon_vmaxfv8hf */
    case 1681:  /* neon_vminfv4sf */
    case 1680:  /* neon_vmaxfv4sf */
    case 1679:  /* neon_vminfv2sf */
    case 1678:  /* neon_vmaxfv2sf */
    case 1607:  /* neon_vcaltv4hf_fp16insn_unspec */
    case 1606:  /* neon_vcalev4hf_fp16insn_unspec */
    case 1605:  /* neon_vcagtv4hf_fp16insn_unspec */
    case 1604:  /* neon_vcagev4hf_fp16insn_unspec */
    case 1603:  /* neon_vcaltv8hf_fp16insn_unspec */
    case 1602:  /* neon_vcalev8hf_fp16insn_unspec */
    case 1601:  /* neon_vcagtv8hf_fp16insn_unspec */
    case 1600:  /* neon_vcagev8hf_fp16insn_unspec */
    case 1599:  /* neon_vcalev4hf_fp16insn */
    case 1598:  /* neon_vcaltv4hf_fp16insn */
    case 1597:  /* neon_vcagev4hf_fp16insn */
    case 1596:  /* neon_vcagtv4hf_fp16insn */
    case 1595:  /* neon_vcalev8hf_fp16insn */
    case 1594:  /* neon_vcaltv8hf_fp16insn */
    case 1593:  /* neon_vcagev8hf_fp16insn */
    case 1592:  /* neon_vcagtv8hf_fp16insn */
    case 1591:  /* neon_vcagtv4sf_insn_unspec */
    case 1590:  /* neon_vcagev4sf_insn_unspec */
    case 1589:  /* neon_vcagtv2sf_insn_unspec */
    case 1588:  /* neon_vcagev2sf_insn_unspec */
    case 1587:  /* neon_vcagev4sf_insn */
    case 1586:  /* neon_vcagtv4sf_insn */
    case 1585:  /* neon_vcagev2sf_insn */
    case 1584:  /* neon_vcagtv2sf_insn */
    case 1571:  /* neon_vclev4hf_fp16insn_unspec */
    case 1570:  /* neon_vcltv4hf_fp16insn_unspec */
    case 1569:  /* neon_vcgev4hf_fp16insn_unspec */
    case 1568:  /* neon_vcgtv4hf_fp16insn_unspec */
    case 1567:  /* neon_vceqv4hf_fp16insn_unspec */
    case 1566:  /* neon_vclev8hf_fp16insn_unspec */
    case 1565:  /* neon_vcltv8hf_fp16insn_unspec */
    case 1564:  /* neon_vcgev8hf_fp16insn_unspec */
    case 1563:  /* neon_vcgtv8hf_fp16insn_unspec */
    case 1562:  /* neon_vceqv8hf_fp16insn_unspec */
    case 1551:  /* neon_vclev4sf_insn_unspec */
    case 1550:  /* neon_vcltv4sf_insn_unspec */
    case 1549:  /* neon_vcgev4sf_insn_unspec */
    case 1548:  /* neon_vcgtv4sf_insn_unspec */
    case 1547:  /* neon_vceqv4sf_insn_unspec */
    case 1546:  /* neon_vclev2sf_insn_unspec */
    case 1545:  /* neon_vcltv2sf_insn_unspec */
    case 1544:  /* neon_vcgev2sf_insn_unspec */
    case 1543:  /* neon_vcgtv2sf_insn_unspec */
    case 1542:  /* neon_vceqv2sf_insn_unspec */
      return EXYNOS_M1_NEON_TYPE_NEON_FP_COMPARE;

    case 1629:  /* neon_vabdfv4sf */
    case 1628:  /* neon_vabdfv2sf */
      return EXYNOS_M1_NEON_TYPE_NEON_FP_ABD;

    case 2218:  /* neon_vsli_nv2di */
    case 2217:  /* neon_vsli_ndi */
    case 2216:  /* neon_vsli_nv4si */
    case 2215:  /* neon_vsli_nv2si */
    case 2214:  /* neon_vsli_nv8hi */
    case 2213:  /* neon_vsli_nv4hi */
    case 2212:  /* neon_vsli_nv16qi */
    case 2211:  /* neon_vsli_nv8qi */
    case 2210:  /* neon_vsri_nv2di */
    case 2209:  /* neon_vsri_ndi */
    case 2208:  /* neon_vsri_nv4si */
    case 2207:  /* neon_vsri_nv2si */
    case 2206:  /* neon_vsri_nv8hi */
    case 2205:  /* neon_vsri_nv4hi */
    case 2204:  /* neon_vsri_nv16qi */
    case 2203:  /* neon_vsri_nv8qi */
    case 1228:  /* unsigned_shift_di3_neon */
    case 1227:  /* signed_shift_di3_neon */
    case 1223:  /* ashlv2di3_unsigned */
    case 1222:  /* ashlv4si3_unsigned */
    case 1221:  /* ashlv2si3_unsigned */
    case 1220:  /* ashlv8hi3_unsigned */
    case 1219:  /* ashlv4hi3_unsigned */
    case 1218:  /* ashlv16qi3_unsigned */
    case 1217:  /* ashlv8qi3_unsigned */
    case 1216:  /* ashlv2di3_signed */
    case 1215:  /* ashlv4si3_signed */
    case 1214:  /* ashlv2si3_signed */
    case 1213:  /* ashlv8hi3_signed */
    case 1212:  /* ashlv4hi3_signed */
    case 1211:  /* ashlv16qi3_signed */
    case 1210:  /* ashlv8qi3_signed */
      return EXYNOS_M1_NEON_TYPE_NEON_SHIFT_REG_BASIC;

    case 2164:  /* neon_vqshlu_nv2di */
    case 2163:  /* neon_vqshlu_ndi */
    case 2162:  /* neon_vqshlu_nv4si */
    case 2161:  /* neon_vqshlu_nv2si */
    case 2160:  /* neon_vqshlu_nv8hi */
    case 2159:  /* neon_vqshlu_nv4hi */
    case 2158:  /* neon_vqshlu_nv16qi */
    case 2157:  /* neon_vqshlu_nv8qi */
    case 2156:  /* neon_vqshl_u_nv2di */
    case 2155:  /* neon_vqshl_s_nv2di */
    case 2154:  /* neon_vqshl_u_ndi */
    case 2153:  /* neon_vqshl_s_ndi */
    case 2152:  /* neon_vqshl_u_nv4si */
    case 2151:  /* neon_vqshl_s_nv4si */
    case 2150:  /* neon_vqshl_u_nv2si */
    case 2149:  /* neon_vqshl_s_nv2si */
    case 2148:  /* neon_vqshl_u_nv8hi */
    case 2147:  /* neon_vqshl_s_nv8hi */
    case 2146:  /* neon_vqshl_u_nv4hi */
    case 2145:  /* neon_vqshl_s_nv4hi */
    case 2144:  /* neon_vqshl_u_nv16qi */
    case 2143:  /* neon_vqshl_s_nv16qi */
    case 2142:  /* neon_vqshl_u_nv8qi */
    case 2141:  /* neon_vqshl_s_nv8qi */
    case 2132:  /* neon_vqrshrun_nv2di */
    case 2131:  /* neon_vqshrun_nv2di */
    case 2130:  /* neon_vqrshrun_nv4si */
    case 2129:  /* neon_vqshrun_nv4si */
    case 2128:  /* neon_vqrshrun_nv8hi */
    case 2127:  /* neon_vqshrun_nv8hi */
    case 2126:  /* neon_vqrshrnu_nv2di */
    case 2125:  /* neon_vqrshrns_nv2di */
    case 2124:  /* neon_vqshrnu_nv2di */
    case 2123:  /* neon_vqshrns_nv2di */
    case 2122:  /* neon_vqrshrnu_nv4si */
    case 2121:  /* neon_vqrshrns_nv4si */
    case 2120:  /* neon_vqshrnu_nv4si */
    case 2119:  /* neon_vqshrns_nv4si */
    case 2118:  /* neon_vqrshrnu_nv8hi */
    case 2117:  /* neon_vqrshrns_nv8hi */
    case 2116:  /* neon_vqshrnu_nv8hi */
    case 2115:  /* neon_vqshrns_nv8hi */
    case 2076:  /* neon_vqrshluv2di */
    case 2075:  /* neon_vqrshlsv2di */
    case 2074:  /* neon_vqshluv2di */
    case 2073:  /* neon_vqshlsv2di */
    case 2072:  /* neon_vqrshludi */
    case 2071:  /* neon_vqrshlsdi */
    case 2070:  /* neon_vqshludi */
    case 2069:  /* neon_vqshlsdi */
    case 2068:  /* neon_vqrshluv4si */
    case 2067:  /* neon_vqrshlsv4si */
    case 2066:  /* neon_vqshluv4si */
    case 2065:  /* neon_vqshlsv4si */
    case 2064:  /* neon_vqrshluv2si */
    case 2063:  /* neon_vqrshlsv2si */
    case 2062:  /* neon_vqshluv2si */
    case 2061:  /* neon_vqshlsv2si */
    case 2060:  /* neon_vqrshluv8hi */
    case 2059:  /* neon_vqrshlsv8hi */
    case 2058:  /* neon_vqshluv8hi */
    case 2057:  /* neon_vqshlsv8hi */
    case 2056:  /* neon_vqrshluv4hi */
    case 2055:  /* neon_vqrshlsv4hi */
    case 2054:  /* neon_vqshluv4hi */
    case 2053:  /* neon_vqshlsv4hi */
    case 2052:  /* neon_vqrshluv16qi */
    case 2051:  /* neon_vqrshlsv16qi */
    case 2050:  /* neon_vqshluv16qi */
    case 2049:  /* neon_vqshlsv16qi */
    case 2048:  /* neon_vqrshluv8qi */
    case 2047:  /* neon_vqrshlsv8qi */
    case 2046:  /* neon_vqshluv8qi */
    case 2045:  /* neon_vqshlsv8qi */
    case 1911:  /* neon_vqmovunv2di */
    case 1910:  /* neon_vqmovunv4si */
    case 1909:  /* neon_vqmovunv8hi */
    case 1908:  /* neon_vqmovnuv2di */
    case 1907:  /* neon_vqmovnsv2di */
    case 1906:  /* neon_vqmovnuv4si */
    case 1905:  /* neon_vqmovnsv4si */
    case 1904:  /* neon_vqmovnuv8hi */
    case 1903:  /* neon_vqmovnsv8hi */
      return EXYNOS_M1_NEON_TYPE_NEON_SHIFT_IMM_COMPLEX;

    case 2506:  /* neon_vec_ushiftl_v2si */
    case 2505:  /* neon_vec_sshiftl_v2si */
    case 2504:  /* neon_vec_ushiftl_v4hi */
    case 2503:  /* neon_vec_sshiftl_v4hi */
    case 2502:  /* neon_vec_ushiftl_v8qi */
    case 2501:  /* neon_vec_sshiftl_v8qi */
    case 2488:  /* neon_vec_unpacku_hi_v4si */
    case 2487:  /* neon_vec_unpacks_hi_v4si */
    case 2486:  /* neon_vec_unpacku_hi_v8hi */
    case 2485:  /* neon_vec_unpacks_hi_v8hi */
    case 2484:  /* neon_vec_unpacku_hi_v16qi */
    case 2483:  /* neon_vec_unpacks_hi_v16qi */
    case 2482:  /* neon_vec_unpacku_lo_v4si */
    case 2481:  /* neon_vec_unpacks_lo_v4si */
    case 2480:  /* neon_vec_unpacku_lo_v8hi */
    case 2479:  /* neon_vec_unpacks_lo_v8hi */
    case 2478:  /* neon_vec_unpacku_lo_v16qi */
    case 2477:  /* neon_vec_unpacks_lo_v16qi */
    case 2170:  /* neon_vshllu_nv2si */
    case 2169:  /* neon_vshlls_nv2si */
    case 2168:  /* neon_vshllu_nv4hi */
    case 2167:  /* neon_vshlls_nv4hi */
    case 2166:  /* neon_vshllu_nv8qi */
    case 2165:  /* neon_vshlls_nv8qi */
    case 2140:  /* neon_vshl_nv2di */
    case 2139:  /* neon_vshl_ndi */
    case 2138:  /* neon_vshl_nv4si */
    case 2137:  /* neon_vshl_nv2si */
    case 2136:  /* neon_vshl_nv8hi */
    case 2135:  /* neon_vshl_nv4hi */
    case 2134:  /* neon_vshl_nv16qi */
    case 2133:  /* neon_vshl_nv8qi */
    case 2114:  /* neon_vrshrn_nv2di */
    case 2113:  /* neon_vshrn_nv2di */
    case 2112:  /* neon_vrshrn_nv4si */
    case 2111:  /* neon_vshrn_nv4si */
    case 2110:  /* neon_vrshrn_nv8hi */
    case 2109:  /* neon_vshrn_nv8hi */
    case 2108:  /* neon_vrshru_nv2di */
    case 2107:  /* neon_vrshrs_nv2di */
    case 2106:  /* neon_vshru_nv2di */
    case 2105:  /* neon_vshrs_nv2di */
    case 2104:  /* neon_vrshru_ndi */
    case 2103:  /* neon_vrshrs_ndi */
    case 2102:  /* neon_vshru_ndi */
    case 2101:  /* neon_vshrs_ndi */
    case 2100:  /* neon_vrshru_nv4si */
    case 2099:  /* neon_vrshrs_nv4si */
    case 2098:  /* neon_vshru_nv4si */
    case 2097:  /* neon_vshrs_nv4si */
    case 2096:  /* neon_vrshru_nv2si */
    case 2095:  /* neon_vrshrs_nv2si */
    case 2094:  /* neon_vshru_nv2si */
    case 2093:  /* neon_vshrs_nv2si */
    case 2092:  /* neon_vrshru_nv8hi */
    case 2091:  /* neon_vrshrs_nv8hi */
    case 2090:  /* neon_vshru_nv8hi */
    case 2089:  /* neon_vshrs_nv8hi */
    case 2088:  /* neon_vrshru_nv4hi */
    case 2087:  /* neon_vrshrs_nv4hi */
    case 2086:  /* neon_vshru_nv4hi */
    case 2085:  /* neon_vshrs_nv4hi */
    case 2084:  /* neon_vrshru_nv16qi */
    case 2083:  /* neon_vrshrs_nv16qi */
    case 2082:  /* neon_vshru_nv16qi */
    case 2081:  /* neon_vshrs_nv16qi */
    case 2080:  /* neon_vrshru_nv8qi */
    case 2079:  /* neon_vrshrs_nv8qi */
    case 2078:  /* neon_vshru_nv8qi */
    case 2077:  /* neon_vshrs_nv8qi */
    case 2044:  /* neon_vrshluv2di */
    case 2043:  /* neon_vrshlsv2di */
    case 2042:  /* neon_vshluv2di */
    case 2041:  /* neon_vshlsv2di */
    case 2040:  /* neon_vrshludi */
    case 2039:  /* neon_vrshlsdi */
    case 2038:  /* neon_vshludi */
    case 2037:  /* neon_vshlsdi */
    case 2036:  /* neon_vrshluv4si */
    case 2035:  /* neon_vrshlsv4si */
    case 2034:  /* neon_vshluv4si */
    case 2033:  /* neon_vshlsv4si */
    case 2032:  /* neon_vrshluv2si */
    case 2031:  /* neon_vrshlsv2si */
    case 2030:  /* neon_vshluv2si */
    case 2029:  /* neon_vshlsv2si */
    case 2028:  /* neon_vrshluv8hi */
    case 2027:  /* neon_vrshlsv8hi */
    case 2026:  /* neon_vshluv8hi */
    case 2025:  /* neon_vshlsv8hi */
    case 2024:  /* neon_vrshluv4hi */
    case 2023:  /* neon_vrshlsv4hi */
    case 2022:  /* neon_vshluv4hi */
    case 2021:  /* neon_vshlsv4hi */
    case 2020:  /* neon_vrshluv16qi */
    case 2019:  /* neon_vrshlsv16qi */
    case 2018:  /* neon_vshluv16qi */
    case 2017:  /* neon_vshlsv16qi */
    case 2016:  /* neon_vrshluv8qi */
    case 2015:  /* neon_vrshlsv8qi */
    case 2014:  /* neon_vshluv8qi */
    case 2013:  /* neon_vshlsv8qi */
    case 1917:  /* neon_vmovluv2si */
    case 1916:  /* neon_vmovlsv2si */
    case 1915:  /* neon_vmovluv4hi */
    case 1914:  /* neon_vmovlsv4hi */
    case 1913:  /* neon_vmovluv8qi */
    case 1912:  /* neon_vmovlsv8qi */
    case 1902:  /* neon_vmovnv2di */
    case 1901:  /* neon_vmovnv4si */
    case 1900:  /* neon_vmovnv8hi */
    case 1230:  /* lshrdi3_neon_imm_noclobber */
    case 1229:  /* ashrdi3_neon_imm_noclobber */
    case 1209:  /* vlshrv4si3_imm */
    case 1208:  /* vlshrv2si3_imm */
    case 1207:  /* vlshrv8hi3_imm */
    case 1206:  /* vlshrv4hi3_imm */
    case 1205:  /* vlshrv16qi3_imm */
    case 1204:  /* vlshrv8qi3_imm */
    case 1203:  /* vashrv4si3_imm */
    case 1202:  /* vashrv2si3_imm */
    case 1201:  /* vashrv8hi3_imm */
    case 1200:  /* vashrv4hi3_imm */
    case 1199:  /* vashrv16qi3_imm */
    case 1198:  /* vashrv8qi3_imm */
      return EXYNOS_M1_NEON_TYPE_NEON_SHIFT_IMM_BASIC;

    case 2202:  /* neon_vrsrau_nv2di */
    case 2201:  /* neon_vrsras_nv2di */
    case 2200:  /* neon_vsrau_nv2di */
    case 2199:  /* neon_vsras_nv2di */
    case 2198:  /* neon_vrsrau_ndi */
    case 2197:  /* neon_vrsras_ndi */
    case 2196:  /* neon_vsrau_ndi */
    case 2195:  /* neon_vsras_ndi */
    case 2194:  /* neon_vrsrau_nv4si */
    case 2193:  /* neon_vrsras_nv4si */
    case 2192:  /* neon_vsrau_nv4si */
    case 2191:  /* neon_vsras_nv4si */
    case 2190:  /* neon_vrsrau_nv2si */
    case 2189:  /* neon_vrsras_nv2si */
    case 2188:  /* neon_vsrau_nv2si */
    case 2187:  /* neon_vsras_nv2si */
    case 2186:  /* neon_vrsrau_nv8hi */
    case 2185:  /* neon_vrsras_nv8hi */
    case 2184:  /* neon_vsrau_nv8hi */
    case 2183:  /* neon_vsras_nv8hi */
    case 2182:  /* neon_vrsrau_nv4hi */
    case 2181:  /* neon_vrsras_nv4hi */
    case 2180:  /* neon_vsrau_nv4hi */
    case 2179:  /* neon_vsras_nv4hi */
    case 2178:  /* neon_vrsrau_nv16qi */
    case 2177:  /* neon_vrsras_nv16qi */
    case 2176:  /* neon_vsrau_nv16qi */
    case 2175:  /* neon_vsras_nv16qi */
    case 2174:  /* neon_vrsrau_nv8qi */
    case 2173:  /* neon_vrsras_nv8qi */
    case 2172:  /* neon_vsrau_nv8qi */
    case 2171:  /* neon_vsras_nv8qi */
      return EXYNOS_M1_NEON_TYPE_NEON_SHIFT_ACC;

    case 1971:  /* neon_vqdmlsl_lanev2si */
    case 1970:  /* neon_vqdmlsl_lanev4hi */
    case 1959:  /* neon_vqdmlal_lanev2si */
    case 1958:  /* neon_vqdmlal_lanev4hi */
    case 1442:  /* neon_vqdmlslv2si */
    case 1441:  /* neon_vqdmlslv4hi */
    case 1440:  /* neon_vqdmlalv2si */
    case 1439:  /* neon_vqdmlalv4hi */
    case 1438:  /* neon_vqrdmlshv4si */
    case 1437:  /* neon_vqrdmlahv4si */
    case 1436:  /* neon_vqrdmlshv8hi */
    case 1435:  /* neon_vqrdmlahv8hi */
    case 1434:  /* neon_vqrdmlshv2si */
    case 1433:  /* neon_vqrdmlahv2si */
    case 1432:  /* neon_vqrdmlshv4hi */
    case 1431:  /* neon_vqrdmlahv4hi */
      return EXYNOS_M1_NEON_TYPE_NEON_SAT_MLA_LONG;

    case 1969:  /* neon_vmlslu_lanev2si */
    case 1968:  /* neon_vmlsls_lanev2si */
    case 1967:  /* neon_vmlslu_lanev4hi */
    case 1966:  /* neon_vmlsls_lanev4hi */
    case 1957:  /* neon_vmlalu_lanev2si */
    case 1956:  /* neon_vmlals_lanev2si */
    case 1955:  /* neon_vmlalu_lanev4hi */
    case 1954:  /* neon_vmlals_lanev4hi */
    case 1947:  /* neon_vqrdmlsh_lanev2si */
    case 1946:  /* neon_vqrdmlah_lanev2si */
    case 1945:  /* neon_vqrdmlsh_lanev4hi */
    case 1944:  /* neon_vqrdmlah_lanev4hi */
    case 1943:  /* neon_vqrdmlsh_lanev4si */
    case 1942:  /* neon_vqrdmlah_lanev4si */
    case 1941:  /* neon_vqrdmlsh_lanev8hi */
    case 1940:  /* neon_vqrdmlah_lanev8hi */
    case 1422:  /* neon_vmlsluv2si */
    case 1421:  /* neon_vmlslsv2si */
    case 1420:  /* neon_vmlsluv4hi */
    case 1419:  /* neon_vmlslsv4hi */
    case 1418:  /* neon_vmlsluv8qi */
    case 1417:  /* neon_vmlslsv8qi */
    case 1408:  /* neon_vmlaluv2si */
    case 1407:  /* neon_vmlalsv2si */
    case 1406:  /* neon_vmlaluv4hi */
    case 1405:  /* neon_vmlalsv4hi */
    case 1404:  /* neon_vmlaluv8qi */
    case 1403:  /* neon_vmlalsv8qi */
      return EXYNOS_M1_NEON_TYPE_NEON_MLA;

    case 1939:  /* neon_vqrdmulh_lanev2si */
    case 1938:  /* neon_vqdmulh_lanev2si */
    case 1937:  /* neon_vqrdmulh_lanev4hi */
    case 1936:  /* neon_vqdmulh_lanev4hi */
    case 1935:  /* neon_vqrdmulh_lanev4si */
    case 1934:  /* neon_vqdmulh_lanev4si */
    case 1933:  /* neon_vqrdmulh_lanev8hi */
    case 1932:  /* neon_vqdmulh_lanev8hi */
    case 1931:  /* neon_vqdmull_lanev2si */
    case 1930:  /* neon_vqdmull_lanev4hi */
    case 1929:  /* neon_vmullu_lanev2si */
    case 1928:  /* neon_vmulls_lanev2si */
    case 1927:  /* neon_vmullu_lanev4hi */
    case 1926:  /* neon_vmulls_lanev4hi */
    case 1453:  /* neon_vqdmullv2si */
    case 1452:  /* neon_vqdmullv4hi */
    case 1430:  /* neon_vqrdmulhv4si */
    case 1429:  /* neon_vqdmulhv4si */
    case 1428:  /* neon_vqrdmulhv8hi */
    case 1427:  /* neon_vqdmulhv8hi */
    case 1426:  /* neon_vqrdmulhv2si */
    case 1425:  /* neon_vqdmulhv2si */
    case 1424:  /* neon_vqrdmulhv4hi */
    case 1423:  /* neon_vqdmulhv4hi */
    case 1394:  /* neon_vmulfv4hf */
    case 1393:  /* neon_vmulfv8hf */
      return EXYNOS_M1_NEON_TYPE_NEON_MULTIPLY;

    case 1760:  /* neon_vqnegv4si */
    case 1759:  /* neon_vqnegv2si */
    case 1758:  /* neon_vqnegv8hi */
    case 1757:  /* neon_vqnegv4hi */
    case 1756:  /* neon_vqnegv16qi */
    case 1755:  /* neon_vqnegv8qi */
    case 1749:  /* neon_vqabsv4si */
    case 1748:  /* neon_vqabsv2si */
    case 1747:  /* neon_vqabsv8hi */
    case 1746:  /* neon_vqabsv4hi */
    case 1745:  /* neon_vqabsv16qi */
    case 1744:  /* neon_vqabsv8qi */
    case 1731:  /* neon_vpminuv2si */
    case 1730:  /* neon_vpminsv2si */
    case 1729:  /* neon_vpmaxuv2si */
    case 1728:  /* neon_vpmaxsv2si */
    case 1727:  /* neon_vpminuv4hi */
    case 1726:  /* neon_vpminsv4hi */
    case 1725:  /* neon_vpmaxuv4hi */
    case 1724:  /* neon_vpmaxsv4hi */
    case 1723:  /* neon_vpminuv8qi */
    case 1722:  /* neon_vpminsv8qi */
    case 1721:  /* neon_vpmaxuv8qi */
    case 1720:  /* neon_vpmaxsv8qi */
    case 1719:  /* neon_vpadaluv4si */
    case 1718:  /* neon_vpadalsv4si */
    case 1717:  /* neon_vpadaluv2si */
    case 1716:  /* neon_vpadalsv2si */
    case 1715:  /* neon_vpadaluv8hi */
    case 1714:  /* neon_vpadalsv8hi */
    case 1713:  /* neon_vpadaluv4hi */
    case 1712:  /* neon_vpadalsv4hi */
    case 1711:  /* neon_vpadaluv16qi */
    case 1710:  /* neon_vpadalsv16qi */
    case 1709:  /* neon_vpadaluv8qi */
    case 1708:  /* neon_vpadalsv8qi */
    case 1707:  /* neon_vpaddluv4si */
    case 1706:  /* neon_vpaddlsv4si */
    case 1705:  /* neon_vpaddluv2si */
    case 1704:  /* neon_vpaddlsv2si */
    case 1703:  /* neon_vpaddluv8hi */
    case 1702:  /* neon_vpaddlsv8hi */
    case 1701:  /* neon_vpaddluv4hi */
    case 1700:  /* neon_vpaddlsv4hi */
    case 1699:  /* neon_vpaddluv16qi */
    case 1698:  /* neon_vpaddlsv16qi */
    case 1697:  /* neon_vpaddluv8qi */
    case 1696:  /* neon_vpaddlsv8qi */
    case 1687:  /* neon_vpminfv4hf */
    case 1686:  /* neon_vpmaxfv4hf */
    case 1653:  /* neon_vabaluv2si */
    case 1652:  /* neon_vabalsv2si */
    case 1651:  /* neon_vabaluv4hi */
    case 1650:  /* neon_vabalsv4hi */
    case 1649:  /* neon_vabaluv8qi */
    case 1648:  /* neon_vabalsv8qi */
    case 1647:  /* neon_vabauv4si */
    case 1646:  /* neon_vabasv4si */
    case 1645:  /* neon_vabauv2si */
    case 1644:  /* neon_vabasv2si */
    case 1643:  /* neon_vabauv8hi */
    case 1642:  /* neon_vabasv8hi */
    case 1641:  /* neon_vabauv4hi */
    case 1640:  /* neon_vabasv4hi */
    case 1639:  /* neon_vabauv16qi */
    case 1638:  /* neon_vabasv16qi */
    case 1637:  /* neon_vabauv8qi */
    case 1636:  /* neon_vabasv8qi */
    case 1583:  /* neon_vcgeuv4si */
    case 1582:  /* neon_vcgtuv4si */
    case 1581:  /* neon_vcgeuv2si */
    case 1580:  /* neon_vcgtuv2si */
    case 1579:  /* neon_vcgeuv8hi */
    case 1578:  /* neon_vcgtuv8hi */
    case 1577:  /* neon_vcgeuv4hi */
    case 1576:  /* neon_vcgtuv4hi */
    case 1575:  /* neon_vcgeuv16qi */
    case 1574:  /* neon_vcgtuv16qi */
    case 1573:  /* neon_vcgeuv8qi */
    case 1572:  /* neon_vcgtuv8qi */
    case 1501:  /* neon_vrsubhnv2di */
    case 1500:  /* neon_vsubhnv2di */
    case 1499:  /* neon_vrsubhnv4si */
    case 1498:  /* neon_vsubhnv4si */
    case 1497:  /* neon_vrsubhnv8hi */
    case 1496:  /* neon_vsubhnv8hi */
    case 1495:  /* neon_vhsubuv4si */
    case 1494:  /* neon_vhsubsv4si */
    case 1493:  /* neon_vhsubuv2si */
    case 1492:  /* neon_vhsubsv2si */
    case 1491:  /* neon_vhsubuv8hi */
    case 1490:  /* neon_vhsubsv8hi */
    case 1489:  /* neon_vhsubuv4hi */
    case 1488:  /* neon_vhsubsv4hi */
    case 1487:  /* neon_vhsubuv16qi */
    case 1486:  /* neon_vhsubsv16qi */
    case 1485:  /* neon_vhsubuv8qi */
    case 1484:  /* neon_vhsubsv8qi */
    case 1483:  /* neon_vqsubuv2di */
    case 1482:  /* neon_vqsubsv2di */
    case 1481:  /* neon_vqsubudi */
    case 1480:  /* neon_vqsubsdi */
    case 1479:  /* neon_vqsubuv4si */
    case 1478:  /* neon_vqsubsv4si */
    case 1477:  /* neon_vqsubuv2si */
    case 1476:  /* neon_vqsubsv2si */
    case 1475:  /* neon_vqsubuv8hi */
    case 1474:  /* neon_vqsubsv8hi */
    case 1473:  /* neon_vqsubuv4hi */
    case 1472:  /* neon_vqsubsv4hi */
    case 1471:  /* neon_vqsubuv16qi */
    case 1470:  /* neon_vqsubsv16qi */
    case 1469:  /* neon_vqsubuv8qi */
    case 1468:  /* neon_vqsubsv8qi */
    case 1388:  /* neon_vraddhnv2di */
    case 1387:  /* neon_vaddhnv2di */
    case 1386:  /* neon_vraddhnv4si */
    case 1385:  /* neon_vaddhnv4si */
    case 1384:  /* neon_vraddhnv8hi */
    case 1383:  /* neon_vaddhnv8hi */
    case 1382:  /* neon_vqadduv2di */
    case 1381:  /* neon_vqaddsv2di */
    case 1380:  /* neon_vqaddudi */
    case 1379:  /* neon_vqaddsdi */
    case 1378:  /* neon_vqadduv4si */
    case 1377:  /* neon_vqaddsv4si */
    case 1376:  /* neon_vqadduv2si */
    case 1375:  /* neon_vqaddsv2si */
    case 1374:  /* neon_vqadduv8hi */
    case 1373:  /* neon_vqaddsv8hi */
    case 1372:  /* neon_vqadduv4hi */
    case 1371:  /* neon_vqaddsv4hi */
    case 1370:  /* neon_vqadduv16qi */
    case 1369:  /* neon_vqaddsv16qi */
    case 1368:  /* neon_vqadduv8qi */
    case 1367:  /* neon_vqaddsv8qi */
    case 1366:  /* neon_vhadduv4si */
    case 1365:  /* neon_vhaddsv4si */
    case 1364:  /* neon_vrhadduv4si */
    case 1363:  /* neon_vrhaddsv4si */
    case 1362:  /* neon_vhadduv2si */
    case 1361:  /* neon_vhaddsv2si */
    case 1360:  /* neon_vrhadduv2si */
    case 1359:  /* neon_vrhaddsv2si */
    case 1358:  /* neon_vhadduv8hi */
    case 1357:  /* neon_vhaddsv8hi */
    case 1356:  /* neon_vrhadduv8hi */
    case 1355:  /* neon_vrhaddsv8hi */
    case 1354:  /* neon_vhadduv4hi */
    case 1353:  /* neon_vhaddsv4hi */
    case 1352:  /* neon_vrhadduv4hi */
    case 1351:  /* neon_vrhaddsv4hi */
    case 1350:  /* neon_vhadduv16qi */
    case 1349:  /* neon_vhaddsv16qi */
    case 1348:  /* neon_vrhadduv16qi */
    case 1347:  /* neon_vrhaddsv16qi */
    case 1346:  /* neon_vhadduv8qi */
    case 1345:  /* neon_vhaddsv8qi */
    case 1344:  /* neon_vrhadduv8qi */
    case 1343:  /* neon_vrhaddsv8qi */
    case 1342:  /* neon_vaddwuv2si */
    case 1341:  /* neon_vaddwsv2si */
    case 1340:  /* neon_vaddwuv4hi */
    case 1339:  /* neon_vaddwsv4hi */
    case 1338:  /* neon_vaddwuv8qi */
    case 1337:  /* neon_vaddwsv8qi */
    case 1328:  /* *us_subv2sf_neon */
    case 1327:  /* *us_subv2si_neon */
    case 1326:  /* *us_subv4hi_neon */
    case 1325:  /* *us_subv8qi_neon */
    case 1324:  /* *ss_subv2sf_neon */
    case 1323:  /* *ss_subv2si_neon */
    case 1322:  /* *ss_subv4hi_neon */
    case 1321:  /* *ss_subv8qi_neon */
    case 1320:  /* *us_addv2sf_neon */
    case 1319:  /* *us_addv2si_neon */
    case 1318:  /* *us_addv4hi_neon */
    case 1317:  /* *us_addv8qi_neon */
    case 1316:  /* *ss_addv2sf_neon */
    case 1315:  /* *ss_addv2si_neon */
    case 1314:  /* *ss_addv4hi_neon */
    case 1313:  /* *ss_addv8qi_neon */
    case 1312:  /* neon_vpumaxv2si */
    case 1311:  /* neon_vpumaxv4hi */
    case 1310:  /* neon_vpumaxv8qi */
    case 1309:  /* neon_vpuminv2si */
    case 1308:  /* neon_vpuminv4hi */
    case 1307:  /* neon_vpuminv8qi */
    case 1298:  /* neon_vpaddv4hf */
    case 1292:  /* quad_halves_umaxv16qi */
    case 1291:  /* quad_halves_uminv16qi */
    case 1290:  /* quad_halves_smaxv16qi */
    case 1289:  /* quad_halves_sminv16qi */
    case 1288:  /* quad_halves_plusv16qi */
    case 1287:  /* quad_halves_umaxv8hi */
    case 1286:  /* quad_halves_uminv8hi */
    case 1285:  /* quad_halves_smaxv8hi */
    case 1284:  /* quad_halves_sminv8hi */
    case 1283:  /* quad_halves_plusv8hi */
    case 1279:  /* quad_halves_umaxv4si */
    case 1278:  /* quad_halves_uminv4si */
    case 1277:  /* quad_halves_smaxv4si */
    case 1276:  /* quad_halves_sminv4si */
    case 1275:  /* quad_halves_plusv4si */
    case 1274:  /* widen_usumv2si3 */
    case 1273:  /* widen_usumv4hi3 */
    case 1272:  /* widen_usumv8qi3 */
    case 1271:  /* vec_sel_widen_usum_hiv4siv2si3 */
    case 1270:  /* vec_sel_widen_usum_hiv4siv4hi3 */
    case 1269:  /* vec_sel_widen_usum_hiv4siv8qi3 */
    case 1268:  /* vec_sel_widen_usum_hiv8hiv2si3 */
    case 1267:  /* vec_sel_widen_usum_hiv8hiv4hi3 */
    case 1266:  /* vec_sel_widen_usum_hiv8hiv8qi3 */
    case 1265:  /* vec_sel_widen_usum_hiv16qiv2si3 */
    case 1264:  /* vec_sel_widen_usum_hiv16qiv4hi3 */
    case 1263:  /* vec_sel_widen_usum_hiv16qiv8qi3 */
    case 1262:  /* vec_sel_widen_usum_lov4siv2si3 */
    case 1261:  /* vec_sel_widen_usum_lov4siv4hi3 */
    case 1260:  /* vec_sel_widen_usum_lov4siv8qi3 */
    case 1259:  /* vec_sel_widen_usum_lov8hiv2si3 */
    case 1258:  /* vec_sel_widen_usum_lov8hiv4hi3 */
    case 1257:  /* vec_sel_widen_usum_lov8hiv8qi3 */
    case 1256:  /* vec_sel_widen_usum_lov16qiv2si3 */
    case 1255:  /* vec_sel_widen_usum_lov16qiv4hi3 */
    case 1254:  /* vec_sel_widen_usum_lov16qiv8qi3 */
    case 1253:  /* widen_ssumv2si3 */
    case 1252:  /* widen_ssumv4hi3 */
    case 1251:  /* widen_ssumv8qi3 */
    case 1250:  /* vec_sel_widen_ssum_hiv4siv2si3 */
    case 1249:  /* vec_sel_widen_ssum_hiv4siv4hi3 */
    case 1248:  /* vec_sel_widen_ssum_hiv4siv8qi3 */
    case 1247:  /* vec_sel_widen_ssum_hiv8hiv2si3 */
    case 1246:  /* vec_sel_widen_ssum_hiv8hiv4hi3 */
    case 1245:  /* vec_sel_widen_ssum_hiv8hiv8qi3 */
    case 1244:  /* vec_sel_widen_ssum_hiv16qiv2si3 */
    case 1243:  /* vec_sel_widen_ssum_hiv16qiv4hi3 */
    case 1242:  /* vec_sel_widen_ssum_hiv16qiv8qi3 */
    case 1241:  /* vec_sel_widen_ssum_lov4siv2si3 */
    case 1240:  /* vec_sel_widen_ssum_lov4siv4hi3 */
    case 1239:  /* vec_sel_widen_ssum_lov4siv8qi3 */
    case 1238:  /* vec_sel_widen_ssum_lov8hiv2si3 */
    case 1237:  /* vec_sel_widen_ssum_lov8hiv4hi3 */
    case 1236:  /* vec_sel_widen_ssum_lov8hiv8qi3 */
    case 1235:  /* vec_sel_widen_ssum_lov16qiv2si3 */
    case 1234:  /* vec_sel_widen_ssum_lov16qiv4hi3 */
    case 1233:  /* vec_sel_widen_ssum_lov16qiv8qi3 */
      return EXYNOS_M1_NEON_TYPE_NEON_ARITH_COMPLEX;

    case 1613:  /* neon_vtstv4si */
    case 1612:  /* neon_vtstv2si */
    case 1611:  /* neon_vtstv8hi */
    case 1610:  /* neon_vtstv4hi */
    case 1609:  /* neon_vtstv16qi */
    case 1608:  /* neon_vtstv8qi */
    case 1467:  /* neon_vsubwuv2si */
    case 1466:  /* neon_vsubwsv2si */
    case 1465:  /* neon_vsubwuv4hi */
    case 1464:  /* neon_vsubwsv4hi */
    case 1463:  /* neon_vsubwuv8qi */
    case 1462:  /* neon_vsubwsv8qi */
    case 1461:  /* neon_vsubluv2si */
    case 1460:  /* neon_vsublsv2si */
    case 1459:  /* neon_vsubluv4hi */
    case 1458:  /* neon_vsublsv4hi */
    case 1457:  /* neon_vsubluv8qi */
    case 1456:  /* neon_vsublsv8qi */
    case 1336:  /* neon_vaddluv2si */
    case 1335:  /* neon_vaddlsv2si */
    case 1334:  /* neon_vaddluv4hi */
    case 1333:  /* neon_vaddlsv4hi */
    case 1332:  /* neon_vaddluv8qi */
    case 1331:  /* neon_vaddlsv8qi */
    case 1293:  /* arm_reduc_plus_internal_v2di */
    case 1117:  /* xorv2di3 */
    case 1116:  /* xorv4sf3 */
    case 1115:  /* xorv2sf3 */
    case 1114:  /* xorv8hf3 */
    case 1113:  /* xorv4hf3 */
    case 1112:  /* xorv4si3 */
    case 1111:  /* xorv2si3 */
    case 1110:  /* xorv8hi3 */
    case 1109:  /* xorv4hi3 */
    case 1108:  /* xorv16qi3 */
    case 1107:  /* xorv8qi3 */
    case 1105:  /* bicv2di3_neon */
    case 1104:  /* bicv4sf3_neon */
    case 1103:  /* bicv2sf3_neon */
    case 1102:  /* bicv8hf3_neon */
    case 1101:  /* bicv4hf3_neon */
    case 1100:  /* bicv4si3_neon */
    case 1099:  /* bicv2si3_neon */
    case 1098:  /* bicv8hi3_neon */
    case 1097:  /* bicv4hi3_neon */
    case 1096:  /* bicv16qi3_neon */
    case 1095:  /* bicv8qi3_neon */
    case 1093:  /* ornv2di3_neon */
    case 1092:  /* ornv4sf3_neon */
    case 1091:  /* ornv2sf3_neon */
    case 1090:  /* ornv8hf3_neon */
    case 1089:  /* ornv4hf3_neon */
    case 1088:  /* ornv4si3_neon */
    case 1087:  /* ornv2si3_neon */
    case 1086:  /* ornv8hi3_neon */
    case 1085:  /* ornv4hi3_neon */
    case 1084:  /* ornv16qi3_neon */
    case 1083:  /* ornv8qi3_neon */
    case 1082:  /* andv2di3 */
    case 1081:  /* andv4sf3 */
    case 1080:  /* andv2sf3 */
    case 1079:  /* andv8hf3 */
    case 1078:  /* andv4hf3 */
    case 1077:  /* andv4si3 */
    case 1076:  /* andv2si3 */
    case 1075:  /* andv8hi3 */
    case 1074:  /* andv4hi3 */
    case 1073:  /* andv16qi3 */
    case 1072:  /* andv8qi3 */
    case 1071:  /* iorv2di3 */
    case 1070:  /* iorv4sf3 */
    case 1069:  /* iorv2sf3 */
    case 1068:  /* iorv8hf3 */
    case 1067:  /* iorv4hf3 */
    case 1066:  /* iorv4si3 */
    case 1065:  /* iorv2si3 */
    case 1064:  /* iorv8hi3 */
    case 1063:  /* iorv4hi3 */
    case 1062:  /* iorv16qi3 */
    case 1061:  /* iorv8qi3 */
    case 997:  /* subv4hf3_fp16 */
    case 996:  /* subv8hf3_fp16 */
      return EXYNOS_M1_NEON_TYPE_NEON_ARITH_BASIC;

    case 1677:  /* neon_vminuv4si */
    case 1676:  /* neon_vminsv4si */
    case 1675:  /* neon_vmaxuv4si */
    case 1674:  /* neon_vmaxsv4si */
    case 1673:  /* neon_vminuv2si */
    case 1672:  /* neon_vminsv2si */
    case 1671:  /* neon_vmaxuv2si */
    case 1670:  /* neon_vmaxsv2si */
    case 1669:  /* neon_vminuv8hi */
    case 1668:  /* neon_vminsv8hi */
    case 1667:  /* neon_vmaxuv8hi */
    case 1666:  /* neon_vmaxsv8hi */
    case 1665:  /* neon_vminuv4hi */
    case 1664:  /* neon_vminsv4hi */
    case 1663:  /* neon_vmaxuv4hi */
    case 1662:  /* neon_vmaxsv4hi */
    case 1661:  /* neon_vminuv16qi */
    case 1660:  /* neon_vminsv16qi */
    case 1659:  /* neon_vmaxuv16qi */
    case 1658:  /* neon_vmaxsv16qi */
    case 1657:  /* neon_vminuv8qi */
    case 1656:  /* neon_vminsv8qi */
    case 1655:  /* neon_vmaxuv8qi */
    case 1654:  /* neon_vmaxsv8qi */
    case 1635:  /* neon_vabdluv2si */
    case 1634:  /* neon_vabdlsv2si */
    case 1633:  /* neon_vabdluv4hi */
    case 1632:  /* neon_vabdlsv4hi */
    case 1631:  /* neon_vabdluv8qi */
    case 1630:  /* neon_vabdlsv8qi */
    case 1627:  /* neon_vabdv4hf */
    case 1626:  /* neon_vabdv8hf */
    case 1625:  /* neon_vabduv4si */
    case 1624:  /* neon_vabdsv4si */
    case 1623:  /* neon_vabduv2si */
    case 1622:  /* neon_vabdsv2si */
    case 1621:  /* neon_vabduv8hi */
    case 1620:  /* neon_vabdsv8hi */
    case 1619:  /* neon_vabduv4hi */
    case 1618:  /* neon_vabdsv4hi */
    case 1617:  /* neon_vabduv16qi */
    case 1616:  /* neon_vabdsv16qi */
    case 1615:  /* neon_vabduv8qi */
    case 1614:  /* neon_vabdsv8qi */
    case 1175:  /* *umaxv4si3_neon */
    case 1174:  /* *umaxv2si3_neon */
    case 1173:  /* *umaxv8hi3_neon */
    case 1172:  /* *umaxv4hi3_neon */
    case 1171:  /* *umaxv16qi3_neon */
    case 1170:  /* *umaxv8qi3_neon */
    case 1169:  /* *uminv4si3_neon */
    case 1168:  /* *uminv2si3_neon */
    case 1167:  /* *uminv8hi3_neon */
    case 1166:  /* *uminv4hi3_neon */
    case 1165:  /* *uminv16qi3_neon */
    case 1164:  /* *uminv8qi3_neon */
    case 1149:  /* negv4hf2 */
    case 1148:  /* absv4hf2 */
    case 1147:  /* negv8hf2 */
    case 1146:  /* absv8hf2 */
      return EXYNOS_M1_NEON_TYPE_NEON_ARITH_SIMPLE;

    default:
      return EXYNOS_M1_NEON_TYPE_UNKNOWN;

    }
}

enum attr_enabled
get_attr_enabled (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  switch (recog_memoized (insn))
    {
    case 4081:  /* *p *thumb2_movhi_insn */
    case 4080:  /* *p *thumb2_movsi_insn */
      extract_constrain_insn_cached (insn);
      if ((!((1 << which_alternative) & 0x5)) && (
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it)))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 4078:  /* *p *thumb2_neg_abssi2 */
    case 4077:  /* *p *thumb2_abssi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if (
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it))
	    {
	      return ENABLED_NO;
	    }
	  else
	    {
	      return ENABLED_YES;
	    }
        }
      else
        {
	  return ENABLED_NO;
        }

    case 4060:  /* *p *sqrtdf2_vfp */
    case 4059:  /* *p *sqrtsf2_vfp */
    case 4024:  /* *p *divdf3_vfp */
    case 4023:  /* *p *divsf3_vfp */
      extract_constrain_insn_cached (insn);
      if ((
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it)) || ((which_alternative == 1) && (! (
#line 182 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_arch6 || TARGET_VFP3)))))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 4014:  /* *p *movdf_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 3)
        {
	  if (((which_alternative == 4) && (
#line 210 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(CONSTANT_P (operands[1])))) && (
#line 237 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_disable_literal_pool)))
	    {
	      return ENABLED_NO;
	    }
	  else
	    {
	      return ENABLED_YES;
	    }
        }
      else
        {
	  return ENABLED_NO;
        }

    case 4013:  /* *p *thumb2_movsf_vfp */
      extract_constrain_insn_cached (insn);
      if ((
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it)) || (((which_alternative == 3) && (
#line 210 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(CONSTANT_P (operands[1])))) && (
#line 237 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_disable_literal_pool))))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 4011:  /* *p *movhf_vfp_fp16 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0xb))
        {
	  if ((which_alternative != 3) && (
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it)))
	    {
	      return ENABLED_NO;
	    }
	  else
	    {
	      return ENABLED_YES;
	    }
        }
      else
        {
	  return ENABLED_NO;
        }

    case 4009:  /* *p *thumb2_movsi_vfp */
      extract_constrain_insn_cached (insn);
      if (((!((1 << which_alternative) & 0x5)) && (
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it))) || (((which_alternative == 12) && (
#line 210 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(CONSTANT_P (operands[1])))) && (
#line 237 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_disable_literal_pool))))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 4007:  /* *p *thumb2_movhi_fp16 */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0xc0))
        {
	  if (((!((1 << which_alternative) & 0x5)) && (
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it))) || ((which_alternative == 3) && (! (
#line 160 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_32BIT && arm_arch6 && arm_arch_thumb2)))))
	    {
	      return ENABLED_NO;
	    }
	  else
	    {
	      return ENABLED_YES;
	    }
        }
      else
        {
	  return ENABLED_NO;
        }

    case 4006:  /* *p *arm_movhi_fp16 */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0x60))
        {
	  if ((which_alternative == 2) && (! (
#line 160 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_32BIT && arm_arch6 && arm_arch_thumb2))))
	    {
	      return ENABLED_NO;
	    }
	  else
	    {
	      return ENABLED_YES;
	    }
        }
      else
        {
	  return ENABLED_NO;
        }

    case 4005:  /* *p *thumb2_movhi_vfp */
      extract_constrain_insn_cached (insn);
      if (((!((1 << which_alternative) & 0x5)) && (
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it))) || ((which_alternative == 3) && (! (
#line 160 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_32BIT && arm_arch6 && arm_arch_thumb2)))))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 3728:  /* *p *arm_rev */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  if ((
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it)) || (get_attr_arch_enabled (insn) == ARCH_ENABLED_NO))
	    {
	      return ENABLED_NO;
	    }
	  else
	    {
	      return ENABLED_YES;
	    }
        }
      else
        {
	  return ENABLED_NO;
        }

    case 3700:  /* *p *arm_cmpsi_insn */
      extract_constrain_insn_cached (insn);
      if (((!((1 << which_alternative) & 0x7)) && (
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it))) || ((((1 << which_alternative) & 0x3)) && (! (
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2)))))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 3697:  /* *p *arm_movqi_insn */
      extract_constrain_insn_cached (insn);
      if (((!((1 << which_alternative) & 0xb)) && (
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it))) || ((((1 << which_alternative) & 0x69)) && (! (
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2)))))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 3670:  /* *p one_cmpldi2 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x6))
        {
	  if (get_attr_arch_enabled (insn) == ARCH_ENABLED_NO)
	    {
	      return ENABLED_NO;
	    }
	  else
	    {
	      return ENABLED_YES;
	    }
        }
      else
        {
	  return ENABLED_NO;
        }

    case 3669:  /* *p *arm_neg_abssi2 */
    case 3668:  /* *p *arm_abssi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 0)
        {
	  return ENABLED_YES;
        }
      else
        {
	  return ENABLED_NO;
        }

    case 3727:  /* *p *arm_movtas_ze */
    case 3717:  /* *p *and_shiftsi */
    case 3716:  /* *p *eor_shiftsi */
    case 3715:  /* *p *orr_shiftsi */
    case 3714:  /* *p *rsb_shiftsi */
    case 3713:  /* *p *add_shiftsi */
    case 3712:  /* *p *and_multsi */
    case 3711:  /* *p *eor_multsi */
    case 3710:  /* *p *orr_multsi */
    case 3709:  /* *p *rsb_multsi */
    case 3708:  /* *p *add_multsi */
    case 3691:  /* *p *arm_movt */
    case 3666:  /* *p udivsi3 */
    case 3665:  /* *p divsi3 */
    case 3657:  /* *p *not_shiftsi */
      extract_constrain_insn_cached (insn);
      if ((
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it)) || (get_attr_arch_enabled (insn) == ARCH_ENABLED_NO))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 3640:  /* *p *iorsi3_insn */
      extract_constrain_insn_cached (insn);
      if (((which_alternative != 1) && (
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it))) || (get_attr_arch_enabled (insn) == ARCH_ENABLED_NO))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 3643:  /* *p *arm_xorsi3 */
    case 3626:  /* *p *arm_andsi3_insn */
      extract_constrain_insn_cached (insn);
      if ((which_alternative != 1) && (
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it)))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 3600:  /* *p *arm_mulsi3_v6 */
      extract_constrain_insn_cached (insn);
      if (((which_alternative == 2) && (
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it))) || ((((1 << which_alternative) & 0x3)) && (! (
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2)))))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 3598:  /* *p *arm_subsi3_insn */
      extract_constrain_insn_cached (insn);
      if (((!((1 << which_alternative) & 0xf)) && (
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it))) || ((((1 << which_alternative) & 0xf)) && (! (
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2)))))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 3595:  /* *p *subsi3_carryin */
      extract_constrain_insn_cached (insn);
      if ((
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it)) || ((which_alternative == 1) && (! (
#line 132 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_ARM)))))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 4179:  /* *p arm_usatsihi */
    case 4178:  /* *p arm_ssatsihi_shift */
    case 4177:  /* *p sssubsa3 */
    case 4176:  /* *p sssubsq3 */
    case 4175:  /* *p sssubha3 */
    case 4174:  /* *p sssubv2ha3 */
    case 4173:  /* *p sssubhq3 */
    case 4172:  /* *p sssubqq3 */
    case 4171:  /* *p sssubv2hq3 */
    case 4170:  /* *p sssubv4qq3 */
    case 4169:  /* *p ussubuha3 */
    case 4168:  /* *p ussubv2uha3 */
    case 4167:  /* *p ussubuhq3 */
    case 4166:  /* *p ussubuqq3 */
    case 4165:  /* *p ussubv2uhq3 */
    case 4164:  /* *p ussubv4uqq3 */
    case 4163:  /* *p subv2ha3 */
    case 4162:  /* *p subv2hq3 */
    case 4161:  /* *p subv4qq3 */
    case 4150:  /* *p ssaddsa3 */
    case 4149:  /* *p ssaddsq3 */
    case 4148:  /* *p ssaddha3 */
    case 4147:  /* *p ssaddv2ha3 */
    case 4146:  /* *p ssaddhq3 */
    case 4145:  /* *p ssaddqq3 */
    case 4144:  /* *p ssaddv2hq3 */
    case 4143:  /* *p ssaddv4qq3 */
    case 4142:  /* *p usadduha3 */
    case 4141:  /* *p usaddv2uha3 */
    case 4140:  /* *p usadduhq3 */
    case 4139:  /* *p usadduqq3 */
    case 4138:  /* *p usaddv2uhq3 */
    case 4137:  /* *p usaddv4uqq3 */
    case 4136:  /* *p addv2ha3 */
    case 4135:  /* *p addv2hq3 */
    case 4134:  /* *p addv4qq3 */
    case 4123:  /* *p arm_store_release_exclusivesi */
    case 4122:  /* *p arm_store_release_exclusivehi */
    case 4121:  /* *p arm_store_release_exclusiveqi */
    case 4120:  /* *p arm_store_release_exclusivedi */
    case 4119:  /* *p arm_store_exclusivedi */
    case 4118:  /* *p arm_store_exclusivesi */
    case 4117:  /* *p arm_store_exclusivehi */
    case 4116:  /* *p arm_store_exclusiveqi */
    case 4115:  /* *p arm_load_acquire_exclusivedi */
    case 4114:  /* *p arm_load_exclusivedi */
    case 4113:  /* *p arm_load_acquire_exclusivesi */
    case 4112:  /* *p arm_load_exclusivesi */
    case 4111:  /* *p arm_load_acquire_exclusivehi */
    case 4110:  /* *p arm_load_acquire_exclusiveqi */
    case 4109:  /* *p arm_load_exclusivehi */
    case 4108:  /* *p arm_load_exclusiveqi */
    case 4107:  /* *p arm_atomic_loaddi2_ldrd */
    case 4106:  /* *p atomic_storesi */
    case 4105:  /* *p atomic_storehi */
    case 4104:  /* *p atomic_storeqi */
    case 4103:  /* *p atomic_loadsi */
    case 4102:  /* *p atomic_loadhi */
    case 4101:  /* *p atomic_loadqi */
    case 4100:  /* *p *orsi_not_shiftsi_si */
    case 4099:  /* *p *orsi_notsi_si */
    case 4098:  /* *p *iordi_notsesidi_di */
    case 4097:  /* *p *iordi_notdi_zesidi */
    case 4096:  /* *p *iordi_notzesidi_di */
    case 4095:  /* *p *iordi_notdi_di */
    case 4084:  /* *p thumb2_zero_extendqisi2_v6 */
    case 4083:  /* *p *thumb2_zero_extendhisi2_v6 */
    case 4082:  /* *p *thumb2_extendqisi_v6 */
    case 4076:  /* *p *thumb_andsi_not_shiftsi_si */
    case 4075:  /* *p rintdf2 */
    case 4074:  /* *p nearbyintdf2 */
    case 4073:  /* *p btruncdf2 */
    case 4072:  /* *p rintsf2 */
    case 4071:  /* *p nearbyintsf2 */
    case 4070:  /* *p btruncsf2 */
    case 4069:  /* *p *combine_vcvtf2i */
    case 4068:  /* *p *combine_vcvt_f64_s32 */
    case 4067:  /* *p *combine_vcvt_f64_u32 */
    case 4066:  /* *p *combine_vcvt_f32_s32 */
    case 4065:  /* *p *combine_vcvt_f32_u32 */
    case 4064:  /* *p *cmpdf_trap_vfp */
    case 4063:  /* *p *cmpdf_vfp */
    case 4062:  /* *p *cmpsf_trap_vfp */
    case 4061:  /* *p *cmpsf_vfp */
    case 4058:  /* *p floatunssidf2 */
    case 4057:  /* *p floatunssisf2 */
    case 4056:  /* *p *floatsidf2_vfp */
    case 4055:  /* *p *floatsisf2_vfp */
    case 4054:  /* *p fixuns_truncdfsi2 */
    case 4053:  /* *p fixuns_truncsfsi2 */
    case 4052:  /* *p *truncsidf2_vfp */
    case 4051:  /* *p *truncsisf2_vfp */
    case 4050:  /* *p truncsfhf2 */
    case 4049:  /* *p extendhfsf2 */
    case 4048:  /* *p *truncdfsf2_vfp */
    case 4047:  /* *p *extendsfdf2_vfp */
    case 4046:  /* *p *fnmadddf4 */
    case 4045:  /* *p *fnmaddsf4 */
    case 4044:  /* *p *fnmsubdf4 */
    case 4043:  /* *p *fnmsubsf4 */
    case 4042:  /* *p *fmsubdf4 */
    case 4041:  /* *p *fmsubsf4 */
    case 4040:  /* *p fmadf4 */
    case 4039:  /* *p fmasf4 */
    case 4038:  /* *p *muldf3negdfsubdf_vfp */
    case 4037:  /* *p *mulsf3negsfsubsf_vfp */
    case 4036:  /* *p *fmuldf3negdfadddf_vfp */
    case 4035:  /* *p *mulsf3negsfaddsf_vfp */
    case 4034:  /* *p *muldf3subdf_vfp */
    case 4033:  /* *p *mulsf3subsf_vfp */
    case 4032:  /* *p *muldf3adddf_vfp */
    case 4031:  /* *p *mulsf3addsf_vfp */
    case 4030:  /* *p *negmuldf3_vfp */
    case 4029:  /* *p *muldf3negdf_vfp */
    case 4028:  /* *p *negmulsf3_vfp */
    case 4027:  /* *p *mulsf3negsf_vfp */
    case 4026:  /* *p *muldf3_vfp */
    case 4025:  /* *p *mulsf3_vfp */
    case 4022:  /* *p *subdf3_vfp */
    case 4021:  /* *p *subsf3_vfp */
    case 4020:  /* *p *adddf3_vfp */
    case 4019:  /* *p *addsf3_vfp */
    case 4018:  /* *p *negdf2_vfp */
    case 4017:  /* *p *negsf2_vfp */
    case 4016:  /* *p *absdf2_vfp */
    case 4015:  /* *p *abssf2_vfp */
    case 3782:  /* *p *stm2_db_update */
    case 3781:  /* *p *stm2_db */
    case 3780:  /* *p *ldm2_db_update */
    case 3779:  /* *p *ldm2_db */
    case 3770:  /* *p *stm2_ia_update */
    case 3769:  /* *p *stm2_ */
    case 3768:  /* *p *ldm2_ia_update */
    case 3767:  /* *p *ldm2_ */
    case 3766:  /* *p *stm3_db_update */
    case 3765:  /* *p *stm3_db */
    case 3764:  /* *p *ldm3_db_update */
    case 3763:  /* *p *ldm3_db */
    case 3754:  /* *p *stm3_ia_update */
    case 3753:  /* *p *stm3_ */
    case 3752:  /* *p *ldm3_ia_update */
    case 3751:  /* *p *ldm3_ */
    case 3750:  /* *p *stm4_db_update */
    case 3749:  /* *p *stm4_db */
    case 3748:  /* *p *ldm4_db_update */
    case 3747:  /* *p *ldm4_db */
    case 3738:  /* *p *stm4_ia_update */
    case 3737:  /* *p *stm4_ */
    case 3736:  /* *p *ldm4_ia_update */
    case 3735:  /* *p *ldm4_ */
    case 3734:  /* *p *thumb2_strd_base_neg */
    case 3733:  /* *p *thumb2_strd_base */
    case 3732:  /* *p *thumb2_strd */
    case 3731:  /* *p *thumb2_ldrd_base_neg */
    case 3730:  /* *p *thumb2_ldrd_base */
    case 3729:  /* *p *thumb2_ldrd */
    case 3725:  /* *p rbitsi2 */
    case 3724:  /* *p clzsi2 */
    case 3699:  /* *p *arm_movsf_soft_insn */
    case 3698:  /* *p *arm32_movhf */
    case 3690:  /* *p *arm_extendqisi2addsi */
    case 3686:  /* *p *arm_extendhisi2_v6 */
    case 3684:  /* *p *compareqi_eq0 */
    case 3683:  /* *p *arm_zero_extendqisi2addsi */
    case 3680:  /* *p *arm_zero_extendhisi2addsi */
    case 3664:  /* *p extzv_t2 */
    case 3663:  /* *p *extv_reg */
    case 3655:  /* *p *satsi_smax_shift */
    case 3654:  /* *p *satsi_smin_shift */
    case 3653:  /* *p *satsi_smax_shift */
    case 3652:  /* *p *satsi_smin_shift */
    case 3651:  /* *p *satsi_smax */
    case 3650:  /* *p *satsi_smin */
    case 3649:  /* *p *satsi_smax */
    case 3648:  /* *p *satsi_smin */
    case 3647:  /* *p *smin_0 */
    case 3646:  /* *p *smax_m1 */
    case 3645:  /* *p *smax_0 */
    case 3644:  /* *p *andsi_iorsi3_notsi */
    case 3641:  /* *p *xordi_zesidi_di */
    case 3638:  /* *p *iordi_zesidi_di */
    case 3637:  /* *p andsi_not_shiftsi_si_scc */
    case 3636:  /* *p andsi_not_shiftsi_si_scc_no_reuse */
    case 3634:  /* *p andsi_notsi_si */
    case 3633:  /* *p *anddi_notsesidi_di */
    case 3632:  /* *p *anddi_notdi_zesidi */
    case 3631:  /* *p *anddi_notzesidi_di */
    case 3629:  /* *p insv_t2 */
    case 3628:  /* *p insv_zero */
    case 3627:  /* *p *zeroextractsi_compare0_scratch */
    case 3625:  /* *p *maddhidi4tt */
    case 3624:  /* *p *maddhidi4tb */
    case 3623:  /* *p maddhidi4 */
    case 3622:  /* *p *maddhisi4tt */
    case 3621:  /* *p *maddhisi4tb */
    case 3620:  /* *p maddhisi4 */
    case 3619:  /* *p *mulhisi3tt */
    case 3618:  /* *p *mulhisi3bt */
    case 3617:  /* *p *mulhisi3tb */
    case 3615:  /* *p *umulsi3_highpart_v6 */
    case 3613:  /* *p *smulsi3_highpart_v6 */
    case 3611:  /* *p *umulsidi3adddi_v6 */
    case 3609:  /* *p *umulsidi3_v6 */
    case 3607:  /* *p *mulsidi3_v6 */
    case 3605:  /* *p *mulsidi3adddi_v6 */
    case 3603:  /* *p *mulsi3subsi */
    case 3602:  /* *p *mulsi3addsi_v6 */
    case 3594:  /* *p *addsi3_carryin_shift_geu */
    case 3593:  /* *p *addsi3_carryin_shift_ltu */
      extract_constrain_insn_cached (insn);
      if (
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 3592:  /* *p *addsi3_carryin_alt2_geu */
    case 3591:  /* *p *addsi3_carryin_alt2_ltu */
    case 3590:  /* *p *addsi3_carryin_geu */
    case 3589:  /* *p *addsi3_carryin_ltu */
      extract_constrain_insn_cached (insn);
      if (((which_alternative != 0) && (
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it))) || ((which_alternative == 0) && (! (
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2)))))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 3656:  /* *p *arm_shiftsi3 */
    case 3588:  /* *p *compare_addsi2_op1 */
    case 3587:  /* *p *compare_addsi2_op0 */
      extract_constrain_insn_cached (insn);
      if (((!((1 << which_alternative) & 0x3)) && (
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it))) || ((((1 << which_alternative) & 0x3)) && (! (
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2)))))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 3671:  /* *p *arm_one_cmplsi2 */
    case 3667:  /* *p *arm_negsi2 */
    case 3662:  /* *p unaligned_storehi */
    case 3661:  /* *p unaligned_storesi */
    case 3660:  /* *p unaligned_loadhiu */
    case 3659:  /* *p unaligned_loadhis */
    case 3658:  /* *p unaligned_loadsi */
    case 3586:  /* *p *compare_negsi_si */
      extract_constrain_insn_cached (insn);
      if (((which_alternative == 1) && (
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it))) || ((which_alternative == 0) && (! (
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2)))))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 3584:  /* *p *arm_addsi3 */
      extract_constrain_insn_cached (insn);
      if (((!((1 << which_alternative) & 0xf)) && (
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it))) || (get_attr_arch_enabled (insn) == ARCH_ENABLED_NO))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 865:  /* *thumb2_movsicc_insn */
      extract_constrain_insn_cached (insn);
      if ((((1 << which_alternative) & 0x7fc)) && (
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it)))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 4160:  /* *p subusa3 */
    case 4159:  /* *p subuha3 */
    case 4158:  /* *p subsa3 */
    case 4157:  /* *p subha3 */
    case 4156:  /* *p subusq3 */
    case 4155:  /* *p subuhq3 */
    case 4154:  /* *p subuqq3 */
    case 4153:  /* *p subsq3 */
    case 4152:  /* *p subhq3 */
    case 4151:  /* *p subqq3 */
    case 4133:  /* *p addusa3 */
    case 4132:  /* *p adduha3 */
    case 4131:  /* *p addsa3 */
    case 4130:  /* *p addha3 */
    case 4129:  /* *p addusq3 */
    case 4128:  /* *p adduhq3 */
    case 4127:  /* *p adduqq3 */
    case 4126:  /* *p addsq3 */
    case 4125:  /* *p addhq3 */
    case 4124:  /* *p addqq3 */
    case 860:  /* *thumb2_mov_scc */
      extract_constrain_insn_cached (insn);
      if ((which_alternative == 1) && (
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it)))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 853:  /* *thumb2_neg_abssi2 */
    case 852:  /* *thumb2_abssi2 */
    case 850:  /* *thumb2_uminsi3 */
    case 849:  /* *thumb32_umaxsi3 */
    case 848:  /* *thumb2_sminsi3 */
    case 847:  /* *thumb2_smaxsi3 */
      extract_constrain_insn_cached (insn);
      if ((which_alternative == 2) && (
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it)))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 715:  /* *sqrtdf2_vfp */
    case 714:  /* *sqrtsf2_vfp */
    case 666:  /* *divdf3_vfp */
    case 665:  /* *divsf3_vfp */
      extract_constrain_insn_cached (insn);
      if ((which_alternative == 1) && (! (
#line 182 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_arch6 || TARGET_VFP3))))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 640:  /* *thumb2_movdf_vfp */
    case 639:  /* *movdf_vfp */
      extract_constrain_insn_cached (insn);
      if ((((which_alternative == 4) && (
#line 210 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(CONSTANT_P (operands[1])))) && (
#line 237 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_disable_literal_pool))) || ((which_alternative == 3) && (! (
#line 168 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_NEON)))))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 4012:  /* *p *movsf_vfp */
    case 638:  /* *thumb2_movsf_vfp */
    case 637:  /* *movsf_vfp */
      extract_constrain_insn_cached (insn);
      if (((which_alternative == 3) && (
#line 210 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(CONSTANT_P (operands[1])))) && (
#line 237 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_disable_literal_pool)))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 4010:  /* *p *movdi_vfp_cortexa8 */
    case 633:  /* *movdi_vfp_cortexa8 */
    case 632:  /* *movdi_vfp */
      extract_constrain_insn_cached (insn);
      if ((((which_alternative == 10) && (
#line 210 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(CONSTANT_P (operands[1])))) && (
#line 237 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_disable_literal_pool))) || (get_attr_arch_enabled (insn) == ARCH_ENABLED_NO))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 631:  /* *thumb2_movsi_vfp */
      extract_constrain_insn_cached (insn);
      if (((which_alternative == 12) && (
#line 210 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(CONSTANT_P (operands[1])))) && (
#line 237 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_disable_literal_pool)))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 4008:  /* *p *arm_movsi_vfp */
    case 630:  /* *arm_movsi_vfp */
      extract_constrain_insn_cached (insn);
      if (((which_alternative == 9) && (
#line 210 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(CONSTANT_P (operands[1])))) && (
#line 237 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_disable_literal_pool)))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 3913:  /* *p ashldi3_di */
    case 3912:  /* *p ashlv2si3_di */
    case 3911:  /* *p ashlv4hi3_di */
    case 3910:  /* *p lshrdi3_di */
    case 3909:  /* *p lshrv2si3_di */
    case 3908:  /* *p lshrv4hi3_di */
    case 3907:  /* *p ashrdi3_di */
    case 3906:  /* *p ashrv2si3_di */
    case 3905:  /* *p ashrv4hi3_di */
    case 3904:  /* *p rordi3_di */
    case 3903:  /* *p rorv2si3_di */
    case 3902:  /* *p rorv4hi3_di */
    case 3901:  /* *p ashldi3_iwmmxt */
    case 3900:  /* *p ashlv2si3_iwmmxt */
    case 3899:  /* *p ashlv4hi3_iwmmxt */
    case 3898:  /* *p lshrdi3_iwmmxt */
    case 3897:  /* *p lshrv2si3_iwmmxt */
    case 3896:  /* *p lshrv4hi3_iwmmxt */
    case 3895:  /* *p ashrdi3_iwmmxt */
    case 3894:  /* *p ashrv2si3_iwmmxt */
    case 3893:  /* *p ashrv4hi3_iwmmxt */
    case 3892:  /* *p rordi3 */
    case 3891:  /* *p rorv2si3 */
    case 3890:  /* *p rorv4hi3 */
    case 535:  /* ashldi3_di */
    case 534:  /* ashlv2si3_di */
    case 533:  /* ashlv4hi3_di */
    case 532:  /* lshrdi3_di */
    case 531:  /* lshrv2si3_di */
    case 530:  /* lshrv4hi3_di */
    case 529:  /* ashrdi3_di */
    case 528:  /* ashrv2si3_di */
    case 527:  /* ashrv4hi3_di */
    case 526:  /* rordi3_di */
    case 525:  /* rorv2si3_di */
    case 524:  /* rorv4hi3_di */
    case 523:  /* ashldi3_iwmmxt */
    case 522:  /* ashlv2si3_iwmmxt */
    case 521:  /* ashlv4hi3_iwmmxt */
    case 520:  /* lshrdi3_iwmmxt */
    case 519:  /* lshrv2si3_iwmmxt */
    case 518:  /* lshrv4hi3_iwmmxt */
    case 517:  /* ashrdi3_iwmmxt */
    case 516:  /* ashrv2si3_iwmmxt */
    case 515:  /* ashrv4hi3_iwmmxt */
    case 514:  /* rordi3 */
    case 513:  /* rorv2si3 */
    case 512:  /* rorv4hi3 */
      extract_constrain_insn_cached (insn);
      if ((which_alternative == 1) && (! (
#line 178 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_REALLY_IWMMXT2))))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 411:  /* *iwmmxt_movsi_insn */
    case 410:  /* *iwmmxt_arm_movdi */
      extract_constrain_insn_cached (insn);
      if (((which_alternative == 13) && (
#line 210 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(CONSTANT_P (operands[1])))) && (
#line 237 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_disable_literal_pool)))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 298:  /* *if_move_neg */
    case 296:  /* *if_neg_move */
      extract_constrain_insn_cached (insn);
      if (((which_alternative == 1) && (
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it))) || (get_attr_arch_enabled (insn) == ARCH_ENABLED_NO))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 269:  /* movcond_addsi */
      extract_constrain_insn_cached (insn);
      if ((which_alternative == 0) && (
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it)))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 262:  /* *cmp_ior */
    case 261:  /* *cmp_and */
    case 260:  /* *cmp_ite1 */
    case 259:  /* *cmp_ite0 */
      extract_constrain_insn_cached (insn);
      if ((((1 << which_alternative) & 0x1f)) && (! (
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2))))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 201:  /* *arm_cmpdi_unsigned */
      extract_constrain_insn_cached (insn);
      if (((which_alternative == 2) && (
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it))) || (get_attr_arch_enabled (insn) == ARCH_ENABLED_NO))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 192:  /* *arm_movqi_insn */
      extract_constrain_insn_cached (insn);
      if ((((1 << which_alternative) & 0x69)) && (! (
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2))))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 4004:  /* *p *arm_movhi_vfp */
    case 3695:  /* *p *movhi_insn_arch4 */
    case 628:  /* *arm_movhi_fp16 */
    case 626:  /* *arm_movhi_vfp */
    case 190:  /* *movhi_insn_arch4 */
      extract_constrain_insn_cached (insn);
      if ((which_alternative == 2) && (! (
#line 160 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_32BIT && arm_arch6 && arm_arch_thumb2))))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 3692:  /* *p *arm_movsi_insn */
    case 629:  /* *thumb2_movhi_fp16 */
    case 627:  /* *thumb2_movhi_vfp */
    case 182:  /* *arm_movsi_insn */
      extract_constrain_insn_cached (insn);
      if ((which_alternative == 3) && (! (
#line 160 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_32BIT && arm_arch6 && arm_arch_thumb2))))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 41:  /* *arm_subsi3_insn */
      extract_constrain_insn_cached (insn);
      if ((((1 << which_alternative) & 0xf)) && (! (
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2))))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 29:  /* *subsi3_carryin */
      extract_constrain_insn_cached (insn);
      if ((which_alternative == 1) && (! (
#line 132 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_ARM))))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 196:  /* *arm_cmpsi_insn */
    case 132:  /* *arm_shiftsi3 */
    case 45:  /* *arm_mulsi3_v6 */
    case 18:  /* *compare_addsi2_op1 */
    case 17:  /* *compare_addsi2_op0 */
      extract_constrain_insn_cached (insn);
      if ((((1 << which_alternative) & 0x3)) && (! (
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2))))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 157:  /* *arm_one_cmplsi2 */
    case 152:  /* *negdi_extendsidi */
    case 150:  /* *arm_negsi2 */
    case 142:  /* unaligned_storehi */
    case 141:  /* unaligned_storesi */
    case 140:  /* unaligned_loadhiu */
    case 139:  /* unaligned_loadhis */
    case 138:  /* unaligned_loadsi */
    case 22:  /* *addsi3_carryin_alt2_geu */
    case 21:  /* *addsi3_carryin_alt2_ltu */
    case 20:  /* *addsi3_carryin_geu */
    case 19:  /* *addsi3_carryin_ltu */
    case 13:  /* *compare_negsi_si */
      extract_constrain_insn_cached (insn);
      if ((which_alternative == 0) && (! (
#line 144 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB2))))
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 3718:  /* *p *sub_shiftsi */
    case 3677:  /* *p extendsidi2 */
    case 3676:  /* *p extendhidi2 */
    case 3675:  /* *p extendqidi2 */
    case 3674:  /* *p zero_extendsidi2 */
    case 3673:  /* *p zero_extendhidi2 */
    case 3672:  /* *p zero_extendqidi2 */
    case 1232:  /* lshrdi3_neon */
    case 1231:  /* ashrdi3_neon */
    case 1226:  /* ashldi3_neon */
    case 1094:  /* orndi3_neon */
    case 998:  /* subdi3_neon */
    case 984:  /* adddi3_neon */
    case 809:  /* *thumb1_movhi_insn */
    case 808:  /* *thumb1_movsi_insn */
    case 807:  /* *thumb1_movdi_insn */
    case 332:  /* arm_rev16si2_alt */
    case 331:  /* arm_rev16si2 */
    case 330:  /* *arm_rev16 */
    case 329:  /* *arm_revsh */
    case 328:  /* *arm_rev */
    case 327:  /* *arm_movtas_ze */
    case 252:  /* *sub_shiftsi_compare0_scratch */
    case 251:  /* *sub_shiftsi_compare0 */
    case 250:  /* *sub_shiftsi */
    case 249:  /* *arith_shiftsi_compare0_scratch */
    case 248:  /* *arith_shiftsi_compare0 */
    case 247:  /* *and_shiftsi */
    case 246:  /* *eor_shiftsi */
    case 245:  /* *orr_shiftsi */
    case 244:  /* *rsb_shiftsi */
    case 243:  /* *add_shiftsi */
    case 242:  /* *and_multsi */
    case 241:  /* *eor_multsi */
    case 240:  /* *orr_multsi */
    case 239:  /* *rsb_multsi */
    case 238:  /* *add_multsi */
    case 198:  /* *cmpsi_shiftsi_swp */
    case 197:  /* *cmpsi_shiftsi */
    case 183:  /* pic_load_addr_unified */
    case 181:  /* *arm_movt */
    case 165:  /* extendsidi2 */
    case 164:  /* extendhidi2 */
    case 163:  /* extendqidi2 */
    case 162:  /* zero_extendsidi2 */
    case 161:  /* zero_extendhidi2 */
    case 160:  /* zero_extendqidi2 */
    case 156:  /* one_cmpldi2 */
    case 146:  /* udivsi3 */
    case 145:  /* divsi3 */
    case 137:  /* *not_shiftsi_compare0_scratch */
    case 136:  /* *not_shiftsi_compare0 */
    case 135:  /* *not_shiftsi */
    case 108:  /* *xordi3_insn */
    case 105:  /* *iorsi3_insn */
    case 102:  /* *iordi3_insn */
    case 79:  /* *anddi3_insn */
    case 4:  /* *arm_addsi3 */
      if (get_attr_arch_enabled (insn) == ARCH_ENABLED_NO)
        {
	  return ENABLED_NO;
        }
      else
        {
	  return ENABLED_YES;
        }

    case 2547:  /* crypto_aesmc */
    case 2548:  /* crypto_aesimc */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if (
#line 38 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/crypto.md"
(arm_fusion_enabled_p (tune_params::FUSE_AES_AESMC)))
	    {
	      return ENABLED_YES;
	    }
	  else
	    {
	      return ENABLED_NO;
	    }
        }
      else
        {
	  return ENABLED_YES;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
      extract_constrain_insn_cached (insn);
      if (get_attr_ce_enabled (insn) == CE_ENABLED_YES)
        {
	  if ((get_attr_predicable_short_it (insn) == PREDICABLE_SHORT_IT_NO) && ((get_attr_predicated (insn) == PREDICATED_YES) && (
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it))))
	    {
	      return ENABLED_NO;
	    }
	  else if ((get_attr_enabled_for_depr_it (insn) == ENABLED_FOR_DEPR_IT_NO) && (
#line 229 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_restrict_it)))
	    {
	      return ENABLED_NO;
	    }
	  else if ((get_attr_use_literal_pool (insn) == USE_LITERAL_POOL_YES) && (
#line 237 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(arm_disable_literal_pool)))
	    {
	      return ENABLED_NO;
	    }
	  else if (get_attr_arch_enabled (insn) == ARCH_ENABLED_NO)
	    {
	      return ENABLED_NO;
	    }
	  else
	    {
	      return ENABLED_YES;
	    }
        }
      else
        {
	  return ENABLED_NO;
        }

    default:
      return ENABLED_YES;

    }
}

enum attr_enabled_for_depr_it
get_attr_enabled_for_depr_it (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  switch (recog_memoized (insn))
    {
    case 865:  /* *thumb2_movsicc_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return ENABLED_FOR_DEPR_IT_YES;
        }
      else if (((1 << which_alternative) & 0x7fc))
        {
	  return ENABLED_FOR_DEPR_IT_NO;
        }
      else
        {
	  return ENABLED_FOR_DEPR_IT_YES;
        }

    case 4078:  /* *p *thumb2_neg_abssi2 */
    case 4077:  /* *p *thumb2_abssi2 */
    case 853:  /* *thumb2_neg_abssi2 */
    case 852:  /* *thumb2_abssi2 */
    case 850:  /* *thumb2_uminsi3 */
    case 849:  /* *thumb32_umaxsi3 */
    case 848:  /* *thumb2_sminsi3 */
    case 847:  /* *thumb2_smaxsi3 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return ENABLED_FOR_DEPR_IT_YES;
        }
      else
        {
	  return ENABLED_FOR_DEPR_IT_NO;
        }

    case 269:  /* movcond_addsi */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return ENABLED_FOR_DEPR_IT_NO;
        }
      else
        {
	  return ENABLED_FOR_DEPR_IT_YES;
        }

    case 201:  /* *arm_cmpdi_unsigned */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return ENABLED_FOR_DEPR_IT_YES;
        }
      else if (which_alternative == 2)
        {
	  return ENABLED_FOR_DEPR_IT_NO;
        }
      else
        {
	  return ENABLED_FOR_DEPR_IT_YES;
        }

    case 296:  /* *if_neg_move */
    case 298:  /* *if_move_neg */
    case 860:  /* *thumb2_mov_scc */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return ENABLED_FOR_DEPR_IT_YES;
        }
      else
        {
	  return ENABLED_FOR_DEPR_IT_NO;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
    default:
      return ENABLED_FOR_DEPR_IT_YES;

    }
}

enum attr_far_jump
get_attr_far_jump (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  int cached_length ATTRIBUTE_UNUSED;

  switch (recog_memoized (insn))
    {
    case 823:  /* *cbranchne_decr1 */
      extract_constrain_insn_cached (insn);
      if ((((
#line 1377 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/thumb1.md"
(which_alternative)) == (0)) && ((cached_length = get_attr_length (insn)) == 8)) || ((cached_length = get_attr_length (insn)) == 10 /* 0xa */))
        {
	  return FAR_JUMP_YES;
        }
      else
        {
	  return FAR_JUMP_NO;
        }

    case 824:  /* *addsi3_cbranch */
      extract_constrain_insn_cached (insn);
      if ((((
#line 1479 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/thumb1.md"
(which_alternative)) < (2)) && ((cached_length = get_attr_length (insn)) == 8)) || ((cached_length = get_attr_length (insn)) == 10 /* 0xa */))
        {
	  return FAR_JUMP_YES;
        }
      else
        {
	  return FAR_JUMP_NO;
        }

    case 816:  /* thumb1_cbz */
    case 817:  /* cbranchsi4_insn */
    case 818:  /* cbranchsi4_scratch */
    case 819:  /* *negated_cbranchsi4 */
    case 820:  /* *tbit_cbranch */
    case 821:  /* *tlobits_cbranch */
    case 822:  /* *tstsi3_cbranch */
    case 825:  /* *addsi3_cbranch_scratch */
      if (get_attr_length (insn) == 8)
        {
	  return FAR_JUMP_YES;
        }
      else
        {
	  return FAR_JUMP_NO;
        }

    case 832:  /* *thumb_jump */
      if (get_attr_length (insn) == 4)
        {
	  return FAR_JUMP_YES;
        }
      else
        {
	  return FAR_JUMP_NO;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
    default:
      return FAR_JUMP_NO;

    }
}

enum attr_fp
get_attr_fp (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  switch (recog_memoized (insn))
    {
    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
    default:
      return FP_NO;

    }
}

enum attr_is_neon_type
get_attr_is_neon_type (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  enum attr_type cached_type ATTRIBUTE_UNUSED;

  switch (recog_memoized (insn))
    {
    case 1556:  /* neon_vcltv8hf_fp16insn */
    case 1555:  /* neon_vclev8hf_fp16insn */
    case 1554:  /* neon_vcgev8hf_fp16insn */
    case 1553:  /* neon_vcgtv8hf_fp16insn */
    case 1552:  /* neon_vceqv8hf_fp16insn */
    case 1541:  /* neon_vcltv4sf_insn */
    case 1540:  /* neon_vclev4sf_insn */
    case 1539:  /* neon_vcgev4sf_insn */
    case 1538:  /* neon_vcgtv4sf_insn */
    case 1537:  /* neon_vceqv4sf_insn */
    case 1531:  /* neon_vcltv4si_insn */
    case 1530:  /* neon_vclev4si_insn */
    case 1529:  /* neon_vcgev4si_insn */
    case 1528:  /* neon_vcgtv4si_insn */
    case 1527:  /* neon_vceqv4si_insn */
    case 1521:  /* neon_vcltv8hi_insn */
    case 1520:  /* neon_vclev8hi_insn */
    case 1519:  /* neon_vcgev8hi_insn */
    case 1518:  /* neon_vcgtv8hi_insn */
    case 1517:  /* neon_vceqv8hi_insn */
    case 1511:  /* neon_vcltv16qi_insn */
    case 1510:  /* neon_vclev16qi_insn */
    case 1509:  /* neon_vcgev16qi_insn */
    case 1508:  /* neon_vcgtv16qi_insn */
    case 1507:  /* neon_vceqv16qi_insn */
      if (((cached_type = get_attr_type (insn)) == TYPE_NEON_COMPARE_Q) || (cached_type == TYPE_NEON_COMPARE_ZERO_Q))
        {
	  return IS_NEON_TYPE_YES;
        }
      else
        {
	  return IS_NEON_TYPE_NO;
        }

    case 1561:  /* neon_vcltv4hf_fp16insn */
    case 1560:  /* neon_vclev4hf_fp16insn */
    case 1559:  /* neon_vcgev4hf_fp16insn */
    case 1558:  /* neon_vcgtv4hf_fp16insn */
    case 1557:  /* neon_vceqv4hf_fp16insn */
    case 1536:  /* neon_vcltv2sf_insn */
    case 1535:  /* neon_vclev2sf_insn */
    case 1534:  /* neon_vcgev2sf_insn */
    case 1533:  /* neon_vcgtv2sf_insn */
    case 1532:  /* neon_vceqv2sf_insn */
    case 1526:  /* neon_vcltv2si_insn */
    case 1525:  /* neon_vclev2si_insn */
    case 1524:  /* neon_vcgev2si_insn */
    case 1523:  /* neon_vcgtv2si_insn */
    case 1522:  /* neon_vceqv2si_insn */
    case 1516:  /* neon_vcltv4hi_insn */
    case 1515:  /* neon_vclev4hi_insn */
    case 1514:  /* neon_vcgev4hi_insn */
    case 1513:  /* neon_vcgtv4hi_insn */
    case 1512:  /* neon_vceqv4hi_insn */
    case 1506:  /* neon_vcltv8qi_insn */
    case 1505:  /* neon_vclev8qi_insn */
    case 1504:  /* neon_vcgev8qi_insn */
    case 1503:  /* neon_vcgtv8qi_insn */
    case 1502:  /* neon_vceqv8qi_insn */
      if (((cached_type = get_attr_type (insn)) == TYPE_NEON_COMPARE) || (cached_type == TYPE_NEON_COMPARE_ZERO))
        {
	  return IS_NEON_TYPE_YES;
        }
      else
        {
	  return IS_NEON_TYPE_NO;
        }

    case 1106:  /* bicdi3_neon */
    case 1094:  /* orndi3_neon */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return IS_NEON_TYPE_YES;
        }
      else
        {
	  return IS_NEON_TYPE_NO;
        }

    case 998:  /* subdi3_neon */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0xe))
        {
	  return IS_NEON_TYPE_YES;
        }
      else
        {
	  return IS_NEON_TYPE_NO;
        }

    case 984:  /* adddi3_neon */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x9))
        {
	  return IS_NEON_TYPE_YES;
        }
      else
        {
	  return IS_NEON_TYPE_NO;
        }

    case 920:  /* *neon_movti */
    case 919:  /* *neon_movv2di */
    case 918:  /* *neon_movv4sf */
    case 917:  /* *neon_movv4si */
    case 916:  /* *neon_movv8hf */
    case 915:  /* *neon_movv8hi */
    case 914:  /* *neon_movv16qi */
    case 913:  /* *neon_movdi */
    case 912:  /* *neon_movv2sf */
    case 911:  /* *neon_movv2si */
    case 910:  /* *neon_movv4hf */
    case 909:  /* *neon_movv4hi */
    case 908:  /* *neon_movv8qi */
      extract_constrain_insn_cached (insn);
      if (which_alternative != 6)
        {
	  return IS_NEON_TYPE_YES;
        }
      else
        {
	  return IS_NEON_TYPE_NO;
        }

    case 4014:  /* *p *movdf_vfp */
    case 640:  /* *thumb2_movdf_vfp */
    case 639:  /* *movdf_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 3)
        {
	  return IS_NEON_TYPE_YES;
        }
      else
        {
	  return IS_NEON_TYPE_NO;
        }

    case 635:  /* *movhf_vfp_neon */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return IS_NEON_TYPE_YES;
        }
      else
        {
	  return IS_NEON_TYPE_NO;
        }

    case 4011:  /* *p *movhf_vfp_fp16 */
    case 634:  /* *movhf_vfp_fp16 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x180))
        {
	  return IS_NEON_TYPE_YES;
        }
      else
        {
	  return IS_NEON_TYPE_NO;
        }

    case 3670:  /* *p one_cmpldi2 */
    case 156:  /* one_cmpldi2 */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0x6))
        {
	  return IS_NEON_TYPE_YES;
        }
      else
        {
	  return IS_NEON_TYPE_NO;
        }

    case 108:  /* *xordi3_insn */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0x1e))
        {
	  return IS_NEON_TYPE_YES;
        }
      else
        {
	  return IS_NEON_TYPE_NO;
        }

    case 102:  /* *iordi3_insn */
    case 79:  /* *anddi3_insn */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0x3c))
        {
	  return IS_NEON_TYPE_YES;
        }
      else
        {
	  return IS_NEON_TYPE_NO;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
      if (((cached_type = get_attr_type (insn)) == TYPE_NEON_ADD) || ((cached_type == TYPE_NEON_ADD_Q) || ((cached_type == TYPE_NEON_ADD_WIDEN) || ((cached_type == TYPE_NEON_ADD_LONG) || ((cached_type == TYPE_NEON_QADD) || ((cached_type == TYPE_NEON_QADD_Q) || ((cached_type == TYPE_NEON_ADD_HALVE) || ((cached_type == TYPE_NEON_ADD_HALVE_Q) || ((cached_type == TYPE_NEON_ADD_HALVE_NARROW_Q) || ((cached_type == TYPE_NEON_SUB) || ((cached_type == TYPE_NEON_SUB_Q) || ((cached_type == TYPE_NEON_SUB_WIDEN) || ((cached_type == TYPE_NEON_SUB_LONG) || ((cached_type == TYPE_NEON_QSUB) || ((cached_type == TYPE_NEON_QSUB_Q) || ((cached_type == TYPE_NEON_SUB_HALVE) || ((cached_type == TYPE_NEON_SUB_HALVE_Q) || ((cached_type == TYPE_NEON_SUB_HALVE_NARROW_Q) || ((cached_type == TYPE_NEON_ABS) || ((cached_type == TYPE_NEON_ABS_Q) || ((cached_type == TYPE_NEON_NEG) || ((cached_type == TYPE_NEON_NEG_Q) || ((cached_type == TYPE_NEON_QNEG) || ((cached_type == TYPE_NEON_QNEG_Q) || ((cached_type == TYPE_NEON_QABS) || ((cached_type == TYPE_NEON_QABS_Q) || ((cached_type == TYPE_NEON_ABD) || ((cached_type == TYPE_NEON_ABD_Q) || ((cached_type == TYPE_NEON_ABD_LONG) || ((cached_type == TYPE_NEON_MINMAX) || ((cached_type == TYPE_NEON_MINMAX_Q) || ((cached_type == TYPE_NEON_COMPARE) || ((cached_type == TYPE_NEON_COMPARE_Q) || ((cached_type == TYPE_NEON_COMPARE_ZERO) || ((cached_type == TYPE_NEON_COMPARE_ZERO_Q) || ((cached_type == TYPE_NEON_ARITH_ACC) || ((cached_type == TYPE_NEON_ARITH_ACC_Q) || ((cached_type == TYPE_NEON_REDUC_ADD) || ((cached_type == TYPE_NEON_REDUC_ADD_Q) || ((cached_type == TYPE_NEON_REDUC_ADD_LONG) || ((cached_type == TYPE_NEON_REDUC_ADD_ACC) || ((cached_type == TYPE_NEON_REDUC_ADD_ACC_Q) || ((cached_type == TYPE_NEON_REDUC_MINMAX) || ((cached_type == TYPE_NEON_REDUC_MINMAX_Q) || ((cached_type == TYPE_NEON_LOGIC) || ((cached_type == TYPE_NEON_LOGIC_Q) || ((cached_type == TYPE_NEON_TST) || ((cached_type == TYPE_NEON_TST_Q) || ((cached_type == TYPE_NEON_SHIFT_IMM) || ((cached_type == TYPE_NEON_SHIFT_IMM_Q) || ((cached_type == TYPE_NEON_SHIFT_IMM_NARROW_Q) || ((cached_type == TYPE_NEON_SHIFT_IMM_LONG) || ((cached_type == TYPE_NEON_SHIFT_REG) || ((cached_type == TYPE_NEON_SHIFT_REG_Q) || ((cached_type == TYPE_NEON_SHIFT_ACC) || ((cached_type == TYPE_NEON_SHIFT_ACC_Q) || ((cached_type == TYPE_NEON_SAT_SHIFT_IMM) || ((cached_type == TYPE_NEON_SAT_SHIFT_IMM_Q) || ((cached_type == TYPE_NEON_SAT_SHIFT_IMM_NARROW_Q) || ((cached_type == TYPE_NEON_SAT_SHIFT_REG) || ((cached_type == TYPE_NEON_SAT_SHIFT_REG_Q) || ((cached_type == TYPE_NEON_INS) || ((cached_type == TYPE_NEON_INS_Q) || ((cached_type == TYPE_NEON_MOVE) || ((cached_type == TYPE_NEON_MOVE_Q) || ((cached_type == TYPE_NEON_MOVE_NARROW_Q) || ((cached_type == TYPE_NEON_PERMUTE) || ((cached_type == TYPE_NEON_PERMUTE_Q) || ((cached_type == TYPE_NEON_ZIP) || ((cached_type == TYPE_NEON_ZIP_Q) || ((cached_type == TYPE_NEON_TBL1) || ((cached_type == TYPE_NEON_TBL1_Q) || ((cached_type == TYPE_NEON_TBL2) || ((cached_type == TYPE_NEON_TBL2_Q) || ((cached_type == TYPE_NEON_TBL3) || ((cached_type == TYPE_NEON_TBL3_Q) || ((cached_type == TYPE_NEON_TBL4) || ((cached_type == TYPE_NEON_TBL4_Q) || ((cached_type == TYPE_NEON_BSL) || ((cached_type == TYPE_NEON_BSL_Q) || ((cached_type == TYPE_NEON_CLS) || ((cached_type == TYPE_NEON_CLS_Q) || ((cached_type == TYPE_NEON_CNT) || ((cached_type == TYPE_NEON_CNT_Q) || ((cached_type == TYPE_NEON_DUP) || ((cached_type == TYPE_NEON_DUP_Q) || ((cached_type == TYPE_NEON_EXT) || ((cached_type == TYPE_NEON_EXT_Q) || ((cached_type == TYPE_NEON_RBIT) || ((cached_type == TYPE_NEON_RBIT_Q) || ((cached_type == TYPE_NEON_REV) || ((cached_type == TYPE_NEON_REV_Q) || ((cached_type == TYPE_NEON_MUL_B) || ((cached_type == TYPE_NEON_MUL_B_Q) || ((cached_type == TYPE_NEON_MUL_H) || ((cached_type == TYPE_NEON_MUL_H_Q) || ((cached_type == TYPE_NEON_MUL_S) || ((cached_type == TYPE_NEON_MUL_S_Q) || ((cached_type == TYPE_NEON_MUL_B_LONG) || ((cached_type == TYPE_NEON_MUL_H_LONG) || ((cached_type == TYPE_NEON_MUL_S_LONG) || ((cached_type == TYPE_NEON_MUL_D_LONG) || ((cached_type == TYPE_NEON_MUL_H_SCALAR) || ((cached_type == TYPE_NEON_MUL_H_SCALAR_Q) || ((cached_type == TYPE_NEON_MUL_S_SCALAR) || ((cached_type == TYPE_NEON_MUL_S_SCALAR_Q) || ((cached_type == TYPE_NEON_MUL_H_SCALAR_LONG) || ((cached_type == TYPE_NEON_MUL_S_SCALAR_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_B) || ((cached_type == TYPE_NEON_SAT_MUL_B_Q) || ((cached_type == TYPE_NEON_SAT_MUL_H) || ((cached_type == TYPE_NEON_SAT_MUL_H_Q) || ((cached_type == TYPE_NEON_SAT_MUL_S) || ((cached_type == TYPE_NEON_SAT_MUL_S_Q) || ((cached_type == TYPE_NEON_SAT_MUL_B_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_H_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_S_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_H_SCALAR) || ((cached_type == TYPE_NEON_SAT_MUL_H_SCALAR_Q) || ((cached_type == TYPE_NEON_SAT_MUL_S_SCALAR) || ((cached_type == TYPE_NEON_SAT_MUL_S_SCALAR_Q) || ((cached_type == TYPE_NEON_SAT_MUL_H_SCALAR_LONG) || ((cached_type == TYPE_NEON_SAT_MUL_S_SCALAR_LONG) || ((cached_type == TYPE_NEON_MLA_B) || ((cached_type == TYPE_NEON_MLA_B_Q) || ((cached_type == TYPE_NEON_MLA_H) || ((cached_type == TYPE_NEON_MLA_H_Q) || ((cached_type == TYPE_NEON_MLA_S) || ((cached_type == TYPE_NEON_MLA_S_Q) || ((cached_type == TYPE_NEON_MLA_B_LONG) || ((cached_type == TYPE_NEON_MLA_H_LONG) || ((cached_type == TYPE_NEON_MLA_S_LONG) || ((cached_type == TYPE_NEON_MLA_H_SCALAR) || ((cached_type == TYPE_NEON_MLA_H_SCALAR_Q) || ((cached_type == TYPE_NEON_MLA_S_SCALAR) || ((cached_type == TYPE_NEON_MLA_S_SCALAR_Q) || ((cached_type == TYPE_NEON_MLA_H_SCALAR_LONG) || ((cached_type == TYPE_NEON_MLA_S_SCALAR_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_B_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_H_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_S_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_H_SCALAR_LONG) || ((cached_type == TYPE_NEON_SAT_MLA_S_SCALAR_LONG) || ((cached_type == TYPE_NEON_TO_GP) || ((cached_type == TYPE_NEON_TO_GP_Q) || ((cached_type == TYPE_NEON_FROM_GP) || ((cached_type == TYPE_NEON_FROM_GP_Q) || ((cached_type == TYPE_NEON_LDR) || ((cached_type == TYPE_NEON_LDP) || ((cached_type == TYPE_NEON_LDP_Q) || ((cached_type == TYPE_NEON_LOAD1_1REG) || ((cached_type == TYPE_NEON_LOAD1_1REG_Q) || ((cached_type == TYPE_NEON_LOAD1_2REG) || ((cached_type == TYPE_NEON_LOAD1_2REG_Q) || ((cached_type == TYPE_NEON_LOAD1_3REG) || ((cached_type == TYPE_NEON_LOAD1_3REG_Q) || ((cached_type == TYPE_NEON_LOAD1_4REG) || ((cached_type == TYPE_NEON_LOAD1_4REG_Q) || ((cached_type == TYPE_NEON_LOAD1_ALL_LANES) || ((cached_type == TYPE_NEON_LOAD1_ALL_LANES_Q) || ((cached_type == TYPE_NEON_LOAD1_ONE_LANE) || ((cached_type == TYPE_NEON_LOAD1_ONE_LANE_Q) || ((cached_type == TYPE_NEON_LOAD2_2REG) || ((cached_type == TYPE_NEON_LOAD2_2REG_Q) || ((cached_type == TYPE_NEON_LOAD2_4REG) || ((cached_type == TYPE_NEON_LOAD2_4REG_Q) || ((cached_type == TYPE_NEON_LOAD2_ALL_LANES) || ((cached_type == TYPE_NEON_LOAD2_ALL_LANES_Q) || ((cached_type == TYPE_NEON_LOAD2_ONE_LANE) || ((cached_type == TYPE_NEON_LOAD2_ONE_LANE_Q) || ((cached_type == TYPE_NEON_LOAD3_3REG) || ((cached_type == TYPE_NEON_LOAD3_3REG_Q) || ((cached_type == TYPE_NEON_LOAD3_ALL_LANES) || ((cached_type == TYPE_NEON_LOAD3_ALL_LANES_Q) || ((cached_type == TYPE_NEON_LOAD3_ONE_LANE) || ((cached_type == TYPE_NEON_LOAD3_ONE_LANE_Q) || ((cached_type == TYPE_NEON_LOAD4_4REG) || ((cached_type == TYPE_NEON_LOAD4_4REG_Q) || ((cached_type == TYPE_NEON_LOAD4_ALL_LANES) || ((cached_type == TYPE_NEON_LOAD4_ALL_LANES_Q) || ((cached_type == TYPE_NEON_LOAD4_ONE_LANE) || ((cached_type == TYPE_NEON_LOAD4_ONE_LANE_Q) || ((cached_type == TYPE_NEON_STR) || ((cached_type == TYPE_NEON_STP) || ((cached_type == TYPE_NEON_STP_Q) || ((cached_type == TYPE_NEON_STORE1_1REG) || ((cached_type == TYPE_NEON_STORE1_1REG_Q) || ((cached_type == TYPE_NEON_STORE1_2REG) || ((cached_type == TYPE_NEON_STORE1_2REG_Q) || ((cached_type == TYPE_NEON_STORE1_3REG) || ((cached_type == TYPE_NEON_STORE1_3REG_Q) || ((cached_type == TYPE_NEON_STORE1_4REG) || ((cached_type == TYPE_NEON_STORE1_4REG_Q) || ((cached_type == TYPE_NEON_STORE1_ONE_LANE) || ((cached_type == TYPE_NEON_STORE1_ONE_LANE_Q) || ((cached_type == TYPE_NEON_STORE2_2REG) || ((cached_type == TYPE_NEON_STORE2_2REG_Q) || ((cached_type == TYPE_NEON_STORE2_4REG) || ((cached_type == TYPE_NEON_STORE2_4REG_Q) || ((cached_type == TYPE_NEON_STORE2_ONE_LANE) || ((cached_type == TYPE_NEON_STORE2_ONE_LANE_Q) || ((cached_type == TYPE_NEON_STORE3_3REG) || ((cached_type == TYPE_NEON_STORE3_3REG_Q) || ((cached_type == TYPE_NEON_STORE3_ONE_LANE) || ((cached_type == TYPE_NEON_STORE3_ONE_LANE_Q) || ((cached_type == TYPE_NEON_STORE4_4REG) || ((cached_type == TYPE_NEON_STORE4_4REG_Q) || ((cached_type == TYPE_NEON_STORE4_ONE_LANE) || ((cached_type == TYPE_NEON_STORE4_ONE_LANE_Q) || ((cached_type == TYPE_NEON_FP_ABD_S) || ((cached_type == TYPE_NEON_FP_ABD_S_Q) || ((cached_type == TYPE_NEON_FP_ABD_D) || ((cached_type == TYPE_NEON_FP_ABD_D_Q) || ((cached_type == TYPE_NEON_FP_ABS_S) || ((cached_type == TYPE_NEON_FP_ABS_S_Q) || ((cached_type == TYPE_NEON_FP_ABS_D) || ((cached_type == TYPE_NEON_FP_ABS_D_Q) || ((cached_type == TYPE_NEON_FP_ADDSUB_S) || ((cached_type == TYPE_NEON_FP_ADDSUB_S_Q) || ((cached_type == TYPE_NEON_FP_ADDSUB_D) || ((cached_type == TYPE_NEON_FP_ADDSUB_D_Q) || ((cached_type == TYPE_NEON_FP_COMPARE_S) || ((cached_type == TYPE_NEON_FP_COMPARE_S_Q) || ((cached_type == TYPE_NEON_FP_COMPARE_D) || ((cached_type == TYPE_NEON_FP_COMPARE_D_Q) || ((cached_type == TYPE_NEON_FP_MINMAX_S) || ((cached_type == TYPE_NEON_FP_MINMAX_S_Q) || ((cached_type == TYPE_NEON_FP_MINMAX_D) || ((cached_type == TYPE_NEON_FP_MINMAX_D_Q) || ((cached_type == TYPE_NEON_FP_NEG_S) || ((cached_type == TYPE_NEON_FP_NEG_S_Q) || ((cached_type == TYPE_NEON_FP_NEG_D) || ((cached_type == TYPE_NEON_FP_NEG_D_Q) || ((cached_type == TYPE_NEON_FP_REDUC_ADD_S) || ((cached_type == TYPE_NEON_FP_REDUC_ADD_S_Q) || ((cached_type == TYPE_NEON_FP_REDUC_ADD_D) || ((cached_type == TYPE_NEON_FP_REDUC_ADD_D_Q) || ((cached_type == TYPE_NEON_FP_REDUC_MINMAX_S) || ((cached_type == TYPE_NEON_FP_REDUC_MINMAX_S_Q) || ((cached_type == TYPE_NEON_FP_REDUC_MINMAX_D) || ((cached_type == TYPE_NEON_FP_REDUC_MINMAX_D_Q) || ((cached_type == TYPE_NEON_FP_CVT_NARROW_S_Q) || ((cached_type == TYPE_NEON_FP_CVT_NARROW_D_Q) || ((cached_type == TYPE_NEON_FP_CVT_WIDEN_H) || ((cached_type == TYPE_NEON_FP_CVT_WIDEN_S) || ((cached_type == TYPE_NEON_FP_TO_INT_S) || ((cached_type == TYPE_NEON_FP_TO_INT_S_Q) || ((cached_type == TYPE_NEON_INT_TO_FP_S) || ((cached_type == TYPE_NEON_INT_TO_FP_S_Q) || ((cached_type == TYPE_NEON_FP_TO_INT_D) || ((cached_type == TYPE_NEON_FP_TO_INT_D_Q) || ((cached_type == TYPE_NEON_INT_TO_FP_D) || ((cached_type == TYPE_NEON_INT_TO_FP_D_Q) || ((cached_type == TYPE_NEON_FP_ROUND_S) || ((cached_type == TYPE_NEON_FP_ROUND_S_Q) || ((cached_type == TYPE_NEON_FP_RECPE_S) || ((cached_type == TYPE_NEON_FP_RECPE_S_Q) || ((cached_type == TYPE_NEON_FP_RECPE_D) || ((cached_type == TYPE_NEON_FP_RECPE_D_Q) || ((cached_type == TYPE_NEON_FP_RECPS_S) || ((cached_type == TYPE_NEON_FP_RECPS_S_Q) || ((cached_type == TYPE_NEON_FP_RECPS_D) || ((cached_type == TYPE_NEON_FP_RECPS_D_Q) || ((cached_type == TYPE_NEON_FP_RECPX_S) || ((cached_type == TYPE_NEON_FP_RECPX_S_Q) || ((cached_type == TYPE_NEON_FP_RECPX_D) || ((cached_type == TYPE_NEON_FP_RECPX_D_Q) || ((cached_type == TYPE_NEON_FP_RSQRTE_S) || ((cached_type == TYPE_NEON_FP_RSQRTE_S_Q) || ((cached_type == TYPE_NEON_FP_RSQRTE_D) || ((cached_type == TYPE_NEON_FP_RSQRTE_D_Q) || ((cached_type == TYPE_NEON_FP_RSQRTS_S) || ((cached_type == TYPE_NEON_FP_RSQRTS_S_Q) || ((cached_type == TYPE_NEON_FP_RSQRTS_D) || ((cached_type == TYPE_NEON_FP_RSQRTS_D_Q) || ((cached_type == TYPE_NEON_FP_MUL_S) || ((cached_type == TYPE_NEON_FP_MUL_S_Q) || ((cached_type == TYPE_NEON_FP_MUL_S_SCALAR) || ((cached_type == TYPE_NEON_FP_MUL_S_SCALAR_Q) || ((cached_type == TYPE_NEON_FP_MUL_D) || ((cached_type == TYPE_NEON_FP_MUL_D_Q) || ((cached_type == TYPE_NEON_FP_MUL_D_SCALAR_Q) || ((cached_type == TYPE_NEON_FP_MLA_S) || ((cached_type == TYPE_NEON_FP_MLA_S_Q) || ((cached_type == TYPE_NEON_FP_MLA_S_SCALAR) || ((cached_type == TYPE_NEON_FP_MLA_S_SCALAR_Q) || ((cached_type == TYPE_NEON_FP_MLA_D) || ((cached_type == TYPE_NEON_FP_MLA_D_Q) || ((cached_type == TYPE_NEON_FP_MLA_D_SCALAR_Q) || ((cached_type == TYPE_NEON_FP_SQRT_S) || ((cached_type == TYPE_NEON_FP_SQRT_S_Q) || ((cached_type == TYPE_NEON_FP_SQRT_D) || ((cached_type == TYPE_NEON_FP_SQRT_D_Q) || ((cached_type == TYPE_NEON_FP_DIV_S) || ((cached_type == TYPE_NEON_FP_DIV_S_Q) || ((cached_type == TYPE_NEON_FP_DIV_D) || ((cached_type == TYPE_NEON_FP_DIV_D_Q) || ((cached_type == TYPE_CRYPTO_AESE) || ((cached_type == TYPE_CRYPTO_AESMC) || ((cached_type == TYPE_CRYPTO_SHA1_XOR) || ((cached_type == TYPE_CRYPTO_SHA1_FAST) || ((cached_type == TYPE_CRYPTO_SHA1_SLOW) || ((cached_type == TYPE_CRYPTO_SHA256_FAST) || (cached_type == TYPE_CRYPTO_SHA256_SLOW))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
        {
	  return IS_NEON_TYPE_YES;
        }
      else
        {
	  return IS_NEON_TYPE_NO;
        }

    case 2561:  /* crypto_sha1p */
    case 2560:  /* crypto_sha1m */
    case 2559:  /* crypto_sha1c */
    case 2558:  /* crypto_vmullp64 */
    case 2557:  /* crypto_sha1h */
    case 2556:  /* crypto_sha256su1 */
    case 2555:  /* crypto_sha256h2 */
    case 2554:  /* crypto_sha256h */
    case 2553:  /* crypto_sha1su0 */
    case 2552:  /* crypto_sha256su0 */
    case 2551:  /* crypto_sha1su1 */
    case 2550:  /* crypto_aese */
    case 2549:  /* crypto_aesd */
    case 2548:  /* crypto_aesimc */
    case 2547:  /* crypto_aesmc */
    case 2546:  /* neon_vabdv2di_3 */
    case 2545:  /* neon_vabdv4sf_3 */
    case 2544:  /* neon_vabdv2sf_3 */
    case 2543:  /* neon_vabdv8hf_3 */
    case 2542:  /* neon_vabdv4hf_3 */
    case 2541:  /* neon_vabdv4si_3 */
    case 2540:  /* neon_vabdv2si_3 */
    case 2539:  /* neon_vabdv8hi_3 */
    case 2538:  /* neon_vabdv4hi_3 */
    case 2537:  /* neon_vabdv16qi_3 */
    case 2536:  /* neon_vabdv8qi_3 */
    case 2535:  /* neon_vabdv2di_2 */
    case 2534:  /* neon_vabdv4sf_2 */
    case 2533:  /* neon_vabdv2sf_2 */
    case 2532:  /* neon_vabdv8hf_2 */
    case 2531:  /* neon_vabdv4hf_2 */
    case 2530:  /* neon_vabdv4si_2 */
    case 2529:  /* neon_vabdv2si_2 */
    case 2528:  /* neon_vabdv8hi_2 */
    case 2527:  /* neon_vabdv4hi_2 */
    case 2526:  /* neon_vabdv16qi_2 */
    case 2525:  /* neon_vabdv8qi_2 */
    case 2524:  /* neon_vec_pack_trunc_v2di */
    case 2523:  /* neon_vec_pack_trunc_v4si */
    case 2522:  /* neon_vec_pack_trunc_v8hi */
    case 2518:  /* neon_vec_umult_v2si */
    case 2517:  /* neon_vec_smult_v2si */
    case 2516:  /* neon_vec_umult_v4hi */
    case 2515:  /* neon_vec_smult_v4hi */
    case 2514:  /* neon_vec_umult_v8qi */
    case 2513:  /* neon_vec_smult_v8qi */
    case 2512:  /* neon_unpacku_v2si */
    case 2511:  /* neon_unpacks_v2si */
    case 2510:  /* neon_unpacku_v4hi */
    case 2509:  /* neon_unpacks_v4hi */
    case 2508:  /* neon_unpacku_v8qi */
    case 2507:  /* neon_unpacks_v8qi */
    case 2506:  /* neon_vec_ushiftl_v2si */
    case 2505:  /* neon_vec_sshiftl_v2si */
    case 2504:  /* neon_vec_ushiftl_v4hi */
    case 2503:  /* neon_vec_sshiftl_v4hi */
    case 2502:  /* neon_vec_ushiftl_v8qi */
    case 2501:  /* neon_vec_sshiftl_v8qi */
    case 2500:  /* neon_vec_umult_hi_v4si */
    case 2499:  /* neon_vec_smult_hi_v4si */
    case 2498:  /* neon_vec_umult_hi_v8hi */
    case 2497:  /* neon_vec_smult_hi_v8hi */
    case 2496:  /* neon_vec_umult_hi_v16qi */
    case 2495:  /* neon_vec_smult_hi_v16qi */
    case 2494:  /* neon_vec_umult_lo_v4si */
    case 2493:  /* neon_vec_smult_lo_v4si */
    case 2492:  /* neon_vec_umult_lo_v8hi */
    case 2491:  /* neon_vec_smult_lo_v8hi */
    case 2490:  /* neon_vec_umult_lo_v16qi */
    case 2489:  /* neon_vec_smult_lo_v16qi */
    case 2488:  /* neon_vec_unpacku_hi_v4si */
    case 2487:  /* neon_vec_unpacks_hi_v4si */
    case 2486:  /* neon_vec_unpacku_hi_v8hi */
    case 2485:  /* neon_vec_unpacks_hi_v8hi */
    case 2484:  /* neon_vec_unpacku_hi_v16qi */
    case 2483:  /* neon_vec_unpacks_hi_v16qi */
    case 2482:  /* neon_vec_unpacku_lo_v4si */
    case 2481:  /* neon_vec_unpacks_lo_v4si */
    case 2480:  /* neon_vec_unpacku_lo_v8hi */
    case 2479:  /* neon_vec_unpacks_lo_v8hi */
    case 2478:  /* neon_vec_unpacku_lo_v16qi */
    case 2477:  /* neon_vec_unpacks_lo_v16qi */
    case 2476:  /* neon_vst4_lanev4sf */
    case 2475:  /* neon_vst4_lanev4si */
    case 2474:  /* neon_vst4_lanev8hf */
    case 2473:  /* neon_vst4_lanev8hi */
    case 2472:  /* neon_vst4_lanev2sf */
    case 2471:  /* neon_vst4_lanev2si */
    case 2470:  /* neon_vst4_lanev4hf */
    case 2469:  /* neon_vst4_lanev4hi */
    case 2468:  /* neon_vst4_lanev8qi */
    case 2467:  /* neon_vst4qbv4sf */
    case 2466:  /* neon_vst4qbv4si */
    case 2465:  /* neon_vst4qbv8hf */
    case 2464:  /* neon_vst4qbv8hi */
    case 2463:  /* neon_vst4qbv16qi */
    case 2462:  /* neon_vst4qav4sf */
    case 2461:  /* neon_vst4qav4si */
    case 2460:  /* neon_vst4qav8hf */
    case 2459:  /* neon_vst4qav8hi */
    case 2458:  /* neon_vst4qav16qi */
    case 2457:  /* neon_vst4di */
    case 2456:  /* neon_vst4v2sf */
    case 2455:  /* neon_vst4v2si */
    case 2454:  /* neon_vst4v4hf */
    case 2453:  /* neon_vst4v4hi */
    case 2452:  /* neon_vst4v8qi */
    case 2451:  /* neon_vld4_dupdi */
    case 2450:  /* neon_vld4_dupv2sf */
    case 2449:  /* neon_vld4_dupv2si */
    case 2448:  /* neon_vld4_dupv4hf */
    case 2447:  /* neon_vld4_dupv4hi */
    case 2446:  /* neon_vld4_dupv8qi */
    case 2445:  /* neon_vld4_lanev4sf */
    case 2444:  /* neon_vld4_lanev4si */
    case 2443:  /* neon_vld4_lanev8hf */
    case 2442:  /* neon_vld4_lanev8hi */
    case 2441:  /* neon_vld4_lanev2sf */
    case 2440:  /* neon_vld4_lanev2si */
    case 2439:  /* neon_vld4_lanev4hf */
    case 2438:  /* neon_vld4_lanev4hi */
    case 2437:  /* neon_vld4_lanev8qi */
    case 2436:  /* neon_vld4qbv4sf */
    case 2435:  /* neon_vld4qbv4si */
    case 2434:  /* neon_vld4qbv8hf */
    case 2433:  /* neon_vld4qbv8hi */
    case 2432:  /* neon_vld4qbv16qi */
    case 2431:  /* neon_vld4qav4sf */
    case 2430:  /* neon_vld4qav4si */
    case 2429:  /* neon_vld4qav8hf */
    case 2428:  /* neon_vld4qav8hi */
    case 2427:  /* neon_vld4qav16qi */
    case 2426:  /* neon_vld4di */
    case 2425:  /* neon_vld4v2sf */
    case 2424:  /* neon_vld4v2si */
    case 2423:  /* neon_vld4v4hf */
    case 2422:  /* neon_vld4v4hi */
    case 2421:  /* neon_vld4v8qi */
    case 2420:  /* neon_vst3_lanev4sf */
    case 2419:  /* neon_vst3_lanev4si */
    case 2418:  /* neon_vst3_lanev8hf */
    case 2417:  /* neon_vst3_lanev8hi */
    case 2416:  /* neon_vst3_lanev2sf */
    case 2415:  /* neon_vst3_lanev2si */
    case 2414:  /* neon_vst3_lanev4hf */
    case 2413:  /* neon_vst3_lanev4hi */
    case 2412:  /* neon_vst3_lanev8qi */
    case 2411:  /* neon_vst3qbv4sf */
    case 2410:  /* neon_vst3qbv4si */
    case 2409:  /* neon_vst3qbv8hf */
    case 2408:  /* neon_vst3qbv8hi */
    case 2407:  /* neon_vst3qbv16qi */
    case 2406:  /* neon_vst3qav4sf */
    case 2405:  /* neon_vst3qav4si */
    case 2404:  /* neon_vst3qav8hf */
    case 2403:  /* neon_vst3qav8hi */
    case 2402:  /* neon_vst3qav16qi */
    case 2401:  /* neon_vst3di */
    case 2400:  /* neon_vst3v2sf */
    case 2399:  /* neon_vst3v2si */
    case 2398:  /* neon_vst3v4hf */
    case 2397:  /* neon_vst3v4hi */
    case 2396:  /* neon_vst3v8qi */
    case 2395:  /* neon_vld3_dupdi */
    case 2394:  /* neon_vld3_dupv2sf */
    case 2393:  /* neon_vld3_dupv2si */
    case 2392:  /* neon_vld3_dupv4hf */
    case 2391:  /* neon_vld3_dupv4hi */
    case 2390:  /* neon_vld3_dupv8qi */
    case 2389:  /* neon_vld3_lanev4sf */
    case 2388:  /* neon_vld3_lanev4si */
    case 2387:  /* neon_vld3_lanev8hf */
    case 2386:  /* neon_vld3_lanev8hi */
    case 2385:  /* neon_vld3_lanev2sf */
    case 2384:  /* neon_vld3_lanev2si */
    case 2383:  /* neon_vld3_lanev4hf */
    case 2382:  /* neon_vld3_lanev4hi */
    case 2381:  /* neon_vld3_lanev8qi */
    case 2380:  /* neon_vld3qbv4sf */
    case 2379:  /* neon_vld3qbv4si */
    case 2378:  /* neon_vld3qbv8hf */
    case 2377:  /* neon_vld3qbv8hi */
    case 2376:  /* neon_vld3qbv16qi */
    case 2375:  /* neon_vld3qav4sf */
    case 2374:  /* neon_vld3qav4si */
    case 2373:  /* neon_vld3qav8hf */
    case 2372:  /* neon_vld3qav8hi */
    case 2371:  /* neon_vld3qav16qi */
    case 2370:  /* neon_vld3di */
    case 2369:  /* neon_vld3v2sf */
    case 2368:  /* neon_vld3v2si */
    case 2367:  /* neon_vld3v4hf */
    case 2366:  /* neon_vld3v4hi */
    case 2365:  /* neon_vld3v8qi */
    case 2364:  /* neon_vst2_lanev4sf */
    case 2363:  /* neon_vst2_lanev4si */
    case 2362:  /* neon_vst2_lanev8hf */
    case 2361:  /* neon_vst2_lanev8hi */
    case 2360:  /* neon_vst2_lanev2sf */
    case 2359:  /* neon_vst2_lanev2si */
    case 2358:  /* neon_vst2_lanev4hf */
    case 2357:  /* neon_vst2_lanev4hi */
    case 2356:  /* neon_vst2_lanev8qi */
    case 2355:  /* neon_vst2v4sf */
    case 2354:  /* neon_vst2v4si */
    case 2353:  /* neon_vst2v8hf */
    case 2352:  /* neon_vst2v8hi */
    case 2351:  /* neon_vst2v16qi */
    case 2350:  /* neon_vst2di */
    case 2349:  /* neon_vst2v2sf */
    case 2348:  /* neon_vst2v2si */
    case 2347:  /* neon_vst2v4hf */
    case 2346:  /* neon_vst2v4hi */
    case 2345:  /* neon_vst2v8qi */
    case 2344:  /* neon_vld2_dupdi */
    case 2343:  /* neon_vld2_dupv2sf */
    case 2342:  /* neon_vld2_dupv2si */
    case 2341:  /* neon_vld2_dupv4hf */
    case 2340:  /* neon_vld2_dupv4hi */
    case 2339:  /* neon_vld2_dupv8qi */
    case 2338:  /* neon_vld2_lanev4sf */
    case 2337:  /* neon_vld2_lanev4si */
    case 2336:  /* neon_vld2_lanev8hf */
    case 2335:  /* neon_vld2_lanev8hi */
    case 2334:  /* neon_vld2_lanev2sf */
    case 2333:  /* neon_vld2_lanev2si */
    case 2332:  /* neon_vld2_lanev4hf */
    case 2331:  /* neon_vld2_lanev4hi */
    case 2330:  /* neon_vld2_lanev8qi */
    case 2329:  /* neon_vld2v4sf */
    case 2328:  /* neon_vld2v4si */
    case 2327:  /* neon_vld2v8hf */
    case 2326:  /* neon_vld2v8hi */
    case 2325:  /* neon_vld2v16qi */
    case 2324:  /* neon_vld2di */
    case 2323:  /* neon_vld2v2sf */
    case 2322:  /* neon_vld2v2si */
    case 2321:  /* neon_vld2v4hf */
    case 2320:  /* neon_vld2v4hi */
    case 2319:  /* neon_vld2v8qi */
    case 2318:  /* neon_vst1_lanev2di */
    case 2317:  /* neon_vst1_lanev4sf */
    case 2316:  /* neon_vst1_lanev4si */
    case 2315:  /* neon_vst1_lanev8hf */
    case 2314:  /* neon_vst1_lanev8hi */
    case 2313:  /* neon_vst1_lanev16qi */
    case 2312:  /* neon_vst1_lanedi */
    case 2311:  /* neon_vst1_lanev2sf */
    case 2310:  /* neon_vst1_lanev2si */
    case 2309:  /* neon_vst1_lanev4hf */
    case 2308:  /* neon_vst1_lanev4hi */
    case 2307:  /* neon_vst1_lanev8qi */
    case 2306:  /* neon_vst1v2di */
    case 2305:  /* neon_vst1di */
    case 2304:  /* neon_vst1v4sf */
    case 2303:  /* neon_vst1v2sf */
    case 2302:  /* neon_vst1v8hf */
    case 2301:  /* neon_vst1v4hf */
    case 2300:  /* neon_vst1v4si */
    case 2299:  /* neon_vst1v2si */
    case 2298:  /* neon_vst1v8hi */
    case 2297:  /* neon_vst1v4hi */
    case 2296:  /* neon_vst1v16qi */
    case 2295:  /* neon_vst1v8qi */
    case 2294:  /* neon_vld1_dupv2di */
    case 2293:  /* neon_vld1_dupv4sf */
    case 2292:  /* neon_vld1_dupv4si */
    case 2291:  /* neon_vld1_dupv8hf */
    case 2290:  /* neon_vld1_dupv8hi */
    case 2289:  /* neon_vld1_dupv16qi */
    case 2288:  /* neon_vld1_dupv2sf */
    case 2287:  /* neon_vld1_dupv2si */
    case 2286:  /* neon_vld1_dupv4hf */
    case 2285:  /* neon_vld1_dupv4hi */
    case 2284:  /* neon_vld1_dupv8qi */
    case 2283:  /* neon_vld1_lanev2di */
    case 2282:  /* neon_vld1_lanev4sf */
    case 2281:  /* neon_vld1_lanev4si */
    case 2280:  /* neon_vld1_lanev8hf */
    case 2279:  /* neon_vld1_lanev8hi */
    case 2278:  /* neon_vld1_lanev16qi */
    case 2277:  /* neon_vld1_lanedi */
    case 2276:  /* neon_vld1_lanev2sf */
    case 2275:  /* neon_vld1_lanev2si */
    case 2274:  /* neon_vld1_lanev4hf */
    case 2273:  /* neon_vld1_lanev4hi */
    case 2272:  /* neon_vld1_lanev8qi */
    case 2271:  /* neon_vld1v2di */
    case 2270:  /* neon_vld1di */
    case 2269:  /* neon_vld1v4sf */
    case 2268:  /* neon_vld1v2sf */
    case 2267:  /* neon_vld1v8hf */
    case 2266:  /* neon_vld1v4hf */
    case 2265:  /* neon_vld1v4si */
    case 2264:  /* neon_vld1v2si */
    case 2263:  /* neon_vld1v8hi */
    case 2262:  /* neon_vld1v4hi */
    case 2261:  /* neon_vld1v16qi */
    case 2260:  /* neon_vld1v8qi */
    case 2259:  /* *neon_vuzpv4hf_insn */
    case 2258:  /* *neon_vuzpv8hf_insn */
    case 2257:  /* *neon_vuzpv4sf_insn */
    case 2256:  /* *neon_vuzpv2sf_insn */
    case 2255:  /* *neon_vuzpv4si_insn */
    case 2254:  /* *neon_vuzpv2si_insn */
    case 2253:  /* *neon_vuzpv8hi_insn */
    case 2252:  /* *neon_vuzpv4hi_insn */
    case 2251:  /* *neon_vuzpv16qi_insn */
    case 2250:  /* *neon_vuzpv8qi_insn */
    case 2249:  /* *neon_vzipv4hf_insn */
    case 2248:  /* *neon_vzipv8hf_insn */
    case 2247:  /* *neon_vzipv4sf_insn */
    case 2246:  /* *neon_vzipv2sf_insn */
    case 2245:  /* *neon_vzipv4si_insn */
    case 2244:  /* *neon_vzipv2si_insn */
    case 2243:  /* *neon_vzipv8hi_insn */
    case 2242:  /* *neon_vzipv4hi_insn */
    case 2241:  /* *neon_vzipv16qi_insn */
    case 2240:  /* *neon_vzipv8qi_insn */
    case 2239:  /* *neon_vtrnv4hf_insn */
    case 2238:  /* *neon_vtrnv8hf_insn */
    case 2237:  /* *neon_vtrnv4sf_insn */
    case 2236:  /* *neon_vtrnv2sf_insn */
    case 2235:  /* *neon_vtrnv4si_insn */
    case 2234:  /* *neon_vtrnv2si_insn */
    case 2233:  /* *neon_vtrnv8hi_insn */
    case 2232:  /* *neon_vtrnv4hi_insn */
    case 2231:  /* *neon_vtrnv16qi_insn */
    case 2230:  /* *neon_vtrnv8qi_insn */
    case 2229:  /* neon_vtbx4v8qi */
    case 2228:  /* neon_vtbx3v8qi */
    case 2227:  /* neon_vtbx2v8qi */
    case 2226:  /* neon_vtbx1v8qi */
    case 2222:  /* neon_vtbl4v8qi */
    case 2221:  /* neon_vtbl3v8qi */
    case 2220:  /* neon_vtbl2v8qi */
    case 2219:  /* neon_vtbl1v8qi */
    case 2218:  /* neon_vsli_nv2di */
    case 2217:  /* neon_vsli_ndi */
    case 2216:  /* neon_vsli_nv4si */
    case 2215:  /* neon_vsli_nv2si */
    case 2214:  /* neon_vsli_nv8hi */
    case 2213:  /* neon_vsli_nv4hi */
    case 2212:  /* neon_vsli_nv16qi */
    case 2211:  /* neon_vsli_nv8qi */
    case 2210:  /* neon_vsri_nv2di */
    case 2209:  /* neon_vsri_ndi */
    case 2208:  /* neon_vsri_nv4si */
    case 2207:  /* neon_vsri_nv2si */
    case 2206:  /* neon_vsri_nv8hi */
    case 2205:  /* neon_vsri_nv4hi */
    case 2204:  /* neon_vsri_nv16qi */
    case 2203:  /* neon_vsri_nv8qi */
    case 2202:  /* neon_vrsrau_nv2di */
    case 2201:  /* neon_vrsras_nv2di */
    case 2200:  /* neon_vsrau_nv2di */
    case 2199:  /* neon_vsras_nv2di */
    case 2198:  /* neon_vrsrau_ndi */
    case 2197:  /* neon_vrsras_ndi */
    case 2196:  /* neon_vsrau_ndi */
    case 2195:  /* neon_vsras_ndi */
    case 2194:  /* neon_vrsrau_nv4si */
    case 2193:  /* neon_vrsras_nv4si */
    case 2192:  /* neon_vsrau_nv4si */
    case 2191:  /* neon_vsras_nv4si */
    case 2190:  /* neon_vrsrau_nv2si */
    case 2189:  /* neon_vrsras_nv2si */
    case 2188:  /* neon_vsrau_nv2si */
    case 2187:  /* neon_vsras_nv2si */
    case 2186:  /* neon_vrsrau_nv8hi */
    case 2185:  /* neon_vrsras_nv8hi */
    case 2184:  /* neon_vsrau_nv8hi */
    case 2183:  /* neon_vsras_nv8hi */
    case 2182:  /* neon_vrsrau_nv4hi */
    case 2181:  /* neon_vrsras_nv4hi */
    case 2180:  /* neon_vsrau_nv4hi */
    case 2179:  /* neon_vsras_nv4hi */
    case 2178:  /* neon_vrsrau_nv16qi */
    case 2177:  /* neon_vrsras_nv16qi */
    case 2176:  /* neon_vsrau_nv16qi */
    case 2175:  /* neon_vsras_nv16qi */
    case 2174:  /* neon_vrsrau_nv8qi */
    case 2173:  /* neon_vrsras_nv8qi */
    case 2172:  /* neon_vsrau_nv8qi */
    case 2171:  /* neon_vsras_nv8qi */
    case 2170:  /* neon_vshllu_nv2si */
    case 2169:  /* neon_vshlls_nv2si */
    case 2168:  /* neon_vshllu_nv4hi */
    case 2167:  /* neon_vshlls_nv4hi */
    case 2166:  /* neon_vshllu_nv8qi */
    case 2165:  /* neon_vshlls_nv8qi */
    case 2164:  /* neon_vqshlu_nv2di */
    case 2163:  /* neon_vqshlu_ndi */
    case 2162:  /* neon_vqshlu_nv4si */
    case 2161:  /* neon_vqshlu_nv2si */
    case 2160:  /* neon_vqshlu_nv8hi */
    case 2159:  /* neon_vqshlu_nv4hi */
    case 2158:  /* neon_vqshlu_nv16qi */
    case 2157:  /* neon_vqshlu_nv8qi */
    case 2156:  /* neon_vqshl_u_nv2di */
    case 2155:  /* neon_vqshl_s_nv2di */
    case 2154:  /* neon_vqshl_u_ndi */
    case 2153:  /* neon_vqshl_s_ndi */
    case 2152:  /* neon_vqshl_u_nv4si */
    case 2151:  /* neon_vqshl_s_nv4si */
    case 2150:  /* neon_vqshl_u_nv2si */
    case 2149:  /* neon_vqshl_s_nv2si */
    case 2148:  /* neon_vqshl_u_nv8hi */
    case 2147:  /* neon_vqshl_s_nv8hi */
    case 2146:  /* neon_vqshl_u_nv4hi */
    case 2145:  /* neon_vqshl_s_nv4hi */
    case 2144:  /* neon_vqshl_u_nv16qi */
    case 2143:  /* neon_vqshl_s_nv16qi */
    case 2142:  /* neon_vqshl_u_nv8qi */
    case 2141:  /* neon_vqshl_s_nv8qi */
    case 2140:  /* neon_vshl_nv2di */
    case 2139:  /* neon_vshl_ndi */
    case 2138:  /* neon_vshl_nv4si */
    case 2137:  /* neon_vshl_nv2si */
    case 2136:  /* neon_vshl_nv8hi */
    case 2135:  /* neon_vshl_nv4hi */
    case 2134:  /* neon_vshl_nv16qi */
    case 2133:  /* neon_vshl_nv8qi */
    case 2132:  /* neon_vqrshrun_nv2di */
    case 2131:  /* neon_vqshrun_nv2di */
    case 2130:  /* neon_vqrshrun_nv4si */
    case 2129:  /* neon_vqshrun_nv4si */
    case 2128:  /* neon_vqrshrun_nv8hi */
    case 2127:  /* neon_vqshrun_nv8hi */
    case 2126:  /* neon_vqrshrnu_nv2di */
    case 2125:  /* neon_vqrshrns_nv2di */
    case 2124:  /* neon_vqshrnu_nv2di */
    case 2123:  /* neon_vqshrns_nv2di */
    case 2122:  /* neon_vqrshrnu_nv4si */
    case 2121:  /* neon_vqrshrns_nv4si */
    case 2120:  /* neon_vqshrnu_nv4si */
    case 2119:  /* neon_vqshrns_nv4si */
    case 2118:  /* neon_vqrshrnu_nv8hi */
    case 2117:  /* neon_vqrshrns_nv8hi */
    case 2116:  /* neon_vqshrnu_nv8hi */
    case 2115:  /* neon_vqshrns_nv8hi */
    case 2114:  /* neon_vrshrn_nv2di */
    case 2113:  /* neon_vshrn_nv2di */
    case 2112:  /* neon_vrshrn_nv4si */
    case 2111:  /* neon_vshrn_nv4si */
    case 2110:  /* neon_vrshrn_nv8hi */
    case 2109:  /* neon_vshrn_nv8hi */
    case 2108:  /* neon_vrshru_nv2di */
    case 2107:  /* neon_vrshrs_nv2di */
    case 2106:  /* neon_vshru_nv2di */
    case 2105:  /* neon_vshrs_nv2di */
    case 2104:  /* neon_vrshru_ndi */
    case 2103:  /* neon_vrshrs_ndi */
    case 2102:  /* neon_vshru_ndi */
    case 2101:  /* neon_vshrs_ndi */
    case 2100:  /* neon_vrshru_nv4si */
    case 2099:  /* neon_vrshrs_nv4si */
    case 2098:  /* neon_vshru_nv4si */
    case 2097:  /* neon_vshrs_nv4si */
    case 2096:  /* neon_vrshru_nv2si */
    case 2095:  /* neon_vrshrs_nv2si */
    case 2094:  /* neon_vshru_nv2si */
    case 2093:  /* neon_vshrs_nv2si */
    case 2092:  /* neon_vrshru_nv8hi */
    case 2091:  /* neon_vrshrs_nv8hi */
    case 2090:  /* neon_vshru_nv8hi */
    case 2089:  /* neon_vshrs_nv8hi */
    case 2088:  /* neon_vrshru_nv4hi */
    case 2087:  /* neon_vrshrs_nv4hi */
    case 2086:  /* neon_vshru_nv4hi */
    case 2085:  /* neon_vshrs_nv4hi */
    case 2084:  /* neon_vrshru_nv16qi */
    case 2083:  /* neon_vrshrs_nv16qi */
    case 2082:  /* neon_vshru_nv16qi */
    case 2081:  /* neon_vshrs_nv16qi */
    case 2080:  /* neon_vrshru_nv8qi */
    case 2079:  /* neon_vrshrs_nv8qi */
    case 2078:  /* neon_vshru_nv8qi */
    case 2077:  /* neon_vshrs_nv8qi */
    case 2076:  /* neon_vqrshluv2di */
    case 2075:  /* neon_vqrshlsv2di */
    case 2074:  /* neon_vqshluv2di */
    case 2073:  /* neon_vqshlsv2di */
    case 2072:  /* neon_vqrshludi */
    case 2071:  /* neon_vqrshlsdi */
    case 2070:  /* neon_vqshludi */
    case 2069:  /* neon_vqshlsdi */
    case 2068:  /* neon_vqrshluv4si */
    case 2067:  /* neon_vqrshlsv4si */
    case 2066:  /* neon_vqshluv4si */
    case 2065:  /* neon_vqshlsv4si */
    case 2064:  /* neon_vqrshluv2si */
    case 2063:  /* neon_vqrshlsv2si */
    case 2062:  /* neon_vqshluv2si */
    case 2061:  /* neon_vqshlsv2si */
    case 2060:  /* neon_vqrshluv8hi */
    case 2059:  /* neon_vqrshlsv8hi */
    case 2058:  /* neon_vqshluv8hi */
    case 2057:  /* neon_vqshlsv8hi */
    case 2056:  /* neon_vqrshluv4hi */
    case 2055:  /* neon_vqrshlsv4hi */
    case 2054:  /* neon_vqshluv4hi */
    case 2053:  /* neon_vqshlsv4hi */
    case 2052:  /* neon_vqrshluv16qi */
    case 2051:  /* neon_vqrshlsv16qi */
    case 2050:  /* neon_vqshluv16qi */
    case 2049:  /* neon_vqshlsv16qi */
    case 2048:  /* neon_vqrshluv8qi */
    case 2047:  /* neon_vqrshlsv8qi */
    case 2046:  /* neon_vqshluv8qi */
    case 2045:  /* neon_vqshlsv8qi */
    case 2044:  /* neon_vrshluv2di */
    case 2043:  /* neon_vrshlsv2di */
    case 2042:  /* neon_vshluv2di */
    case 2041:  /* neon_vshlsv2di */
    case 2040:  /* neon_vrshludi */
    case 2039:  /* neon_vrshlsdi */
    case 2038:  /* neon_vshludi */
    case 2037:  /* neon_vshlsdi */
    case 2036:  /* neon_vrshluv4si */
    case 2035:  /* neon_vrshlsv4si */
    case 2034:  /* neon_vshluv4si */
    case 2033:  /* neon_vshlsv4si */
    case 2032:  /* neon_vrshluv2si */
    case 2031:  /* neon_vrshlsv2si */
    case 2030:  /* neon_vshluv2si */
    case 2029:  /* neon_vshlsv2si */
    case 2028:  /* neon_vrshluv8hi */
    case 2027:  /* neon_vrshlsv8hi */
    case 2026:  /* neon_vshluv8hi */
    case 2025:  /* neon_vshlsv8hi */
    case 2024:  /* neon_vrshluv4hi */
    case 2023:  /* neon_vrshlsv4hi */
    case 2022:  /* neon_vshluv4hi */
    case 2021:  /* neon_vshlsv4hi */
    case 2020:  /* neon_vrshluv16qi */
    case 2019:  /* neon_vrshlsv16qi */
    case 2018:  /* neon_vshluv16qi */
    case 2017:  /* neon_vshlsv16qi */
    case 2016:  /* neon_vrshluv8qi */
    case 2015:  /* neon_vrshlsv8qi */
    case 2014:  /* neon_vshluv8qi */
    case 2013:  /* neon_vshlsv8qi */
    case 2012:  /* neon_vbslv2di_internal */
    case 2011:  /* neon_vbsldi_internal */
    case 2010:  /* neon_vbslv4sf_internal */
    case 2009:  /* neon_vbslv2sf_internal */
    case 2008:  /* neon_vbslv8hf_internal */
    case 2007:  /* neon_vbslv4hf_internal */
    case 2006:  /* neon_vbslv4si_internal */
    case 2005:  /* neon_vbslv2si_internal */
    case 2004:  /* neon_vbslv8hi_internal */
    case 2003:  /* neon_vbslv4hi_internal */
    case 2002:  /* neon_vbslv16qi_internal */
    case 2001:  /* neon_vbslv8qi_internal */
    case 2000:  /* neon_vrev16v16qi */
    case 1999:  /* neon_vrev16v8qi */
    case 1998:  /* neon_vrev32v8hi */
    case 1997:  /* neon_vrev32v16qi */
    case 1996:  /* neon_vrev32v4hi */
    case 1995:  /* neon_vrev32v8qi */
    case 1994:  /* neon_vrev64v2di */
    case 1993:  /* neon_vrev64v4sf */
    case 1992:  /* neon_vrev64v2sf */
    case 1991:  /* neon_vrev64v8hf */
    case 1990:  /* neon_vrev64v4hf */
    case 1989:  /* neon_vrev64v4si */
    case 1988:  /* neon_vrev64v2si */
    case 1987:  /* neon_vrev64v8hi */
    case 1986:  /* neon_vrev64v4hi */
    case 1985:  /* neon_vrev64v16qi */
    case 1984:  /* neon_vrev64v8qi */
    case 1983:  /* neon_vextv2di */
    case 1982:  /* neon_vextdi */
    case 1981:  /* neon_vextv4sf */
    case 1980:  /* neon_vextv2sf */
    case 1979:  /* neon_vextv8hf */
    case 1978:  /* neon_vextv4hf */
    case 1977:  /* neon_vextv4si */
    case 1976:  /* neon_vextv2si */
    case 1975:  /* neon_vextv8hi */
    case 1974:  /* neon_vextv4hi */
    case 1973:  /* neon_vextv16qi */
    case 1972:  /* neon_vextv8qi */
    case 1971:  /* neon_vqdmlsl_lanev2si */
    case 1970:  /* neon_vqdmlsl_lanev4hi */
    case 1969:  /* neon_vmlslu_lanev2si */
    case 1968:  /* neon_vmlsls_lanev2si */
    case 1967:  /* neon_vmlslu_lanev4hi */
    case 1966:  /* neon_vmlsls_lanev4hi */
    case 1965:  /* neon_vmls_lanev4sf */
    case 1964:  /* neon_vmls_lanev4si */
    case 1963:  /* neon_vmls_lanev8hi */
    case 1962:  /* neon_vmls_lanev2sf */
    case 1961:  /* neon_vmls_lanev2si */
    case 1960:  /* neon_vmls_lanev4hi */
    case 1959:  /* neon_vqdmlal_lanev2si */
    case 1958:  /* neon_vqdmlal_lanev4hi */
    case 1957:  /* neon_vmlalu_lanev2si */
    case 1956:  /* neon_vmlals_lanev2si */
    case 1955:  /* neon_vmlalu_lanev4hi */
    case 1954:  /* neon_vmlals_lanev4hi */
    case 1953:  /* neon_vmla_lanev4sf */
    case 1952:  /* neon_vmla_lanev4si */
    case 1951:  /* neon_vmla_lanev8hi */
    case 1950:  /* neon_vmla_lanev2sf */
    case 1949:  /* neon_vmla_lanev2si */
    case 1948:  /* neon_vmla_lanev4hi */
    case 1947:  /* neon_vqrdmlsh_lanev2si */
    case 1946:  /* neon_vqrdmlah_lanev2si */
    case 1945:  /* neon_vqrdmlsh_lanev4hi */
    case 1944:  /* neon_vqrdmlah_lanev4hi */
    case 1943:  /* neon_vqrdmlsh_lanev4si */
    case 1942:  /* neon_vqrdmlah_lanev4si */
    case 1941:  /* neon_vqrdmlsh_lanev8hi */
    case 1940:  /* neon_vqrdmlah_lanev8hi */
    case 1939:  /* neon_vqrdmulh_lanev2si */
    case 1938:  /* neon_vqdmulh_lanev2si */
    case 1937:  /* neon_vqrdmulh_lanev4hi */
    case 1936:  /* neon_vqdmulh_lanev4hi */
    case 1935:  /* neon_vqrdmulh_lanev4si */
    case 1934:  /* neon_vqdmulh_lanev4si */
    case 1933:  /* neon_vqrdmulh_lanev8hi */
    case 1932:  /* neon_vqdmulh_lanev8hi */
    case 1931:  /* neon_vqdmull_lanev2si */
    case 1930:  /* neon_vqdmull_lanev4hi */
    case 1929:  /* neon_vmullu_lanev2si */
    case 1928:  /* neon_vmulls_lanev2si */
    case 1927:  /* neon_vmullu_lanev4hi */
    case 1926:  /* neon_vmulls_lanev4hi */
    case 1925:  /* neon_vmul_lanev4hf */
    case 1924:  /* neon_vmul_lanev8hf */
    case 1923:  /* neon_vmul_lanev4sf */
    case 1922:  /* neon_vmul_lanev4si */
    case 1921:  /* neon_vmul_lanev8hi */
    case 1920:  /* neon_vmul_lanev2sf */
    case 1919:  /* neon_vmul_lanev2si */
    case 1918:  /* neon_vmul_lanev4hi */
    case 1917:  /* neon_vmovluv2si */
    case 1916:  /* neon_vmovlsv2si */
    case 1915:  /* neon_vmovluv4hi */
    case 1914:  /* neon_vmovlsv4hi */
    case 1913:  /* neon_vmovluv8qi */
    case 1912:  /* neon_vmovlsv8qi */
    case 1911:  /* neon_vqmovunv2di */
    case 1910:  /* neon_vqmovunv4si */
    case 1909:  /* neon_vqmovunv8hi */
    case 1908:  /* neon_vqmovnuv2di */
    case 1907:  /* neon_vqmovnsv2di */
    case 1906:  /* neon_vqmovnuv4si */
    case 1905:  /* neon_vqmovnsv4si */
    case 1904:  /* neon_vqmovnuv8hi */
    case 1903:  /* neon_vqmovnsv8hi */
    case 1902:  /* neon_vmovnv2di */
    case 1901:  /* neon_vmovnv4si */
    case 1900:  /* neon_vmovnv8hi */
    case 1899:  /* neon_vcvtpuv4hf */
    case 1898:  /* neon_vcvtpsv4hf */
    case 1897:  /* neon_vcvtnuv4hf */
    case 1896:  /* neon_vcvtnsv4hf */
    case 1895:  /* neon_vcvtmuv4hf */
    case 1894:  /* neon_vcvtmsv4hf */
    case 1893:  /* neon_vcvtauv4hf */
    case 1892:  /* neon_vcvtasv4hf */
    case 1891:  /* neon_vcvtpuv8hf */
    case 1890:  /* neon_vcvtpsv8hf */
    case 1889:  /* neon_vcvtnuv8hf */
    case 1888:  /* neon_vcvtnsv8hf */
    case 1887:  /* neon_vcvtmuv8hf */
    case 1886:  /* neon_vcvtmsv8hf */
    case 1885:  /* neon_vcvtauv8hf */
    case 1884:  /* neon_vcvtasv8hf */
    case 1883:  /* neon_vcvtu_nv8hi */
    case 1882:  /* neon_vcvts_nv8hi */
    case 1881:  /* neon_vcvtu_nv4hi */
    case 1880:  /* neon_vcvts_nv4hi */
    case 1879:  /* neon_vcvtu_nv4si */
    case 1878:  /* neon_vcvts_nv4si */
    case 1877:  /* neon_vcvtu_nv2si */
    case 1876:  /* neon_vcvts_nv2si */
    case 1875:  /* neon_vcvtu_nv4hf */
    case 1874:  /* neon_vcvts_nv4hf */
    case 1873:  /* neon_vcvtu_nv8hf */
    case 1872:  /* neon_vcvts_nv8hf */
    case 1871:  /* neon_vcvtu_nv4sf */
    case 1870:  /* neon_vcvts_nv4sf */
    case 1869:  /* neon_vcvtu_nv2sf */
    case 1868:  /* neon_vcvts_nv2sf */
    case 1867:  /* neon_vcvtuv4hf */
    case 1866:  /* neon_vcvtsv4hf */
    case 1865:  /* neon_vcvtuv8hf */
    case 1864:  /* neon_vcvtsv8hf */
    case 1863:  /* neon_vcvtuv8hi */
    case 1862:  /* neon_vcvtsv8hi */
    case 1861:  /* neon_vcvtuv4hi */
    case 1860:  /* neon_vcvtsv4hi */
    case 1859:  /* neon_vcvtv4hfv4sf */
    case 1858:  /* neon_vcvtv4sfv4hf */
    case 1857:  /* neon_vcvtuv4si */
    case 1856:  /* neon_vcvtsv4si */
    case 1855:  /* neon_vcvtuv2si */
    case 1854:  /* neon_vcvtsv2si */
    case 1853:  /* neon_vcvtuv4sf */
    case 1852:  /* neon_vcvtsv4sf */
    case 1851:  /* neon_vcvtuv2sf */
    case 1850:  /* neon_vcvtsv2sf */
    case 1849:  /* fixuns_truncv4sfv4si2 */
    case 1848:  /* fixuns_truncv2sfv2si2 */
    case 1847:  /* fix_truncv4sfv4si2 */
    case 1846:  /* fix_truncv2sfv2si2 */
    case 1845:  /* floatunsv4siv4sf2 */
    case 1844:  /* floatunsv2siv2sf2 */
    case 1843:  /* floatv4siv4sf2 */
    case 1842:  /* floatv2siv2sf2 */
    case 1835:  /* *neon_vswpv2di */
    case 1834:  /* *neon_vswpdi */
    case 1833:  /* *neon_vswpv4sf */
    case 1832:  /* *neon_vswpv2sf */
    case 1831:  /* *neon_vswpv8hf */
    case 1830:  /* *neon_vswpv4hf */
    case 1829:  /* *neon_vswpv4si */
    case 1828:  /* *neon_vswpv2si */
    case 1827:  /* *neon_vswpv8hi */
    case 1826:  /* *neon_vswpv4hi */
    case 1825:  /* *neon_vswpv16qi */
    case 1824:  /* *neon_vswpv8qi */
    case 1823:  /* neon_vdup_lanev4hf_internal */
    case 1822:  /* neon_vdup_lanev8hf_internal */
    case 1821:  /* neon_vdup_lanev4sf_internal */
    case 1820:  /* neon_vdup_lanev2sf_internal */
    case 1819:  /* neon_vdup_lanev4si_internal */
    case 1818:  /* neon_vdup_lanev2si_internal */
    case 1817:  /* neon_vdup_lanev8hi_internal */
    case 1816:  /* neon_vdup_lanev4hi_internal */
    case 1815:  /* neon_vdup_lanev16qi_internal */
    case 1814:  /* neon_vdup_lanev8qi_internal */
    case 1812:  /* neon_vdup_nv4sf */
    case 1811:  /* neon_vdup_nv4si */
    case 1810:  /* neon_vdup_nv2sf */
    case 1809:  /* neon_vdup_nv2si */
    case 1808:  /* neon_vdup_nv8hf */
    case 1807:  /* neon_vdup_nv4hf */
    case 1806:  /* neon_vdup_nv8hi */
    case 1805:  /* neon_vdup_nv16qi */
    case 1804:  /* neon_vdup_nv4hi */
    case 1803:  /* neon_vdup_nv8qi */
    case 1802:  /* neon_vget_lanev4sf_zext_internal */
    case 1801:  /* neon_vget_lanev4si_zext_internal */
    case 1800:  /* neon_vget_lanev8hf_zext_internal */
    case 1799:  /* neon_vget_lanev8hi_zext_internal */
    case 1798:  /* neon_vget_lanev16qi_zext_internal */
    case 1797:  /* neon_vget_lanev4sf_sext_internal */
    case 1796:  /* neon_vget_lanev4si_sext_internal */
    case 1795:  /* neon_vget_lanev8hf_sext_internal */
    case 1794:  /* neon_vget_lanev8hi_sext_internal */
    case 1793:  /* neon_vget_lanev16qi_sext_internal */
    case 1792:  /* neon_vget_lanev2sf_zext_internal */
    case 1791:  /* neon_vget_lanev2si_zext_internal */
    case 1790:  /* neon_vget_lanev4hi_zext_internal */
    case 1789:  /* neon_vget_lanev8qi_zext_internal */
    case 1788:  /* neon_vget_lanev2sf_sext_internal */
    case 1787:  /* neon_vget_lanev2si_sext_internal */
    case 1786:  /* neon_vget_lanev4hi_sext_internal */
    case 1785:  /* neon_vget_lanev8qi_sext_internal */
    case 1784:  /* neon_vrsqrtev4sf */
    case 1783:  /* neon_vrsqrtev4si */
    case 1782:  /* neon_vrsqrtev2sf */
    case 1781:  /* neon_vrsqrtev2si */
    case 1780:  /* neon_vrecpev4sf */
    case 1779:  /* neon_vrecpev4si */
    case 1778:  /* neon_vrecpev2sf */
    case 1777:  /* neon_vrecpev2si */
    case 1776:  /* neon_vrecpev4hf */
    case 1775:  /* neon_vrecpev8hf */
    case 1774:  /* popcountv16qi2 */
    case 1773:  /* popcountv8qi2 */
    case 1772:  /* clzv4si2 */
    case 1771:  /* clzv2si2 */
    case 1770:  /* clzv8hi2 */
    case 1769:  /* clzv4hi2 */
    case 1768:  /* clzv16qi2 */
    case 1767:  /* clzv8qi2 */
    case 1766:  /* neon_vclsv4si */
    case 1765:  /* neon_vclsv2si */
    case 1764:  /* neon_vclsv8hi */
    case 1763:  /* neon_vclsv4hi */
    case 1762:  /* neon_vclsv16qi */
    case 1761:  /* neon_vclsv8qi */
    case 1760:  /* neon_vqnegv4si */
    case 1759:  /* neon_vqnegv2si */
    case 1758:  /* neon_vqnegv8hi */
    case 1757:  /* neon_vqnegv4hi */
    case 1756:  /* neon_vqnegv16qi */
    case 1755:  /* neon_vqnegv8qi */
    case 1754:  /* neon_bswapv2di */
    case 1753:  /* neon_bswapv4si */
    case 1752:  /* neon_bswapv2si */
    case 1751:  /* neon_bswapv8hi */
    case 1750:  /* neon_bswapv4hi */
    case 1749:  /* neon_vqabsv4si */
    case 1748:  /* neon_vqabsv2si */
    case 1747:  /* neon_vqabsv8hi */
    case 1746:  /* neon_vqabsv4hi */
    case 1745:  /* neon_vqabsv16qi */
    case 1744:  /* neon_vqabsv8qi */
    case 1743:  /* neon_vrsqrtsv4hf */
    case 1742:  /* neon_vrsqrtsv8hf */
    case 1741:  /* neon_vrsqrtsv4sf */
    case 1740:  /* neon_vrsqrtsv2sf */
    case 1739:  /* neon_vrecpsv4hf */
    case 1738:  /* neon_vrecpsv8hf */
    case 1737:  /* neon_vrecpsv4sf */
    case 1736:  /* neon_vrecpsv2sf */
    case 1735:  /* neon_vpminfv4sf */
    case 1734:  /* neon_vpmaxfv4sf */
    case 1733:  /* neon_vpminfv2sf */
    case 1732:  /* neon_vpmaxfv2sf */
    case 1731:  /* neon_vpminuv2si */
    case 1730:  /* neon_vpminsv2si */
    case 1729:  /* neon_vpmaxuv2si */
    case 1728:  /* neon_vpmaxsv2si */
    case 1727:  /* neon_vpminuv4hi */
    case 1726:  /* neon_vpminsv4hi */
    case 1725:  /* neon_vpmaxuv4hi */
    case 1724:  /* neon_vpmaxsv4hi */
    case 1723:  /* neon_vpminuv8qi */
    case 1722:  /* neon_vpminsv8qi */
    case 1721:  /* neon_vpmaxuv8qi */
    case 1720:  /* neon_vpmaxsv8qi */
    case 1719:  /* neon_vpadaluv4si */
    case 1718:  /* neon_vpadalsv4si */
    case 1717:  /* neon_vpadaluv2si */
    case 1716:  /* neon_vpadalsv2si */
    case 1715:  /* neon_vpadaluv8hi */
    case 1714:  /* neon_vpadalsv8hi */
    case 1713:  /* neon_vpadaluv4hi */
    case 1712:  /* neon_vpadalsv4hi */
    case 1711:  /* neon_vpadaluv16qi */
    case 1710:  /* neon_vpadalsv16qi */
    case 1709:  /* neon_vpadaluv8qi */
    case 1708:  /* neon_vpadalsv8qi */
    case 1707:  /* neon_vpaddluv4si */
    case 1706:  /* neon_vpaddlsv4si */
    case 1705:  /* neon_vpaddluv2si */
    case 1704:  /* neon_vpaddlsv2si */
    case 1703:  /* neon_vpaddluv8hi */
    case 1702:  /* neon_vpaddlsv8hi */
    case 1701:  /* neon_vpaddluv4hi */
    case 1700:  /* neon_vpaddlsv4hi */
    case 1699:  /* neon_vpaddluv16qi */
    case 1698:  /* neon_vpaddlsv16qi */
    case 1697:  /* neon_vpaddluv8qi */
    case 1696:  /* neon_vpaddlsv8qi */
    case 1695:  /* fminv4sf3 */
    case 1694:  /* fmaxv4sf3 */
    case 1693:  /* fminv2sf3 */
    case 1692:  /* fmaxv2sf3 */
    case 1691:  /* neon_vminnmv4hf */
    case 1690:  /* neon_vmaxnmv4hf */
    case 1689:  /* neon_vminnmv8hf */
    case 1688:  /* neon_vmaxnmv8hf */
    case 1687:  /* neon_vpminfv4hf */
    case 1686:  /* neon_vpmaxfv4hf */
    case 1685:  /* neon_vminfv4hf */
    case 1684:  /* neon_vmaxfv4hf */
    case 1683:  /* neon_vminfv8hf */
    case 1682:  /* neon_vmaxfv8hf */
    case 1681:  /* neon_vminfv4sf */
    case 1680:  /* neon_vmaxfv4sf */
    case 1679:  /* neon_vminfv2sf */
    case 1678:  /* neon_vmaxfv2sf */
    case 1677:  /* neon_vminuv4si */
    case 1676:  /* neon_vminsv4si */
    case 1675:  /* neon_vmaxuv4si */
    case 1674:  /* neon_vmaxsv4si */
    case 1673:  /* neon_vminuv2si */
    case 1672:  /* neon_vminsv2si */
    case 1671:  /* neon_vmaxuv2si */
    case 1670:  /* neon_vmaxsv2si */
    case 1669:  /* neon_vminuv8hi */
    case 1668:  /* neon_vminsv8hi */
    case 1667:  /* neon_vmaxuv8hi */
    case 1666:  /* neon_vmaxsv8hi */
    case 1665:  /* neon_vminuv4hi */
    case 1664:  /* neon_vminsv4hi */
    case 1663:  /* neon_vmaxuv4hi */
    case 1662:  /* neon_vmaxsv4hi */
    case 1661:  /* neon_vminuv16qi */
    case 1660:  /* neon_vminsv16qi */
    case 1659:  /* neon_vmaxuv16qi */
    case 1658:  /* neon_vmaxsv16qi */
    case 1657:  /* neon_vminuv8qi */
    case 1656:  /* neon_vminsv8qi */
    case 1655:  /* neon_vmaxuv8qi */
    case 1654:  /* neon_vmaxsv8qi */
    case 1653:  /* neon_vabaluv2si */
    case 1652:  /* neon_vabalsv2si */
    case 1651:  /* neon_vabaluv4hi */
    case 1650:  /* neon_vabalsv4hi */
    case 1649:  /* neon_vabaluv8qi */
    case 1648:  /* neon_vabalsv8qi */
    case 1647:  /* neon_vabauv4si */
    case 1646:  /* neon_vabasv4si */
    case 1645:  /* neon_vabauv2si */
    case 1644:  /* neon_vabasv2si */
    case 1643:  /* neon_vabauv8hi */
    case 1642:  /* neon_vabasv8hi */
    case 1641:  /* neon_vabauv4hi */
    case 1640:  /* neon_vabasv4hi */
    case 1639:  /* neon_vabauv16qi */
    case 1638:  /* neon_vabasv16qi */
    case 1637:  /* neon_vabauv8qi */
    case 1636:  /* neon_vabasv8qi */
    case 1635:  /* neon_vabdluv2si */
    case 1634:  /* neon_vabdlsv2si */
    case 1633:  /* neon_vabdluv4hi */
    case 1632:  /* neon_vabdlsv4hi */
    case 1631:  /* neon_vabdluv8qi */
    case 1630:  /* neon_vabdlsv8qi */
    case 1629:  /* neon_vabdfv4sf */
    case 1628:  /* neon_vabdfv2sf */
    case 1627:  /* neon_vabdv4hf */
    case 1626:  /* neon_vabdv8hf */
    case 1625:  /* neon_vabduv4si */
    case 1624:  /* neon_vabdsv4si */
    case 1623:  /* neon_vabduv2si */
    case 1622:  /* neon_vabdsv2si */
    case 1621:  /* neon_vabduv8hi */
    case 1620:  /* neon_vabdsv8hi */
    case 1619:  /* neon_vabduv4hi */
    case 1618:  /* neon_vabdsv4hi */
    case 1617:  /* neon_vabduv16qi */
    case 1616:  /* neon_vabdsv16qi */
    case 1615:  /* neon_vabduv8qi */
    case 1614:  /* neon_vabdsv8qi */
    case 1613:  /* neon_vtstv4si */
    case 1612:  /* neon_vtstv2si */
    case 1611:  /* neon_vtstv8hi */
    case 1610:  /* neon_vtstv4hi */
    case 1609:  /* neon_vtstv16qi */
    case 1608:  /* neon_vtstv8qi */
    case 1607:  /* neon_vcaltv4hf_fp16insn_unspec */
    case 1606:  /* neon_vcalev4hf_fp16insn_unspec */
    case 1605:  /* neon_vcagtv4hf_fp16insn_unspec */
    case 1604:  /* neon_vcagev4hf_fp16insn_unspec */
    case 1603:  /* neon_vcaltv8hf_fp16insn_unspec */
    case 1602:  /* neon_vcalev8hf_fp16insn_unspec */
    case 1601:  /* neon_vcagtv8hf_fp16insn_unspec */
    case 1600:  /* neon_vcagev8hf_fp16insn_unspec */
    case 1599:  /* neon_vcalev4hf_fp16insn */
    case 1598:  /* neon_vcaltv4hf_fp16insn */
    case 1597:  /* neon_vcagev4hf_fp16insn */
    case 1596:  /* neon_vcagtv4hf_fp16insn */
    case 1595:  /* neon_vcalev8hf_fp16insn */
    case 1594:  /* neon_vcaltv8hf_fp16insn */
    case 1593:  /* neon_vcagev8hf_fp16insn */
    case 1592:  /* neon_vcagtv8hf_fp16insn */
    case 1591:  /* neon_vcagtv4sf_insn_unspec */
    case 1590:  /* neon_vcagev4sf_insn_unspec */
    case 1589:  /* neon_vcagtv2sf_insn_unspec */
    case 1588:  /* neon_vcagev2sf_insn_unspec */
    case 1587:  /* neon_vcagev4sf_insn */
    case 1586:  /* neon_vcagtv4sf_insn */
    case 1585:  /* neon_vcagev2sf_insn */
    case 1584:  /* neon_vcagtv2sf_insn */
    case 1583:  /* neon_vcgeuv4si */
    case 1582:  /* neon_vcgtuv4si */
    case 1581:  /* neon_vcgeuv2si */
    case 1580:  /* neon_vcgtuv2si */
    case 1579:  /* neon_vcgeuv8hi */
    case 1578:  /* neon_vcgtuv8hi */
    case 1577:  /* neon_vcgeuv4hi */
    case 1576:  /* neon_vcgtuv4hi */
    case 1575:  /* neon_vcgeuv16qi */
    case 1574:  /* neon_vcgtuv16qi */
    case 1573:  /* neon_vcgeuv8qi */
    case 1572:  /* neon_vcgtuv8qi */
    case 1571:  /* neon_vclev4hf_fp16insn_unspec */
    case 1570:  /* neon_vcltv4hf_fp16insn_unspec */
    case 1569:  /* neon_vcgev4hf_fp16insn_unspec */
    case 1568:  /* neon_vcgtv4hf_fp16insn_unspec */
    case 1567:  /* neon_vceqv4hf_fp16insn_unspec */
    case 1566:  /* neon_vclev8hf_fp16insn_unspec */
    case 1565:  /* neon_vcltv8hf_fp16insn_unspec */
    case 1564:  /* neon_vcgev8hf_fp16insn_unspec */
    case 1563:  /* neon_vcgtv8hf_fp16insn_unspec */
    case 1562:  /* neon_vceqv8hf_fp16insn_unspec */
    case 1551:  /* neon_vclev4sf_insn_unspec */
    case 1550:  /* neon_vcltv4sf_insn_unspec */
    case 1549:  /* neon_vcgev4sf_insn_unspec */
    case 1548:  /* neon_vcgtv4sf_insn_unspec */
    case 1547:  /* neon_vceqv4sf_insn_unspec */
    case 1546:  /* neon_vclev2sf_insn_unspec */
    case 1545:  /* neon_vcltv2sf_insn_unspec */
    case 1544:  /* neon_vcgev2sf_insn_unspec */
    case 1543:  /* neon_vcgtv2sf_insn_unspec */
    case 1542:  /* neon_vceqv2sf_insn_unspec */
    case 1501:  /* neon_vrsubhnv2di */
    case 1500:  /* neon_vsubhnv2di */
    case 1499:  /* neon_vrsubhnv4si */
    case 1498:  /* neon_vsubhnv4si */
    case 1497:  /* neon_vrsubhnv8hi */
    case 1496:  /* neon_vsubhnv8hi */
    case 1495:  /* neon_vhsubuv4si */
    case 1494:  /* neon_vhsubsv4si */
    case 1493:  /* neon_vhsubuv2si */
    case 1492:  /* neon_vhsubsv2si */
    case 1491:  /* neon_vhsubuv8hi */
    case 1490:  /* neon_vhsubsv8hi */
    case 1489:  /* neon_vhsubuv4hi */
    case 1488:  /* neon_vhsubsv4hi */
    case 1487:  /* neon_vhsubuv16qi */
    case 1486:  /* neon_vhsubsv16qi */
    case 1485:  /* neon_vhsubuv8qi */
    case 1484:  /* neon_vhsubsv8qi */
    case 1483:  /* neon_vqsubuv2di */
    case 1482:  /* neon_vqsubsv2di */
    case 1481:  /* neon_vqsubudi */
    case 1480:  /* neon_vqsubsdi */
    case 1479:  /* neon_vqsubuv4si */
    case 1478:  /* neon_vqsubsv4si */
    case 1477:  /* neon_vqsubuv2si */
    case 1476:  /* neon_vqsubsv2si */
    case 1475:  /* neon_vqsubuv8hi */
    case 1474:  /* neon_vqsubsv8hi */
    case 1473:  /* neon_vqsubuv4hi */
    case 1472:  /* neon_vqsubsv4hi */
    case 1471:  /* neon_vqsubuv16qi */
    case 1470:  /* neon_vqsubsv16qi */
    case 1469:  /* neon_vqsubuv8qi */
    case 1468:  /* neon_vqsubsv8qi */
    case 1467:  /* neon_vsubwuv2si */
    case 1466:  /* neon_vsubwsv2si */
    case 1465:  /* neon_vsubwuv4hi */
    case 1464:  /* neon_vsubwsv4hi */
    case 1463:  /* neon_vsubwuv8qi */
    case 1462:  /* neon_vsubwsv8qi */
    case 1461:  /* neon_vsubluv2si */
    case 1460:  /* neon_vsublsv2si */
    case 1459:  /* neon_vsubluv4hi */
    case 1458:  /* neon_vsublsv4hi */
    case 1457:  /* neon_vsubluv8qi */
    case 1456:  /* neon_vsublsv8qi */
    case 1455:  /* neon_vsubv4sf_unspec */
    case 1454:  /* neon_vsubv2sf_unspec */
    case 1453:  /* neon_vqdmullv2si */
    case 1452:  /* neon_vqdmullv4hi */
    case 1451:  /* neon_vmullpv2si */
    case 1450:  /* neon_vmulluv2si */
    case 1449:  /* neon_vmullsv2si */
    case 1448:  /* neon_vmullpv4hi */
    case 1447:  /* neon_vmulluv4hi */
    case 1446:  /* neon_vmullsv4hi */
    case 1445:  /* neon_vmullpv8qi */
    case 1444:  /* neon_vmulluv8qi */
    case 1443:  /* neon_vmullsv8qi */
    case 1442:  /* neon_vqdmlslv2si */
    case 1441:  /* neon_vqdmlslv4hi */
    case 1440:  /* neon_vqdmlalv2si */
    case 1439:  /* neon_vqdmlalv4hi */
    case 1438:  /* neon_vqrdmlshv4si */
    case 1437:  /* neon_vqrdmlahv4si */
    case 1436:  /* neon_vqrdmlshv8hi */
    case 1435:  /* neon_vqrdmlahv8hi */
    case 1434:  /* neon_vqrdmlshv2si */
    case 1433:  /* neon_vqrdmlahv2si */
    case 1432:  /* neon_vqrdmlshv4hi */
    case 1431:  /* neon_vqrdmlahv4hi */
    case 1430:  /* neon_vqrdmulhv4si */
    case 1429:  /* neon_vqdmulhv4si */
    case 1428:  /* neon_vqrdmulhv8hi */
    case 1427:  /* neon_vqdmulhv8hi */
    case 1426:  /* neon_vqrdmulhv2si */
    case 1425:  /* neon_vqdmulhv2si */
    case 1424:  /* neon_vqrdmulhv4hi */
    case 1423:  /* neon_vqdmulhv4hi */
    case 1422:  /* neon_vmlsluv2si */
    case 1421:  /* neon_vmlslsv2si */
    case 1420:  /* neon_vmlsluv4hi */
    case 1419:  /* neon_vmlslsv4hi */
    case 1418:  /* neon_vmlsluv8qi */
    case 1417:  /* neon_vmlslsv8qi */
    case 1416:  /* neon_vmlsv4sf_unspec */
    case 1415:  /* neon_vmlsv2sf_unspec */
    case 1414:  /* neon_vmlsv4si_unspec */
    case 1413:  /* neon_vmlsv2si_unspec */
    case 1412:  /* neon_vmlsv8hi_unspec */
    case 1411:  /* neon_vmlsv4hi_unspec */
    case 1410:  /* neon_vmlsv16qi_unspec */
    case 1409:  /* neon_vmlsv8qi_unspec */
    case 1408:  /* neon_vmlaluv2si */
    case 1407:  /* neon_vmlalsv2si */
    case 1406:  /* neon_vmlaluv4hi */
    case 1405:  /* neon_vmlalsv4hi */
    case 1404:  /* neon_vmlaluv8qi */
    case 1403:  /* neon_vmlalsv8qi */
    case 1402:  /* neon_vmlav4sf_unspec */
    case 1401:  /* neon_vmlav2sf_unspec */
    case 1400:  /* neon_vmlav4si_unspec */
    case 1399:  /* neon_vmlav2si_unspec */
    case 1398:  /* neon_vmlav8hi_unspec */
    case 1397:  /* neon_vmlav4hi_unspec */
    case 1396:  /* neon_vmlav16qi_unspec */
    case 1395:  /* neon_vmlav8qi_unspec */
    case 1394:  /* neon_vmulfv4hf */
    case 1393:  /* neon_vmulfv8hf */
    case 1392:  /* neon_vmulfv4sf */
    case 1391:  /* neon_vmulfv2sf */
    case 1390:  /* neon_vmulpv16qi */
    case 1389:  /* neon_vmulpv8qi */
    case 1388:  /* neon_vraddhnv2di */
    case 1387:  /* neon_vaddhnv2di */
    case 1386:  /* neon_vraddhnv4si */
    case 1385:  /* neon_vaddhnv4si */
    case 1384:  /* neon_vraddhnv8hi */
    case 1383:  /* neon_vaddhnv8hi */
    case 1382:  /* neon_vqadduv2di */
    case 1381:  /* neon_vqaddsv2di */
    case 1380:  /* neon_vqaddudi */
    case 1379:  /* neon_vqaddsdi */
    case 1378:  /* neon_vqadduv4si */
    case 1377:  /* neon_vqaddsv4si */
    case 1376:  /* neon_vqadduv2si */
    case 1375:  /* neon_vqaddsv2si */
    case 1374:  /* neon_vqadduv8hi */
    case 1373:  /* neon_vqaddsv8hi */
    case 1372:  /* neon_vqadduv4hi */
    case 1371:  /* neon_vqaddsv4hi */
    case 1370:  /* neon_vqadduv16qi */
    case 1369:  /* neon_vqaddsv16qi */
    case 1368:  /* neon_vqadduv8qi */
    case 1367:  /* neon_vqaddsv8qi */
    case 1366:  /* neon_vhadduv4si */
    case 1365:  /* neon_vhaddsv4si */
    case 1364:  /* neon_vrhadduv4si */
    case 1363:  /* neon_vrhaddsv4si */
    case 1362:  /* neon_vhadduv2si */
    case 1361:  /* neon_vhaddsv2si */
    case 1360:  /* neon_vrhadduv2si */
    case 1359:  /* neon_vrhaddsv2si */
    case 1358:  /* neon_vhadduv8hi */
    case 1357:  /* neon_vhaddsv8hi */
    case 1356:  /* neon_vrhadduv8hi */
    case 1355:  /* neon_vrhaddsv8hi */
    case 1354:  /* neon_vhadduv4hi */
    case 1353:  /* neon_vhaddsv4hi */
    case 1352:  /* neon_vrhadduv4hi */
    case 1351:  /* neon_vrhaddsv4hi */
    case 1350:  /* neon_vhadduv16qi */
    case 1349:  /* neon_vhaddsv16qi */
    case 1348:  /* neon_vrhadduv16qi */
    case 1347:  /* neon_vrhaddsv16qi */
    case 1346:  /* neon_vhadduv8qi */
    case 1345:  /* neon_vhaddsv8qi */
    case 1344:  /* neon_vrhadduv8qi */
    case 1343:  /* neon_vrhaddsv8qi */
    case 1342:  /* neon_vaddwuv2si */
    case 1341:  /* neon_vaddwsv2si */
    case 1340:  /* neon_vaddwuv4hi */
    case 1339:  /* neon_vaddwsv4hi */
    case 1338:  /* neon_vaddwuv8qi */
    case 1337:  /* neon_vaddwsv8qi */
    case 1336:  /* neon_vaddluv2si */
    case 1335:  /* neon_vaddlsv2si */
    case 1334:  /* neon_vaddluv4hi */
    case 1333:  /* neon_vaddlsv4hi */
    case 1332:  /* neon_vaddluv8qi */
    case 1331:  /* neon_vaddlsv8qi */
    case 1330:  /* neon_vaddv4sf_unspec */
    case 1329:  /* neon_vaddv2sf_unspec */
    case 1328:  /* *us_subv2sf_neon */
    case 1327:  /* *us_subv2si_neon */
    case 1326:  /* *us_subv4hi_neon */
    case 1325:  /* *us_subv8qi_neon */
    case 1324:  /* *ss_subv2sf_neon */
    case 1323:  /* *ss_subv2si_neon */
    case 1322:  /* *ss_subv4hi_neon */
    case 1321:  /* *ss_subv8qi_neon */
    case 1320:  /* *us_addv2sf_neon */
    case 1319:  /* *us_addv2si_neon */
    case 1318:  /* *us_addv4hi_neon */
    case 1317:  /* *us_addv8qi_neon */
    case 1316:  /* *ss_addv2sf_neon */
    case 1315:  /* *ss_addv2si_neon */
    case 1314:  /* *ss_addv4hi_neon */
    case 1313:  /* *ss_addv8qi_neon */
    case 1312:  /* neon_vpumaxv2si */
    case 1311:  /* neon_vpumaxv4hi */
    case 1310:  /* neon_vpumaxv8qi */
    case 1309:  /* neon_vpuminv2si */
    case 1308:  /* neon_vpuminv4hi */
    case 1307:  /* neon_vpuminv8qi */
    case 1306:  /* neon_vpsmaxv2sf */
    case 1305:  /* neon_vpsmaxv2si */
    case 1304:  /* neon_vpsmaxv4hi */
    case 1303:  /* neon_vpsmaxv8qi */
    case 1302:  /* neon_vpsminv2sf */
    case 1301:  /* neon_vpsminv2si */
    case 1300:  /* neon_vpsminv4hi */
    case 1299:  /* neon_vpsminv8qi */
    case 1298:  /* neon_vpaddv4hf */
    case 1297:  /* neon_vpadd_internalv2sf */
    case 1296:  /* neon_vpadd_internalv2si */
    case 1295:  /* neon_vpadd_internalv4hi */
    case 1294:  /* neon_vpadd_internalv8qi */
    case 1293:  /* arm_reduc_plus_internal_v2di */
    case 1292:  /* quad_halves_umaxv16qi */
    case 1291:  /* quad_halves_uminv16qi */
    case 1290:  /* quad_halves_smaxv16qi */
    case 1289:  /* quad_halves_sminv16qi */
    case 1288:  /* quad_halves_plusv16qi */
    case 1287:  /* quad_halves_umaxv8hi */
    case 1286:  /* quad_halves_uminv8hi */
    case 1285:  /* quad_halves_smaxv8hi */
    case 1284:  /* quad_halves_sminv8hi */
    case 1283:  /* quad_halves_plusv8hi */
    case 1282:  /* quad_halves_smaxv4sf */
    case 1281:  /* quad_halves_sminv4sf */
    case 1280:  /* quad_halves_plusv4sf */
    case 1279:  /* quad_halves_umaxv4si */
    case 1278:  /* quad_halves_uminv4si */
    case 1277:  /* quad_halves_smaxv4si */
    case 1276:  /* quad_halves_sminv4si */
    case 1275:  /* quad_halves_plusv4si */
    case 1274:  /* widen_usumv2si3 */
    case 1273:  /* widen_usumv4hi3 */
    case 1272:  /* widen_usumv8qi3 */
    case 1271:  /* vec_sel_widen_usum_hiv4siv2si3 */
    case 1270:  /* vec_sel_widen_usum_hiv4siv4hi3 */
    case 1269:  /* vec_sel_widen_usum_hiv4siv8qi3 */
    case 1268:  /* vec_sel_widen_usum_hiv8hiv2si3 */
    case 1267:  /* vec_sel_widen_usum_hiv8hiv4hi3 */
    case 1266:  /* vec_sel_widen_usum_hiv8hiv8qi3 */
    case 1265:  /* vec_sel_widen_usum_hiv16qiv2si3 */
    case 1264:  /* vec_sel_widen_usum_hiv16qiv4hi3 */
    case 1263:  /* vec_sel_widen_usum_hiv16qiv8qi3 */
    case 1262:  /* vec_sel_widen_usum_lov4siv2si3 */
    case 1261:  /* vec_sel_widen_usum_lov4siv4hi3 */
    case 1260:  /* vec_sel_widen_usum_lov4siv8qi3 */
    case 1259:  /* vec_sel_widen_usum_lov8hiv2si3 */
    case 1258:  /* vec_sel_widen_usum_lov8hiv4hi3 */
    case 1257:  /* vec_sel_widen_usum_lov8hiv8qi3 */
    case 1256:  /* vec_sel_widen_usum_lov16qiv2si3 */
    case 1255:  /* vec_sel_widen_usum_lov16qiv4hi3 */
    case 1254:  /* vec_sel_widen_usum_lov16qiv8qi3 */
    case 1253:  /* widen_ssumv2si3 */
    case 1252:  /* widen_ssumv4hi3 */
    case 1251:  /* widen_ssumv8qi3 */
    case 1250:  /* vec_sel_widen_ssum_hiv4siv2si3 */
    case 1249:  /* vec_sel_widen_ssum_hiv4siv4hi3 */
    case 1248:  /* vec_sel_widen_ssum_hiv4siv8qi3 */
    case 1247:  /* vec_sel_widen_ssum_hiv8hiv2si3 */
    case 1246:  /* vec_sel_widen_ssum_hiv8hiv4hi3 */
    case 1245:  /* vec_sel_widen_ssum_hiv8hiv8qi3 */
    case 1244:  /* vec_sel_widen_ssum_hiv16qiv2si3 */
    case 1243:  /* vec_sel_widen_ssum_hiv16qiv4hi3 */
    case 1242:  /* vec_sel_widen_ssum_hiv16qiv8qi3 */
    case 1241:  /* vec_sel_widen_ssum_lov4siv2si3 */
    case 1240:  /* vec_sel_widen_ssum_lov4siv4hi3 */
    case 1239:  /* vec_sel_widen_ssum_lov4siv8qi3 */
    case 1238:  /* vec_sel_widen_ssum_lov8hiv2si3 */
    case 1237:  /* vec_sel_widen_ssum_lov8hiv4hi3 */
    case 1236:  /* vec_sel_widen_ssum_lov8hiv8qi3 */
    case 1235:  /* vec_sel_widen_ssum_lov16qiv2si3 */
    case 1234:  /* vec_sel_widen_ssum_lov16qiv4hi3 */
    case 1233:  /* vec_sel_widen_ssum_lov16qiv8qi3 */
    case 1230:  /* lshrdi3_neon_imm_noclobber */
    case 1229:  /* ashrdi3_neon_imm_noclobber */
    case 1228:  /* unsigned_shift_di3_neon */
    case 1227:  /* signed_shift_di3_neon */
    case 1225:  /* ashldi3_neon_noclobber */
    case 1224:  /* neon_load_count */
    case 1223:  /* ashlv2di3_unsigned */
    case 1222:  /* ashlv4si3_unsigned */
    case 1221:  /* ashlv2si3_unsigned */
    case 1220:  /* ashlv8hi3_unsigned */
    case 1219:  /* ashlv4hi3_unsigned */
    case 1218:  /* ashlv16qi3_unsigned */
    case 1217:  /* ashlv8qi3_unsigned */
    case 1216:  /* ashlv2di3_signed */
    case 1215:  /* ashlv4si3_signed */
    case 1214:  /* ashlv2si3_signed */
    case 1213:  /* ashlv8hi3_signed */
    case 1212:  /* ashlv4hi3_signed */
    case 1211:  /* ashlv16qi3_signed */
    case 1210:  /* ashlv8qi3_signed */
    case 1209:  /* vlshrv4si3_imm */
    case 1208:  /* vlshrv2si3_imm */
    case 1207:  /* vlshrv8hi3_imm */
    case 1206:  /* vlshrv4hi3_imm */
    case 1205:  /* vlshrv16qi3_imm */
    case 1204:  /* vlshrv8qi3_imm */
    case 1203:  /* vashrv4si3_imm */
    case 1202:  /* vashrv2si3_imm */
    case 1201:  /* vashrv8hi3_imm */
    case 1200:  /* vashrv4hi3_imm */
    case 1199:  /* vashrv16qi3_imm */
    case 1198:  /* vashrv8qi3_imm */
    case 1197:  /* vashlv4si3 */
    case 1196:  /* vashlv2si3 */
    case 1195:  /* vashlv8hi3 */
    case 1194:  /* vashlv4hi3 */
    case 1193:  /* vashlv16qi3 */
    case 1192:  /* vashlv8qi3 */
    case 1191:  /* *smaxv4sf3_neon */
    case 1190:  /* *smaxv2sf3_neon */
    case 1189:  /* *smaxv4si3_neon */
    case 1188:  /* *smaxv2si3_neon */
    case 1187:  /* *smaxv8hi3_neon */
    case 1186:  /* *smaxv4hi3_neon */
    case 1185:  /* *smaxv16qi3_neon */
    case 1184:  /* *smaxv8qi3_neon */
    case 1183:  /* *sminv4sf3_neon */
    case 1182:  /* *sminv2sf3_neon */
    case 1181:  /* *sminv4si3_neon */
    case 1180:  /* *sminv2si3_neon */
    case 1179:  /* *sminv8hi3_neon */
    case 1178:  /* *sminv4hi3_neon */
    case 1177:  /* *sminv16qi3_neon */
    case 1176:  /* *sminv8qi3_neon */
    case 1175:  /* *umaxv4si3_neon */
    case 1174:  /* *umaxv2si3_neon */
    case 1173:  /* *umaxv8hi3_neon */
    case 1172:  /* *umaxv4hi3_neon */
    case 1171:  /* *umaxv16qi3_neon */
    case 1170:  /* *umaxv8qi3_neon */
    case 1169:  /* *uminv4si3_neon */
    case 1168:  /* *uminv2si3_neon */
    case 1167:  /* *uminv8hi3_neon */
    case 1166:  /* *uminv4hi3_neon */
    case 1165:  /* *uminv16qi3_neon */
    case 1164:  /* *uminv8qi3_neon */
    case 1163:  /* neon_vrsqrtev4hf */
    case 1162:  /* neon_vrsqrtev8hf */
    case 1161:  /* neon_vrndxv4hf */
    case 1160:  /* neon_vrndpv4hf */
    case 1159:  /* neon_vrndnv4hf */
    case 1158:  /* neon_vrndmv4hf */
    case 1157:  /* neon_vrndav4hf */
    case 1156:  /* neon_vrndv4hf */
    case 1155:  /* neon_vrndxv8hf */
    case 1154:  /* neon_vrndpv8hf */
    case 1153:  /* neon_vrndnv8hf */
    case 1152:  /* neon_vrndmv8hf */
    case 1151:  /* neon_vrndav8hf */
    case 1150:  /* neon_vrndv8hf */
    case 1149:  /* negv4hf2 */
    case 1148:  /* absv4hf2 */
    case 1147:  /* negv8hf2 */
    case 1146:  /* absv8hf2 */
    case 1144:  /* negv4sf2 */
    case 1143:  /* negv2sf2 */
    case 1142:  /* negv4si2 */
    case 1141:  /* negv2si2 */
    case 1140:  /* negv8hi2 */
    case 1139:  /* negv4hi2 */
    case 1138:  /* negv16qi2 */
    case 1137:  /* negv8qi2 */
    case 1136:  /* absv4sf2 */
    case 1135:  /* absv2sf2 */
    case 1134:  /* absv4si2 */
    case 1133:  /* absv2si2 */
    case 1132:  /* absv8hi2 */
    case 1131:  /* absv4hi2 */
    case 1130:  /* absv16qi2 */
    case 1129:  /* absv8qi2 */
    case 1128:  /* one_cmplv2di2 */
    case 1127:  /* one_cmplv4sf2 */
    case 1126:  /* one_cmplv2sf2 */
    case 1125:  /* one_cmplv8hf2 */
    case 1124:  /* one_cmplv4hf2 */
    case 1123:  /* one_cmplv4si2 */
    case 1122:  /* one_cmplv2si2 */
    case 1121:  /* one_cmplv8hi2 */
    case 1120:  /* one_cmplv4hi2 */
    case 1119:  /* one_cmplv16qi2 */
    case 1118:  /* one_cmplv8qi2 */
    case 1117:  /* xorv2di3 */
    case 1116:  /* xorv4sf3 */
    case 1115:  /* xorv2sf3 */
    case 1114:  /* xorv8hf3 */
    case 1113:  /* xorv4hf3 */
    case 1112:  /* xorv4si3 */
    case 1111:  /* xorv2si3 */
    case 1110:  /* xorv8hi3 */
    case 1109:  /* xorv4hi3 */
    case 1108:  /* xorv16qi3 */
    case 1107:  /* xorv8qi3 */
    case 1105:  /* bicv2di3_neon */
    case 1104:  /* bicv4sf3_neon */
    case 1103:  /* bicv2sf3_neon */
    case 1102:  /* bicv8hf3_neon */
    case 1101:  /* bicv4hf3_neon */
    case 1100:  /* bicv4si3_neon */
    case 1099:  /* bicv2si3_neon */
    case 1098:  /* bicv8hi3_neon */
    case 1097:  /* bicv4hi3_neon */
    case 1096:  /* bicv16qi3_neon */
    case 1095:  /* bicv8qi3_neon */
    case 1093:  /* ornv2di3_neon */
    case 1092:  /* ornv4sf3_neon */
    case 1091:  /* ornv2sf3_neon */
    case 1090:  /* ornv8hf3_neon */
    case 1089:  /* ornv4hf3_neon */
    case 1088:  /* ornv4si3_neon */
    case 1087:  /* ornv2si3_neon */
    case 1086:  /* ornv8hi3_neon */
    case 1085:  /* ornv4hi3_neon */
    case 1084:  /* ornv16qi3_neon */
    case 1083:  /* ornv8qi3_neon */
    case 1082:  /* andv2di3 */
    case 1081:  /* andv4sf3 */
    case 1080:  /* andv2sf3 */
    case 1079:  /* andv8hf3 */
    case 1078:  /* andv4hf3 */
    case 1077:  /* andv4si3 */
    case 1076:  /* andv2si3 */
    case 1075:  /* andv8hi3 */
    case 1074:  /* andv4hi3 */
    case 1073:  /* andv16qi3 */
    case 1072:  /* andv8qi3 */
    case 1071:  /* iorv2di3 */
    case 1070:  /* iorv4sf3 */
    case 1069:  /* iorv2sf3 */
    case 1068:  /* iorv8hf3 */
    case 1067:  /* iorv4hf3 */
    case 1066:  /* iorv4si3 */
    case 1065:  /* iorv2si3 */
    case 1064:  /* iorv8hi3 */
    case 1063:  /* iorv4hi3 */
    case 1062:  /* iorv16qi3 */
    case 1061:  /* iorv8qi3 */
    case 1060:  /* neon_vcvtauv4sfv4si */
    case 1059:  /* neon_vcvtmuv4sfv4si */
    case 1058:  /* neon_vcvtpuv4sfv4si */
    case 1057:  /* neon_vcvtav4sfv4si */
    case 1056:  /* neon_vcvtmv4sfv4si */
    case 1055:  /* neon_vcvtpv4sfv4si */
    case 1054:  /* neon_vcvtauv2sfv2si */
    case 1053:  /* neon_vcvtmuv2sfv2si */
    case 1052:  /* neon_vcvtpuv2sfv2si */
    case 1051:  /* neon_vcvtav2sfv2si */
    case 1050:  /* neon_vcvtmv2sfv2si */
    case 1049:  /* neon_vcvtpv2sfv2si */
    case 1048:  /* neon_vrintnv4sf */
    case 1047:  /* neon_vrintav4sf */
    case 1046:  /* neon_vrintxv4sf */
    case 1045:  /* neon_vrintmv4sf */
    case 1044:  /* neon_vrintzv4sf */
    case 1043:  /* neon_vrintpv4sf */
    case 1042:  /* neon_vrintnv2sf */
    case 1041:  /* neon_vrintav2sf */
    case 1040:  /* neon_vrintxv2sf */
    case 1039:  /* neon_vrintmv2sf */
    case 1038:  /* neon_vrintzv2sf */
    case 1037:  /* neon_vrintpv2sf */
    case 1036:  /* fmsubv4hf4_intrinsic */
    case 1035:  /* fmsubv8hf4_intrinsic */
    case 1034:  /* fmsubv4sf4_intrinsic */
    case 1033:  /* fmsubv2sf4_intrinsic */
    case 1032:  /* *fmsubv4sf4 */
    case 1031:  /* *fmsubv2sf4 */
    case 1030:  /* fmav4hf4_intrinsic */
    case 1029:  /* fmav8hf4_intrinsic */
    case 1028:  /* fmav4sf4_intrinsic */
    case 1027:  /* fmav2sf4_intrinsic */
    case 1026:  /* fmav4sf4 */
    case 1025:  /* fmav2sf4 */
    case 1024:  /* mulv4sf3negv4sfaddv4sf_neon */
    case 1023:  /* mulv2sf3negv2sfaddv2sf_neon */
    case 1022:  /* mulv4si3negv4siaddv4si_neon */
    case 1021:  /* mulv2si3negv2siaddv2si_neon */
    case 1020:  /* mulv8hi3negv8hiaddv8hi_neon */
    case 1019:  /* mulv4hi3negv4hiaddv4hi_neon */
    case 1018:  /* mulv16qi3negv16qiaddv16qi_neon */
    case 1017:  /* mulv8qi3negv8qiaddv8qi_neon */
    case 1016:  /* mulv4hf3addv4hf_neon */
    case 1015:  /* mulv8hf3addv8hf_neon */
    case 1014:  /* mulv4sf3addv4sf_neon */
    case 1013:  /* mulv2sf3addv2sf_neon */
    case 1012:  /* mulv4si3addv4si_neon */
    case 1011:  /* mulv2si3addv2si_neon */
    case 1010:  /* mulv8hi3addv8hi_neon */
    case 1009:  /* mulv4hi3addv4hi_neon */
    case 1008:  /* mulv16qi3addv16qi_neon */
    case 1007:  /* mulv8qi3addv8qi_neon */
    case 1006:  /* *mulv4sf3_neon */
    case 1005:  /* *mulv2sf3_neon */
    case 1004:  /* *mulv4si3_neon */
    case 1003:  /* *mulv2si3_neon */
    case 1002:  /* *mulv8hi3_neon */
    case 1001:  /* *mulv4hi3_neon */
    case 1000:  /* *mulv16qi3_neon */
    case 999:  /* *mulv8qi3_neon */
    case 997:  /* subv4hf3_fp16 */
    case 996:  /* subv8hf3_fp16 */
    case 995:  /* *subv2di3_neon */
    case 994:  /* *subv4sf3_neon */
    case 993:  /* *subv2sf3_neon */
    case 992:  /* *subv8hf3_neon */
    case 991:  /* *subv4hf3_neon */
    case 990:  /* *subv4si3_neon */
    case 989:  /* *subv2si3_neon */
    case 988:  /* *subv8hi3_neon */
    case 987:  /* *subv4hi3_neon */
    case 986:  /* *subv16qi3_neon */
    case 985:  /* *subv8qi3_neon */
    case 983:  /* addv4hf3_fp16 */
    case 982:  /* addv8hf3_fp16 */
    case 981:  /* *addv2di3_neon */
    case 980:  /* *addv4sf3_neon */
    case 979:  /* *addv2sf3_neon */
    case 978:  /* *addv8hf3_neon */
    case 977:  /* *addv4hf3_neon */
    case 976:  /* *addv4si3_neon */
    case 975:  /* *addv2si3_neon */
    case 974:  /* *addv8hi3_neon */
    case 973:  /* *addv4hi3_neon */
    case 972:  /* *addv16qi3_neon */
    case 971:  /* *addv8qi3_neon */
    case 970:  /* vec_extractv2di */
    case 969:  /* vec_extractv4sf */
    case 968:  /* vec_extractv4si */
    case 967:  /* vec_extractv8hf */
    case 966:  /* vec_extractv8hi */
    case 965:  /* vec_extractv16qi */
    case 964:  /* vec_extractv2sf */
    case 963:  /* vec_extractv2si */
    case 962:  /* vec_extractv4hf */
    case 961:  /* vec_extractv4hi */
    case 960:  /* vec_extractv8qi */
    case 959:  /* vec_setv2di_internal */
    case 958:  /* vec_setv4sf_internal */
    case 957:  /* vec_setv4si_internal */
    case 956:  /* vec_setv8hf_internal */
    case 955:  /* vec_setv8hi_internal */
    case 954:  /* vec_setv16qi_internal */
    case 953:  /* vec_setv2sf_internal */
    case 952:  /* vec_setv2si_internal */
    case 951:  /* vec_setv4hf_internal */
    case 950:  /* vec_setv4hi_internal */
    case 949:  /* vec_setv8qi_internal */
    case 948:  /* *movmisalignv2di_neon_load */
    case 947:  /* *movmisalignv4sf_neon_load */
    case 946:  /* *movmisalignv4si_neon_load */
    case 945:  /* *movmisalignv8hf_neon_load */
    case 944:  /* *movmisalignv8hi_neon_load */
    case 943:  /* *movmisalignv16qi_neon_load */
    case 942:  /* *movmisalignv2di_neon_store */
    case 941:  /* *movmisalignv4sf_neon_store */
    case 940:  /* *movmisalignv4si_neon_store */
    case 939:  /* *movmisalignv8hf_neon_store */
    case 938:  /* *movmisalignv8hi_neon_store */
    case 937:  /* *movmisalignv16qi_neon_store */
    case 936:  /* *movmisaligndi_neon_load */
    case 935:  /* *movmisalignv2sf_neon_load */
    case 934:  /* *movmisalignv2si_neon_load */
    case 933:  /* *movmisalignv4hf_neon_load */
    case 932:  /* *movmisalignv4hi_neon_load */
    case 931:  /* *movmisalignv8qi_neon_load */
    case 930:  /* *movmisaligndi_neon_store */
    case 929:  /* *movmisalignv2sf_neon_store */
    case 928:  /* *movmisalignv2si_neon_store */
    case 927:  /* *movmisalignv4hf_neon_store */
    case 926:  /* *movmisalignv4hi_neon_store */
    case 925:  /* *movmisalignv8qi_neon_store */
    case 924:  /* *neon_movxi */
    case 923:  /* *neon_movci */
    case 922:  /* *neon_movoi */
    case 921:  /* *neon_movei */
    case 657:  /* neon_vrndihf */
    case 656:  /* neon_vrndxhf */
    case 655:  /* neon_vrndphf */
    case 654:  /* neon_vrndnhf */
    case 653:  /* neon_vrndmhf */
    case 652:  /* neon_vrndahf */
    case 651:  /* neon_vrndhf */
      return IS_NEON_TYPE_YES;

    default:
      return IS_NEON_TYPE_NO;

    }
}

enum attr_mul64
get_attr_mul64 (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  enum attr_type cached_type ATTRIBUTE_UNUSED;

  switch (recog_memoized (insn))
    {
    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
      if (((cached_type = get_attr_type (insn)) == TYPE_SMLALXY) || ((cached_type == TYPE_UMULL) || ((cached_type == TYPE_UMULLS) || ((cached_type == TYPE_UMAAL) || ((cached_type == TYPE_UMLAL) || ((cached_type == TYPE_UMLALS) || ((cached_type == TYPE_SMULL) || ((cached_type == TYPE_SMULLS) || ((cached_type == TYPE_SMLAL) || (cached_type == TYPE_SMLALS))))))))))
        {
	  return MUL64_YES;
        }
      else
        {
	  return MUL64_NO;
        }

    case 3625:  /* *p *maddhidi4tt */
    case 3624:  /* *p *maddhidi4tb */
    case 3623:  /* *p maddhidi4 */
    case 3615:  /* *p *umulsi3_highpart_v6 */
    case 3614:  /* *p *umulsi3_highpart_nov6 */
    case 3613:  /* *p *smulsi3_highpart_v6 */
    case 3612:  /* *p *smulsi3_highpart_nov6 */
    case 3611:  /* *p *umulsidi3adddi_v6 */
    case 3610:  /* *p *umulsidi3adddi */
    case 3609:  /* *p *umulsidi3_v6 */
    case 3608:  /* *p *umulsidi3_nov6 */
    case 3607:  /* *p *mulsidi3_v6 */
    case 3606:  /* *p *mulsidi3_nov6 */
    case 3605:  /* *p *mulsidi3adddi_v6 */
    case 3604:  /* *p *mulsidi3adddi */
    case 78:  /* *maddhidi4tt */
    case 77:  /* *maddhidi4tb */
    case 76:  /* maddhidi4 */
    case 68:  /* *umulsi3_highpart_v6 */
    case 67:  /* *umulsi3_highpart_nov6 */
    case 66:  /* *smulsi3_highpart_v6 */
    case 65:  /* *smulsi3_highpart_nov6 */
    case 64:  /* *umulsidi3adddi_v6 */
    case 63:  /* *umulsidi3adddi */
    case 62:  /* *umulsidi3_v6 */
    case 61:  /* *umulsidi3_nov6 */
    case 60:  /* *mulsidi3_v6 */
    case 59:  /* *mulsidi3_nov6 */
    case 58:  /* *mulsidi3adddi_v6 */
    case 57:  /* *mulsidi3adddi */
      return MUL64_YES;

    default:
      return MUL64_NO;

    }
}

enum attr_mul32
get_attr_mul32 (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  enum attr_type cached_type ATTRIBUTE_UNUSED;

  switch (recog_memoized (insn))
    {
    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
      if (((cached_type = get_attr_type (insn)) == TYPE_SMULXY) || ((cached_type == TYPE_SMLAXY) || ((cached_type == TYPE_SMULWY) || ((cached_type == TYPE_SMLAWX) || ((cached_type == TYPE_MUL) || ((cached_type == TYPE_MULS) || ((cached_type == TYPE_MLA) || ((cached_type == TYPE_MLAS) || ((cached_type == TYPE_SMLAWY) || ((cached_type == TYPE_SMUAD) || ((cached_type == TYPE_SMUADX) || ((cached_type == TYPE_SMLAD) || ((cached_type == TYPE_SMLADX) || ((cached_type == TYPE_SMUSD) || ((cached_type == TYPE_SMUSDX) || ((cached_type == TYPE_SMLSD) || ((cached_type == TYPE_SMLSDX) || ((cached_type == TYPE_SMMUL) || ((cached_type == TYPE_SMMULR) || ((cached_type == TYPE_SMMLA) || ((cached_type == TYPE_SMLALD) || (cached_type == TYPE_SMLSLD))))))))))))))))))))))
        {
	  return MUL32_YES;
        }
      else
        {
	  return MUL32_NO;
        }

    case 4092:  /* *p *thumb2_mulsi_short */
    case 3622:  /* *p *maddhisi4tt */
    case 3621:  /* *p *maddhisi4tb */
    case 3620:  /* *p maddhisi4 */
    case 3619:  /* *p *mulhisi3tt */
    case 3618:  /* *p *mulhisi3bt */
    case 3617:  /* *p *mulhisi3tb */
    case 3616:  /* *p mulhisi3 */
    case 3603:  /* *p *mulsi3subsi */
    case 3602:  /* *p *mulsi3addsi_v6 */
    case 3601:  /* *p *mulsi3addsi */
    case 3600:  /* *p *arm_mulsi3_v6 */
    case 3599:  /* *p *arm_mulsi3 */
    case 897:  /* *thumb2_mulsi_short_compare0_scratch */
    case 896:  /* *thumb2_mulsi_short_compare0 */
    case 895:  /* *thumb2_mulsi_short */
    case 788:  /* *thumb_mulsi3_v6 */
    case 787:  /* *thumb_mulsi3 */
    case 75:  /* *maddhisi4tt */
    case 74:  /* *maddhisi4tb */
    case 73:  /* maddhisi4 */
    case 72:  /* *mulhisi3tt */
    case 71:  /* *mulhisi3bt */
    case 70:  /* *mulhisi3tb */
    case 69:  /* mulhisi3 */
    case 56:  /* *mulsi3subsi */
    case 55:  /* *mulsi3addsi_compare0_scratch_v6 */
    case 54:  /* *mulsi3addsi_compare0_scratch */
    case 53:  /* *mulsi3addsi_compare0_v6 */
    case 52:  /* *mulsi3addsi_compare0 */
    case 51:  /* *mulsi3addsi_v6 */
    case 50:  /* *mulsi3addsi */
    case 49:  /* *mulsi_compare0_scratch_v6 */
    case 48:  /* *mulsi_compare0_scratch */
    case 47:  /* *mulsi3_compare0_v6 */
    case 46:  /* *mulsi3_compare0 */
    case 45:  /* *arm_mulsi3_v6 */
    case 44:  /* *arm_mulsi3 */
      return MUL32_YES;

    default:
      return MUL32_NO;

    }
}

int
get_attr_neg_pool_range (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  switch (recog_memoized (insn))
    {
    case 4081:  /* *p *thumb2_movhi_insn */
    case 857:  /* *thumb2_movhi_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x1f))
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else
        {
	  return 250 /* 0xfa */;
        }

    case 4080:  /* *p *thumb2_movsi_insn */
    case 855:  /* *thumb2_movsi_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x1f))
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (((1 << which_alternative) & 0x60))
        {
	  return 0;
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }

    case 4007:  /* *p *thumb2_movhi_fp16 */
    case 4005:  /* *p *thumb2_movhi_vfp */
    case 629:  /* *thumb2_movhi_fp16 */
    case 627:  /* *thumb2_movhi_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x1f))
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 5)
        {
	  return 250 /* 0xfa */;
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }

    case 4006:  /* *p *arm_movhi_fp16 */
    case 4004:  /* *p *arm_movhi_vfp */
    case 628:  /* *arm_movhi_fp16 */
    case 626:  /* *arm_movhi_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0xf))
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 4)
        {
	  return 244 /* 0xf4 */;
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }

    case 412:  /* *cond_iwmmxt_movsi_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 2)
        {
	  return 4084 /* 0xff4 */;
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }

    case 3695:  /* *p *movhi_insn_arch4 */
    case 190:  /* *movhi_insn_arch4 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0xf))
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else
        {
	  return 244 /* 0xf4 */;
        }

    case 183:  /* pic_load_addr_unified */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 4084 /* 0xff4 */;
        }
      else
        {
	  return 0;
        }

    case 3692:  /* *p *arm_movsi_insn */
    case 182:  /* *arm_movsi_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0xf))
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 4)
        {
	  return 4084 /* 0xff4 */;
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }

    case 184:  /* pic_load_addr_32bit */
      if ((! (
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB))))
        {
	  return 4084 /* 0xff4 */;
        }
      else
        {
	  return 0;
        }

    case 411:  /* *iwmmxt_movsi_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 1)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 2)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 3)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 4)
        {
	  return 4084 /* 0xff4 */;
        }
      else if (which_alternative == 5)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 6)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 7)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 8)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 9)
        {
	  return 1012 /* 0x3f4 */;
        }
      else if (which_alternative == 10)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 11)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 12)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 13)
        {
	  return 1008 /* 0x3f0 */;
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }

    case 640:  /* *thumb2_movdf_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 1)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 2)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 3)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 4)
        {
	  return 1008 /* 0x3f0 */;
        }
      else if (which_alternative == 5)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 6)
        {
	  return 0;
        }
      else if (which_alternative == 7)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 8)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }

    case 908:  /* *neon_movv8qi */
    case 909:  /* *neon_movv4hi */
    case 910:  /* *neon_movv4hf */
    case 911:  /* *neon_movv2si */
    case 912:  /* *neon_movv2sf */
    case 913:  /* *neon_movdi */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 1)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 2)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 3)
        {
	  return 1004 /* 0x3ec */;
        }
      else if (which_alternative == 4)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 5)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 6)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 7)
        {
	  return 1004 /* 0x3ec */;
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }

    case 914:  /* *neon_movv16qi */
    case 915:  /* *neon_movv8hi */
    case 916:  /* *neon_movv8hf */
    case 917:  /* *neon_movv4si */
    case 918:  /* *neon_movv4sf */
    case 919:  /* *neon_movv2di */
    case 920:  /* *neon_movti */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 1)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 2)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 3)
        {
	  return 996 /* 0x3e4 */;
        }
      else if (which_alternative == 4)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 5)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 6)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 7)
        {
	  return 996 /* 0x3e4 */;
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }

    case 235:  /* *load_indirect_jump */
    case 3707:  /* *p *load_indirect_jump */
      return 4084 /* 0xff4 */;

    case 413:  /* movv2si_internal */
    case 414:  /* movv4hi_internal */
    case 415:  /* movv8qi_internal */
    case 3791:  /* *p movv2si_internal */
    case 3792:  /* *p movv4hi_internal */
    case 3793:  /* *p movv8qi_internal */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 1)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 2)
        {
	  return 244 /* 0xf4 */;
        }
      else if (which_alternative == 3)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 4)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 5)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 6)
        {
	  return 244 /* 0xf4 */;
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }

    case 630:  /* *arm_movsi_vfp */
    case 4008:  /* *p *arm_movsi_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 1)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 2)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 3)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 4)
        {
	  return 4084 /* 0xff4 */;
        }
      else if (which_alternative == 5)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 6)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 7)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 8)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 9)
        {
	  return 1008 /* 0x3f0 */;
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }

    case 631:  /* *thumb2_movsi_vfp */
    case 4009:  /* *p *thumb2_movsi_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 1)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 2)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 3)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 4)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 5)
        {
	  return 0;
        }
      else if (which_alternative == 6)
        {
	  return 0;
        }
      else if (which_alternative == 7)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 8)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 9)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 10)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 11)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 12)
        {
	  return 1008 /* 0x3f0 */;
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }

    case 632:  /* *movdi_vfp */
    case 633:  /* *movdi_vfp_cortexa8 */
    case 4010:  /* *p *movdi_vfp_cortexa8 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 1)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 2)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 3)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 4)
        {
	  return 1004 /* 0x3ec */;
        }
      else if (which_alternative == 5)
        {
	  return 0;
        }
      else if (which_alternative == 6)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 7)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 8)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 9)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 10)
        {
	  return 1004 /* 0x3ec */;
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }

    case 637:  /* *movsf_vfp */
    case 4012:  /* *p *movsf_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 1)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 2)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 3)
        {
	  return 1008 /* 0x3f0 */;
        }
      else if (which_alternative == 4)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 5)
        {
	  return 4080 /* 0xff0 */;
        }
      else if (which_alternative == 6)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 7)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }

    case 638:  /* *thumb2_movsf_vfp */
    case 4013:  /* *p *thumb2_movsf_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 1)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 2)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 3)
        {
	  return 1008 /* 0x3f0 */;
        }
      else if (which_alternative == 4)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 5)
        {
	  return 0;
        }
      else if (which_alternative == 6)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 7)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }

    case 639:  /* *movdf_vfp */
    case 4014:  /* *p *movdf_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 1)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 2)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 3)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 4)
        {
	  return 1004 /* 0x3ec */;
        }
      else if (which_alternative == 5)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 6)
        {
	  return 1004 /* 0x3ec */;
        }
      else if (which_alternative == 7)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else if (which_alternative == 8)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }

    case 879:  /* *thumb2_extendqisi_v6 */
    case 880:  /* *thumb2_zero_extendhisi2_v6 */
    case 881:  /* thumb2_zero_extendqisi2_v6 */
    case 4082:  /* *p *thumb2_extendqisi_v6 */
    case 4083:  /* *p *thumb2_zero_extendhisi2_v6 */
    case 4084:  /* *p thumb2_zero_extendqisi2_v6 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_neg_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_neg_pool_range (insn);
	    }
        }
      else
        {
	  return 250 /* 0xfa */;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
    default:
      if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
        {
	  return get_attr_thumb2_neg_pool_range (insn);
        }
      else
        {
	  return get_attr_arm_neg_pool_range (insn);
        }

    }
}

enum attr_nonce_enabled
get_attr_nonce_enabled (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  switch (recog_memoized (insn))
    {
    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
    default:
      return NONCE_ENABLED_YES;

    }
}

enum attr_opt_enabled
get_attr_opt_enabled (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  enum attr_opt cached_opt ATTRIBUTE_UNUSED;

  switch (recog_memoized (insn))
    {
    case 1232:  /* lshrdi3_neon */
    case 1231:  /* ashrdi3_neon */
    case 1226:  /* ashldi3_neon */
      extract_constrain_insn_cached (insn);
      if ((!((1 << which_alternative) & 0xc)) || ((((1 << which_alternative) & 0xc)) && (
#line 200 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(optimize_function_for_speed_p (cfun)))))
        {
	  return OPT_ENABLED_YES;
        }
      else
        {
	  return OPT_ENABLED_NO;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
      extract_constrain_insn_cached (insn);
      if ((cached_opt = get_attr_opt (insn)) == OPT_ANY)
        {
	  return OPT_ENABLED_YES;
        }
      else if ((cached_opt == OPT_SPEED) && (
#line 200 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(optimize_function_for_speed_p (cfun))))
        {
	  return OPT_ENABLED_YES;
        }
      else if ((cached_opt == OPT_SIZE) && (
#line 204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(optimize_function_for_size_p (cfun))))
        {
	  return OPT_ENABLED_YES;
        }
      else
        {
	  return OPT_ENABLED_NO;
        }

    default:
      return OPT_ENABLED_YES;

    }
}

enum attr_opt
get_attr_opt (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  switch (recog_memoized (insn))
    {
    case 1232:  /* lshrdi3_neon */
    case 1231:  /* ashrdi3_neon */
    case 1226:  /* ashldi3_neon */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return OPT_ANY;
        }
      else if (((1 << which_alternative) & 0xc))
        {
	  return OPT_SPEED;
        }
      else
        {
	  return OPT_ANY;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
    default:
      return OPT_ANY;

    }
}

enum attr_predicable
get_attr_predicable (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  switch (recog_memoized (insn))
    {
    case 853:  /* *thumb2_neg_abssi2 */
    case 852:  /* *thumb2_abssi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return PREDICABLE_YES;
        }
      else
        {
	  return PREDICABLE_NO;
        }

    case 639:  /* *movdf_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7))
        {
	  return PREDICABLE_YES;
        }
      else if (which_alternative == 3)
        {
	  return PREDICABLE_NO;
        }
      else
        {
	  return PREDICABLE_YES;
        }

    case 634:  /* *movhf_vfp_fp16 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return PREDICABLE_YES;
        }
      else if (which_alternative == 2)
        {
	  return PREDICABLE_NO;
        }
      else if (which_alternative == 3)
        {
	  return PREDICABLE_YES;
        }
      else
        {
	  return PREDICABLE_NO;
        }

    case 629:  /* *thumb2_movhi_fp16 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3f))
        {
	  return PREDICABLE_YES;
        }
      else if (((1 << which_alternative) & 0xc0))
        {
	  return PREDICABLE_NO;
        }
      else
        {
	  return PREDICABLE_YES;
        }

    case 628:  /* *arm_movhi_fp16 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x1f))
        {
	  return PREDICABLE_YES;
        }
      else if (((1 << which_alternative) & 0x60))
        {
	  return PREDICABLE_NO;
        }
      else
        {
	  return PREDICABLE_YES;
        }

    case 156:  /* one_cmpldi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return PREDICABLE_NO;
        }
      else if (((1 << which_alternative) & 0x6))
        {
	  return PREDICABLE_YES;
        }
      else
        {
	  return PREDICABLE_NO;
        }

    case 328:  /* *arm_rev */
    case 154:  /* *arm_abssi2 */
    case 155:  /* *arm_neg_abssi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return PREDICABLE_NO;
        }
      else
        {
	  return PREDICABLE_YES;
        }

    case 4:  /* *arm_addsi3 */
    case 12:  /* *addsi3_compare0_scratch */
    case 13:  /* *compare_negsi_si */
    case 17:  /* *compare_addsi2_op0 */
    case 18:  /* *compare_addsi2_op1 */
    case 19:  /* *addsi3_carryin_ltu */
    case 20:  /* *addsi3_carryin_geu */
    case 21:  /* *addsi3_carryin_alt2_ltu */
    case 22:  /* *addsi3_carryin_alt2_geu */
    case 23:  /* *addsi3_carryin_shift_ltu */
    case 24:  /* *addsi3_carryin_shift_geu */
    case 29:  /* *subsi3_carryin */
    case 33:  /* *subsi3_carryin_shift */
    case 34:  /* *rsbsi3_carryin_shift */
    case 41:  /* *arm_subsi3_insn */
    case 44:  /* *arm_mulsi3 */
    case 45:  /* *arm_mulsi3_v6 */
    case 50:  /* *mulsi3addsi */
    case 51:  /* *mulsi3addsi_v6 */
    case 56:  /* *mulsi3subsi */
    case 57:  /* *mulsidi3adddi */
    case 58:  /* *mulsidi3adddi_v6 */
    case 59:  /* *mulsidi3_nov6 */
    case 60:  /* *mulsidi3_v6 */
    case 61:  /* *umulsidi3_nov6 */
    case 62:  /* *umulsidi3_v6 */
    case 63:  /* *umulsidi3adddi */
    case 64:  /* *umulsidi3adddi_v6 */
    case 65:  /* *smulsi3_highpart_nov6 */
    case 66:  /* *smulsi3_highpart_v6 */
    case 67:  /* *umulsi3_highpart_nov6 */
    case 68:  /* *umulsi3_highpart_v6 */
    case 69:  /* mulhisi3 */
    case 70:  /* *mulhisi3tb */
    case 71:  /* *mulhisi3bt */
    case 72:  /* *mulhisi3tt */
    case 73:  /* maddhisi4 */
    case 74:  /* *maddhisi4tb */
    case 75:  /* *maddhisi4tt */
    case 76:  /* maddhidi4 */
    case 77:  /* *maddhidi4tb */
    case 78:  /* *maddhidi4tt */
    case 82:  /* *arm_andsi3_insn */
    case 85:  /* *zeroextractsi_compare0_scratch */
    case 90:  /* insv_zero */
    case 91:  /* insv_t2 */
    case 92:  /* *anddi_notdi_di */
    case 93:  /* *anddi_notzesidi_di */
    case 94:  /* *anddi_notdi_zesidi */
    case 95:  /* *anddi_notsesidi_di */
    case 96:  /* andsi_notsi_si */
    case 97:  /* andsi_not_shiftsi_si */
    case 98:  /* andsi_not_shiftsi_si_scc_no_reuse */
    case 99:  /* andsi_not_shiftsi_si_scc */
    case 103:  /* *iordi_zesidi_di */
    case 104:  /* *iordi_sesidi_di */
    case 105:  /* *iorsi3_insn */
    case 109:  /* *xordi_zesidi_di */
    case 110:  /* *xordi_sesidi_di */
    case 111:  /* *arm_xorsi3 */
    case 114:  /* *andsi_iorsi3_notsi */
    case 115:  /* *smax_0 */
    case 116:  /* *smax_m1 */
    case 118:  /* *smin_0 */
    case 125:  /* *satsi_smax */
    case 126:  /* *satsi_smin */
    case 127:  /* *satsi_smax_shift */
    case 128:  /* *satsi_smin_shift */
    case 132:  /* *arm_shiftsi3 */
    case 135:  /* *not_shiftsi */
    case 138:  /* unaligned_loadsi */
    case 139:  /* unaligned_loadhis */
    case 140:  /* unaligned_loadhiu */
    case 141:  /* unaligned_storesi */
    case 142:  /* unaligned_storehi */
    case 143:  /* *extv_reg */
    case 144:  /* extzv_t2 */
    case 145:  /* divsi3 */
    case 146:  /* udivsi3 */
    case 150:  /* *arm_negsi2 */
    case 157:  /* *arm_one_cmplsi2 */
    case 160:  /* zero_extendqidi2 */
    case 161:  /* zero_extendhidi2 */
    case 162:  /* zero_extendsidi2 */
    case 163:  /* extendqidi2 */
    case 164:  /* extendhidi2 */
    case 165:  /* extendsidi2 */
    case 166:  /* *arm_zero_extendhisi2 */
    case 167:  /* *arm_zero_extendhisi2_v6 */
    case 168:  /* *arm_zero_extendhisi2addsi */
    case 169:  /* *arm_zero_extendqisi2 */
    case 170:  /* *arm_zero_extendqisi2_v6 */
    case 171:  /* *arm_zero_extendqisi2addsi */
    case 172:  /* *compareqi_eq0 */
    case 173:  /* *arm_extendhisi2 */
    case 174:  /* *arm_extendhisi2_v6 */
    case 176:  /* *arm_extendqihi_insn */
    case 177:  /* *arm_extendqisi */
    case 178:  /* *arm_extendqisi_v6 */
    case 179:  /* *arm_extendqisi2addsi */
    case 181:  /* *arm_movt */
    case 182:  /* *arm_movsi_insn */
    case 187:  /* pic_add_dot_plus_eight */
    case 188:  /* tls_load_dot_plus_eight */
    case 190:  /* *movhi_insn_arch4 */
    case 191:  /* *movhi_bytes */
    case 192:  /* *arm_movqi_insn */
    case 193:  /* *arm32_movhf */
    case 194:  /* *arm_movsf_soft_insn */
    case 196:  /* *arm_cmpsi_insn */
    case 199:  /* *arm_cmpsi_negshiftsi_si */
    case 214:  /* *arm_jump */
    case 223:  /* *arm_return */
    case 228:  /* *arm_simple_return */
    case 231:  /* probe_stack */
    case 234:  /* *arm_indirect_jump */
    case 235:  /* *load_indirect_jump */
    case 238:  /* *add_multsi */
    case 239:  /* *rsb_multsi */
    case 240:  /* *orr_multsi */
    case 241:  /* *eor_multsi */
    case 242:  /* *and_multsi */
    case 243:  /* *add_shiftsi */
    case 244:  /* *rsb_shiftsi */
    case 245:  /* *orr_shiftsi */
    case 246:  /* *eor_shiftsi */
    case 247:  /* *and_shiftsi */
    case 250:  /* *sub_shiftsi */
    case 299:  /* *arith_adjacentmem */
    case 305:  /* *load_multiple_with_writeback */
    case 306:  /* *pop_multiple_with_writeback_and_return */
    case 307:  /* *pop_multiple_with_return */
    case 308:  /* *ldr_with_return */
    case 318:  /* clzsi2 */
    case 319:  /* rbitsi2 */
    case 324:  /* load_tp_hard */
    case 327:  /* *arm_movtas_ze */
    case 333:  /* *thumb2_ldrd */
    case 334:  /* *thumb2_ldrd_base */
    case 335:  /* *thumb2_ldrd_base_neg */
    case 336:  /* *thumb2_strd */
    case 337:  /* *thumb2_strd_base */
    case 338:  /* *thumb2_strd_base_neg */
    case 345:  /* *ldm4_ */
    case 347:  /* *ldm4_ia_update */
    case 349:  /* *stm4_ */
    case 350:  /* *stm4_ia_update */
    case 352:  /* *ldm4_ib */
    case 353:  /* *ldm4_ib_update */
    case 354:  /* *stm4_ib */
    case 355:  /* *stm4_ib_update */
    case 356:  /* *ldm4_da */
    case 357:  /* *ldm4_da_update */
    case 358:  /* *stm4_da */
    case 359:  /* *stm4_da_update */
    case 360:  /* *ldm4_db */
    case 361:  /* *ldm4_db_update */
    case 362:  /* *stm4_db */
    case 363:  /* *stm4_db_update */
    case 364:  /* *ldm3_ */
    case 366:  /* *ldm3_ia_update */
    case 368:  /* *stm3_ */
    case 369:  /* *stm3_ia_update */
    case 371:  /* *ldm3_ib */
    case 372:  /* *ldm3_ib_update */
    case 373:  /* *stm3_ib */
    case 374:  /* *stm3_ib_update */
    case 375:  /* *ldm3_da */
    case 376:  /* *ldm3_da_update */
    case 377:  /* *stm3_da */
    case 378:  /* *stm3_da_update */
    case 379:  /* *ldm3_db */
    case 380:  /* *ldm3_db_update */
    case 381:  /* *stm3_db */
    case 382:  /* *stm3_db_update */
    case 383:  /* *ldm2_ */
    case 385:  /* *ldm2_ia_update */
    case 387:  /* *stm2_ */
    case 388:  /* *stm2_ia_update */
    case 390:  /* *ldm2_ib */
    case 391:  /* *ldm2_ib_update */
    case 392:  /* *stm2_ib */
    case 393:  /* *stm2_ib_update */
    case 394:  /* *ldm2_da */
    case 395:  /* *ldm2_da_update */
    case 396:  /* *stm2_da */
    case 397:  /* *stm2_da_update */
    case 398:  /* *ldm2_db */
    case 399:  /* *ldm2_db_update */
    case 400:  /* *stm2_db */
    case 401:  /* *stm2_db_update */
    case 402:  /* *load_multiple */
    case 403:  /* tbcstv8qi */
    case 404:  /* tbcstv4hi */
    case 405:  /* tbcstv2si */
    case 406:  /* iwmmxt_iordi3 */
    case 407:  /* iwmmxt_xordi3 */
    case 408:  /* iwmmxt_anddi3 */
    case 409:  /* iwmmxt_nanddi3 */
    case 413:  /* movv2si_internal */
    case 414:  /* movv4hi_internal */
    case 415:  /* movv8qi_internal */
    case 416:  /* *andv2si3_iwmmxt */
    case 417:  /* *andv4hi3_iwmmxt */
    case 418:  /* *andv8qi3_iwmmxt */
    case 419:  /* *iorv2si3_iwmmxt */
    case 420:  /* *iorv4hi3_iwmmxt */
    case 421:  /* *iorv8qi3_iwmmxt */
    case 422:  /* *xorv2si3_iwmmxt */
    case 423:  /* *xorv4hi3_iwmmxt */
    case 424:  /* *xorv8qi3_iwmmxt */
    case 425:  /* *addv2si3_iwmmxt */
    case 426:  /* *addv4hi3_iwmmxt */
    case 427:  /* *addv8qi3_iwmmxt */
    case 428:  /* ssaddv8qi3 */
    case 429:  /* ssaddv4hi3 */
    case 430:  /* ssaddv2si3 */
    case 431:  /* usaddv8qi3 */
    case 432:  /* usaddv4hi3 */
    case 433:  /* usaddv2si3 */
    case 434:  /* *subv2si3_iwmmxt */
    case 435:  /* *subv4hi3_iwmmxt */
    case 436:  /* *subv8qi3_iwmmxt */
    case 437:  /* sssubv8qi3 */
    case 438:  /* sssubv4hi3 */
    case 439:  /* sssubv2si3 */
    case 440:  /* ussubv8qi3 */
    case 441:  /* ussubv4hi3 */
    case 442:  /* ussubv2si3 */
    case 443:  /* *mulv4hi3_iwmmxt */
    case 444:  /* smulv4hi3_highpart */
    case 445:  /* umulv4hi3_highpart */
    case 446:  /* iwmmxt_wmacs */
    case 447:  /* iwmmxt_wmacsz */
    case 448:  /* iwmmxt_wmacu */
    case 449:  /* iwmmxt_wmacuz */
    case 450:  /* iwmmxt_clrdi */
    case 451:  /* iwmmxt_clrv8qi */
    case 452:  /* iwmmxt_clrv4hi */
    case 453:  /* iwmmxt_clrv2si */
    case 454:  /* iwmmxt_uavgrndv8qi3 */
    case 455:  /* iwmmxt_uavgrndv4hi3 */
    case 456:  /* iwmmxt_uavgv8qi3 */
    case 457:  /* iwmmxt_uavgv4hi3 */
    case 458:  /* iwmmxt_tinsrb */
    case 459:  /* iwmmxt_tinsrh */
    case 460:  /* iwmmxt_tinsrw */
    case 461:  /* iwmmxt_textrmub */
    case 462:  /* iwmmxt_textrmsb */
    case 463:  /* iwmmxt_textrmuh */
    case 464:  /* iwmmxt_textrmsh */
    case 465:  /* iwmmxt_textrmw */
    case 466:  /* iwmmxt_wshufh */
    case 467:  /* eqv8qi3 */
    case 468:  /* eqv4hi3 */
    case 469:  /* eqv2si3 */
    case 470:  /* gtuv8qi3 */
    case 471:  /* gtuv4hi3 */
    case 472:  /* gtuv2si3 */
    case 473:  /* gtv8qi3 */
    case 474:  /* gtv4hi3 */
    case 475:  /* gtv2si3 */
    case 476:  /* *smaxv2si3_iwmmxt */
    case 477:  /* *smaxv4hi3_iwmmxt */
    case 478:  /* *smaxv8qi3_iwmmxt */
    case 479:  /* *umaxv2si3_iwmmxt */
    case 480:  /* *umaxv4hi3_iwmmxt */
    case 481:  /* *umaxv8qi3_iwmmxt */
    case 482:  /* *sminv2si3_iwmmxt */
    case 483:  /* *sminv4hi3_iwmmxt */
    case 484:  /* *sminv8qi3_iwmmxt */
    case 485:  /* *uminv2si3_iwmmxt */
    case 486:  /* *uminv4hi3_iwmmxt */
    case 487:  /* *uminv8qi3_iwmmxt */
    case 488:  /* iwmmxt_wpackhss */
    case 489:  /* iwmmxt_wpackwss */
    case 490:  /* iwmmxt_wpackdss */
    case 491:  /* iwmmxt_wpackhus */
    case 492:  /* iwmmxt_wpackwus */
    case 493:  /* iwmmxt_wpackdus */
    case 494:  /* iwmmxt_wunpckihb */
    case 495:  /* iwmmxt_wunpckihh */
    case 496:  /* iwmmxt_wunpckihw */
    case 497:  /* iwmmxt_wunpckilb */
    case 498:  /* iwmmxt_wunpckilh */
    case 499:  /* iwmmxt_wunpckilw */
    case 500:  /* iwmmxt_wunpckehub */
    case 501:  /* iwmmxt_wunpckehuh */
    case 502:  /* iwmmxt_wunpckehuw */
    case 503:  /* iwmmxt_wunpckehsb */
    case 504:  /* iwmmxt_wunpckehsh */
    case 505:  /* iwmmxt_wunpckehsw */
    case 506:  /* iwmmxt_wunpckelub */
    case 507:  /* iwmmxt_wunpckeluh */
    case 508:  /* iwmmxt_wunpckeluw */
    case 509:  /* iwmmxt_wunpckelsb */
    case 510:  /* iwmmxt_wunpckelsh */
    case 511:  /* iwmmxt_wunpckelsw */
    case 512:  /* rorv4hi3 */
    case 513:  /* rorv2si3 */
    case 514:  /* rordi3 */
    case 515:  /* ashrv4hi3_iwmmxt */
    case 516:  /* ashrv2si3_iwmmxt */
    case 517:  /* ashrdi3_iwmmxt */
    case 518:  /* lshrv4hi3_iwmmxt */
    case 519:  /* lshrv2si3_iwmmxt */
    case 520:  /* lshrdi3_iwmmxt */
    case 521:  /* ashlv4hi3_iwmmxt */
    case 522:  /* ashlv2si3_iwmmxt */
    case 523:  /* ashldi3_iwmmxt */
    case 524:  /* rorv4hi3_di */
    case 525:  /* rorv2si3_di */
    case 526:  /* rordi3_di */
    case 527:  /* ashrv4hi3_di */
    case 528:  /* ashrv2si3_di */
    case 529:  /* ashrdi3_di */
    case 530:  /* lshrv4hi3_di */
    case 531:  /* lshrv2si3_di */
    case 532:  /* lshrdi3_di */
    case 533:  /* ashlv4hi3_di */
    case 534:  /* ashlv2si3_di */
    case 535:  /* ashldi3_di */
    case 536:  /* iwmmxt_wmadds */
    case 537:  /* iwmmxt_wmaddu */
    case 538:  /* iwmmxt_tmia */
    case 539:  /* iwmmxt_tmiaph */
    case 540:  /* iwmmxt_tmiabb */
    case 541:  /* iwmmxt_tmiatb */
    case 542:  /* iwmmxt_tmiabt */
    case 543:  /* iwmmxt_tmiatt */
    case 544:  /* iwmmxt_tmovmskb */
    case 545:  /* iwmmxt_tmovmskh */
    case 546:  /* iwmmxt_tmovmskw */
    case 547:  /* iwmmxt_waccb */
    case 548:  /* iwmmxt_wacch */
    case 549:  /* iwmmxt_waccw */
    case 550:  /* iwmmxt_waligni */
    case 551:  /* iwmmxt_walignr */
    case 552:  /* iwmmxt_walignr0 */
    case 553:  /* iwmmxt_walignr1 */
    case 554:  /* iwmmxt_walignr2 */
    case 555:  /* iwmmxt_walignr3 */
    case 556:  /* iwmmxt_wsadb */
    case 557:  /* iwmmxt_wsadh */
    case 558:  /* iwmmxt_wsadbz */
    case 559:  /* iwmmxt_wsadhz */
    case 560:  /* iwmmxt_wabsv2si3 */
    case 561:  /* iwmmxt_wabsv4hi3 */
    case 562:  /* iwmmxt_wabsv8qi3 */
    case 563:  /* iwmmxt_wabsdiffb */
    case 564:  /* iwmmxt_wabsdiffh */
    case 565:  /* iwmmxt_wabsdiffw */
    case 566:  /* iwmmxt_waddsubhx */
    case 567:  /* iwmmxt_wsubaddhx */
    case 568:  /* addcv4hi3 */
    case 569:  /* addcv2si3 */
    case 570:  /* iwmmxt_avg4 */
    case 571:  /* iwmmxt_avg4r */
    case 572:  /* iwmmxt_wmaddsx */
    case 573:  /* iwmmxt_wmaddux */
    case 574:  /* iwmmxt_wmaddsn */
    case 575:  /* iwmmxt_wmaddun */
    case 576:  /* iwmmxt_wmulwsm */
    case 577:  /* iwmmxt_wmulwum */
    case 578:  /* iwmmxt_wmulsmr */
    case 579:  /* iwmmxt_wmulumr */
    case 580:  /* iwmmxt_wmulwsmr */
    case 581:  /* iwmmxt_wmulwumr */
    case 582:  /* iwmmxt_wmulwl */
    case 583:  /* iwmmxt_wqmulm */
    case 584:  /* iwmmxt_wqmulwm */
    case 585:  /* iwmmxt_wqmulmr */
    case 586:  /* iwmmxt_wqmulwmr */
    case 587:  /* iwmmxt_waddbhusm */
    case 588:  /* iwmmxt_waddbhusl */
    case 589:  /* iwmmxt_wqmiabb */
    case 590:  /* iwmmxt_wqmiabt */
    case 591:  /* iwmmxt_wqmiatb */
    case 592:  /* iwmmxt_wqmiatt */
    case 593:  /* iwmmxt_wqmiabbn */
    case 594:  /* iwmmxt_wqmiabtn */
    case 595:  /* iwmmxt_wqmiatbn */
    case 596:  /* iwmmxt_wqmiattn */
    case 597:  /* iwmmxt_wmiabb */
    case 598:  /* iwmmxt_wmiabt */
    case 599:  /* iwmmxt_wmiatb */
    case 600:  /* iwmmxt_wmiatt */
    case 601:  /* iwmmxt_wmiabbn */
    case 602:  /* iwmmxt_wmiabtn */
    case 603:  /* iwmmxt_wmiatbn */
    case 604:  /* iwmmxt_wmiattn */
    case 605:  /* iwmmxt_wmiawbb */
    case 606:  /* iwmmxt_wmiawbt */
    case 607:  /* iwmmxt_wmiawtb */
    case 608:  /* iwmmxt_wmiawtt */
    case 609:  /* iwmmxt_wmiawbbn */
    case 610:  /* iwmmxt_wmiawbtn */
    case 611:  /* iwmmxt_wmiawtbn */
    case 612:  /* iwmmxt_wmiawttn */
    case 613:  /* iwmmxt_wmerge */
    case 614:  /* iwmmxt_tandcv2si3 */
    case 615:  /* iwmmxt_tandcv4hi3 */
    case 616:  /* iwmmxt_tandcv8qi3 */
    case 617:  /* iwmmxt_torcv2si3 */
    case 618:  /* iwmmxt_torcv4hi3 */
    case 619:  /* iwmmxt_torcv8qi3 */
    case 620:  /* iwmmxt_torvscv2si3 */
    case 621:  /* iwmmxt_torvscv4hi3 */
    case 622:  /* iwmmxt_torvscv8qi3 */
    case 623:  /* iwmmxt_textrcv2si3 */
    case 624:  /* iwmmxt_textrcv4hi3 */
    case 625:  /* iwmmxt_textrcv8qi3 */
    case 626:  /* *arm_movhi_vfp */
    case 627:  /* *thumb2_movhi_vfp */
    case 630:  /* *arm_movsi_vfp */
    case 631:  /* *thumb2_movsi_vfp */
    case 633:  /* *movdi_vfp_cortexa8 */
    case 637:  /* *movsf_vfp */
    case 638:  /* *thumb2_movsf_vfp */
    case 645:  /* *abssf2_vfp */
    case 646:  /* *absdf2_vfp */
    case 647:  /* *negsf2_vfp */
    case 648:  /* *negdf2_vfp */
    case 659:  /* *addsf3_vfp */
    case 660:  /* *adddf3_vfp */
    case 662:  /* *subsf3_vfp */
    case 663:  /* *subdf3_vfp */
    case 665:  /* *divsf3_vfp */
    case 666:  /* *divdf3_vfp */
    case 668:  /* *mulsf3_vfp */
    case 669:  /* *muldf3_vfp */
    case 672:  /* *mulsf3negsf_vfp */
    case 673:  /* *negmulsf3_vfp */
    case 674:  /* *muldf3negdf_vfp */
    case 675:  /* *negmuldf3_vfp */
    case 677:  /* *mulsf3addsf_vfp */
    case 678:  /* *muldf3adddf_vfp */
    case 680:  /* *mulsf3subsf_vfp */
    case 681:  /* *muldf3subdf_vfp */
    case 683:  /* *mulsf3negsfaddsf_vfp */
    case 684:  /* *fmuldf3negdfadddf_vfp */
    case 686:  /* *mulsf3negsfsubsf_vfp */
    case 687:  /* *muldf3negdfsubdf_vfp */
    case 689:  /* fmasf4 */
    case 690:  /* fmadf4 */
    case 692:  /* *fmsubsf4 */
    case 693:  /* *fmsubdf4 */
    case 695:  /* *fnmsubsf4 */
    case 696:  /* *fnmsubdf4 */
    case 698:  /* *fnmaddsf4 */
    case 699:  /* *fnmadddf4 */
    case 700:  /* *extendsfdf2_vfp */
    case 701:  /* *truncdfsf2_vfp */
    case 702:  /* extendhfsf2 */
    case 703:  /* truncsfhf2 */
    case 704:  /* *truncsisf2_vfp */
    case 705:  /* *truncsidf2_vfp */
    case 706:  /* fixuns_truncsfsi2 */
    case 707:  /* fixuns_truncdfsi2 */
    case 708:  /* *floatsisf2_vfp */
    case 709:  /* *floatsidf2_vfp */
    case 710:  /* floatunssisf2 */
    case 711:  /* floatunssidf2 */
    case 714:  /* *sqrtsf2_vfp */
    case 715:  /* *sqrtdf2_vfp */
    case 721:  /* *cmpsf_vfp */
    case 722:  /* *cmpsf_trap_vfp */
    case 723:  /* *cmpdf_vfp */
    case 724:  /* *cmpdf_trap_vfp */
    case 725:  /* *combine_vcvt_f32_u32 */
    case 726:  /* *combine_vcvt_f32_s32 */
    case 727:  /* *combine_vcvt_f64_u32 */
    case 728:  /* *combine_vcvt_f64_s32 */
    case 729:  /* *combine_vcvtf2i */
    case 747:  /* btruncsf2 */
    case 750:  /* nearbyintsf2 */
    case 751:  /* rintsf2 */
    case 753:  /* btruncdf2 */
    case 756:  /* nearbyintdf2 */
    case 757:  /* rintdf2 */
    case 846:  /* *thumb_andsi_not_shiftsi_si */
    case 854:  /* *thumb2_pop_single */
    case 855:  /* *thumb2_movsi_insn */
    case 857:  /* *thumb2_movhi_insn */
    case 879:  /* *thumb2_extendqisi_v6 */
    case 880:  /* *thumb2_zero_extendhisi2_v6 */
    case 881:  /* thumb2_zero_extendqisi2_v6 */
    case 886:  /* *thumb2_alusi3_short */
    case 887:  /* *thumb2_shiftsi3_short */
    case 888:  /* *thumb2_movqi_shortim */
    case 889:  /* *thumb2_movhi_shortim */
    case 890:  /* *thumb2_movsi_shortim */
    case 891:  /* *thumb2_addsi_short */
    case 892:  /* *thumb2_subsi_short */
    case 895:  /* *thumb2_mulsi_short */
    case 900:  /* *thumb2_one_cmplsi2_short */
    case 901:  /* *thumb2_negsi2_short */
    case 902:  /* *iordi_notdi_di */
    case 903:  /* *iordi_notzesidi_di */
    case 904:  /* *iordi_notdi_zesidi */
    case 905:  /* *iordi_notsesidi_di */
    case 906:  /* *orsi_notsi_si */
    case 907:  /* *orsi_not_shiftsi_si */
    case 2563:  /* atomic_loadqi */
    case 2564:  /* atomic_loadhi */
    case 2565:  /* atomic_loadsi */
    case 2566:  /* atomic_storeqi */
    case 2567:  /* atomic_storehi */
    case 2568:  /* atomic_storesi */
    case 2569:  /* arm_atomic_loaddi2_ldrd */
    case 2650:  /* arm_load_exclusiveqi */
    case 2651:  /* arm_load_exclusivehi */
    case 2652:  /* arm_load_acquire_exclusiveqi */
    case 2653:  /* arm_load_acquire_exclusivehi */
    case 2654:  /* arm_load_exclusivesi */
    case 2655:  /* arm_load_acquire_exclusivesi */
    case 2656:  /* arm_load_exclusivedi */
    case 2657:  /* arm_load_acquire_exclusivedi */
    case 2658:  /* arm_store_exclusiveqi */
    case 2659:  /* arm_store_exclusivehi */
    case 2660:  /* arm_store_exclusivesi */
    case 2661:  /* arm_store_exclusivedi */
    case 2662:  /* arm_store_release_exclusivedi */
    case 2663:  /* arm_store_release_exclusiveqi */
    case 2664:  /* arm_store_release_exclusivehi */
    case 2665:  /* arm_store_release_exclusivesi */
    case 2666:  /* addqq3 */
    case 2667:  /* addhq3 */
    case 2668:  /* addsq3 */
    case 2669:  /* adduqq3 */
    case 2670:  /* adduhq3 */
    case 2671:  /* addusq3 */
    case 2672:  /* addha3 */
    case 2673:  /* addsa3 */
    case 2674:  /* adduha3 */
    case 2675:  /* addusa3 */
    case 2676:  /* addv4qq3 */
    case 2677:  /* addv2hq3 */
    case 2678:  /* addv2ha3 */
    case 2679:  /* usaddv4uqq3 */
    case 2680:  /* usaddv2uhq3 */
    case 2681:  /* usadduqq3 */
    case 2682:  /* usadduhq3 */
    case 2683:  /* usaddv2uha3 */
    case 2684:  /* usadduha3 */
    case 2685:  /* ssaddv4qq3 */
    case 2686:  /* ssaddv2hq3 */
    case 2687:  /* ssaddqq3 */
    case 2688:  /* ssaddhq3 */
    case 2689:  /* ssaddv2ha3 */
    case 2690:  /* ssaddha3 */
    case 2691:  /* ssaddsq3 */
    case 2692:  /* ssaddsa3 */
    case 2693:  /* subqq3 */
    case 2694:  /* subhq3 */
    case 2695:  /* subsq3 */
    case 2696:  /* subuqq3 */
    case 2697:  /* subuhq3 */
    case 2698:  /* subusq3 */
    case 2699:  /* subha3 */
    case 2700:  /* subsa3 */
    case 2701:  /* subuha3 */
    case 2702:  /* subusa3 */
    case 2703:  /* subv4qq3 */
    case 2704:  /* subv2hq3 */
    case 2705:  /* subv2ha3 */
    case 2706:  /* ussubv4uqq3 */
    case 2707:  /* ussubv2uhq3 */
    case 2708:  /* ussubuqq3 */
    case 2709:  /* ussubuhq3 */
    case 2710:  /* ussubv2uha3 */
    case 2711:  /* ussubuha3 */
    case 2712:  /* sssubv4qq3 */
    case 2713:  /* sssubv2hq3 */
    case 2714:  /* sssubqq3 */
    case 2715:  /* sssubhq3 */
    case 2716:  /* sssubv2ha3 */
    case 2717:  /* sssubha3 */
    case 2718:  /* sssubsq3 */
    case 2719:  /* sssubsa3 */
    case 2722:  /* arm_ssatsihi_shift */
    case 2723:  /* arm_usatsihi */
      return PREDICABLE_YES;

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
    default:
      return PREDICABLE_NO;

    }
}

int
get_attr_pool_range (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  switch (recog_memoized (insn))
    {
    case 4081:  /* *p *thumb2_movhi_insn */
    case 857:  /* *thumb2_movhi_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x1f))
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else
        {
	  return 4094 /* 0xffe */;
        }

    case 4080:  /* *p *thumb2_movsi_insn */
    case 855:  /* *thumb2_movsi_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x1f))
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 5)
        {
	  return 1018 /* 0x3fa */;
        }
      else if (which_alternative == 6)
        {
	  return 4094 /* 0xffe */;
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }

    case 813:  /* *thumb_movdf_insn */
    case 812:  /* *thumb1_movsf_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7))
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 3)
        {
	  return 1018 /* 0x3fa */;
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }

    case 811:  /* *thumb1_movhf */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 1)
        {
	  return 1018 /* 0x3fa */;
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }

    case 810:  /* *thumb1_movqi_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 1)
        {
	  return 32 /* 0x20 */;
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }

    case 808:  /* *thumb1_movsi_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7f))
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 7)
        {
	  return 1018 /* 0x3fa */;
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }

    case 807:  /* *thumb1_movdi_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3f))
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 6)
        {
	  return 1018 /* 0x3fa */;
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }

    case 4007:  /* *p *thumb2_movhi_fp16 */
    case 4005:  /* *p *thumb2_movhi_vfp */
    case 629:  /* *thumb2_movhi_fp16 */
    case 627:  /* *thumb2_movhi_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x1f))
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 5)
        {
	  return 4094 /* 0xffe */;
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }

    case 4006:  /* *p *arm_movhi_fp16 */
    case 4004:  /* *p *arm_movhi_vfp */
    case 628:  /* *arm_movhi_fp16 */
    case 626:  /* *arm_movhi_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0xf))
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 4)
        {
	  return 256 /* 0x100 */;
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }

    case 412:  /* *cond_iwmmxt_movsi_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 2)
        {
	  return 4096 /* 0x1000 */;
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }

    case 3695:  /* *p *movhi_insn_arch4 */
    case 190:  /* *movhi_insn_arch4 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0xf))
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else
        {
	  return 256 /* 0x100 */;
        }

    case 3692:  /* *p *arm_movsi_insn */
    case 182:  /* *arm_movsi_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0xf))
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 4)
        {
	  return 4096 /* 0x1000 */;
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }

    case 183:  /* pic_load_addr_unified */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 4096 /* 0x1000 */;
        }
      else if (which_alternative == 1)
        {
	  return 4094 /* 0xffe */;
        }
      else
        {
	  return 1022 /* 0x3fe */;
        }

    case 184:  /* pic_load_addr_32bit */
      if ((! (
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB))))
        {
	  return 4096 /* 0x1000 */;
        }
      else
        {
	  return 4094 /* 0xffe */;
        }

    case 185:  /* pic_load_addr_thumb1 */
      return 1018 /* 0x3fa */;

    case 411:  /* *iwmmxt_movsi_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 1)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 2)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 3)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 4)
        {
	  return 4096 /* 0x1000 */;
        }
      else if (which_alternative == 5)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 6)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 7)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 8)
        {
	  return 1024 /* 0x400 */;
        }
      else if (which_alternative == 9)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 10)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 11)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 12)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 13)
        {
	  return 1020 /* 0x3fc */;
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }

    case 640:  /* *thumb2_movdf_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 1)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 2)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 3)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 4)
        {
	  return 1018 /* 0x3fa */;
        }
      else if (which_alternative == 5)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 6)
        {
	  return 4094 /* 0xffe */;
        }
      else if (which_alternative == 7)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 8)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }

    case 803:  /* *thumb1_zero_extendqisi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else
        {
	  return 32 /* 0x20 */;
        }

    case 805:  /* thumb1_extendhisi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else
        {
	  return 1018 /* 0x3fa */;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
      return 250 /* 0xfa */;

    case 235:  /* *load_indirect_jump */
    case 3707:  /* *p *load_indirect_jump */
      return 4096 /* 0x1000 */;

    case 413:  /* movv2si_internal */
    case 414:  /* movv4hi_internal */
    case 415:  /* movv8qi_internal */
    case 3791:  /* *p movv2si_internal */
    case 3792:  /* *p movv4hi_internal */
    case 3793:  /* *p movv8qi_internal */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 1)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 2)
        {
	  return 256 /* 0x100 */;
        }
      else if (which_alternative == 3)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 4)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 5)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 6)
        {
	  return 256 /* 0x100 */;
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }

    case 630:  /* *arm_movsi_vfp */
    case 4008:  /* *p *arm_movsi_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 1)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 2)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 3)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 4)
        {
	  return 4096 /* 0x1000 */;
        }
      else if (which_alternative == 5)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 6)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 7)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 8)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 9)
        {
	  return 1020 /* 0x3fc */;
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }

    case 631:  /* *thumb2_movsi_vfp */
    case 4009:  /* *p *thumb2_movsi_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 1)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 2)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 3)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 4)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 5)
        {
	  return 1018 /* 0x3fa */;
        }
      else if (which_alternative == 6)
        {
	  return 4094 /* 0xffe */;
        }
      else if (which_alternative == 7)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 8)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 9)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 10)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 11)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 12)
        {
	  return 1018 /* 0x3fa */;
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }

    case 637:  /* *movsf_vfp */
    case 4012:  /* *p *movsf_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 1)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 2)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 3)
        {
	  return 1020 /* 0x3fc */;
        }
      else if (which_alternative == 4)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 5)
        {
	  return 4096 /* 0x1000 */;
        }
      else if (which_alternative == 6)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 7)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }

    case 638:  /* *thumb2_movsf_vfp */
    case 4013:  /* *p *thumb2_movsf_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 1)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 2)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 3)
        {
	  return 1018 /* 0x3fa */;
        }
      else if (which_alternative == 4)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 5)
        {
	  return 4090 /* 0xffa */;
        }
      else if (which_alternative == 6)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 7)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }

    case 639:  /* *movdf_vfp */
    case 4014:  /* *p *movdf_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 1)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 2)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 3)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 4)
        {
	  return 1020 /* 0x3fc */;
        }
      else if (which_alternative == 5)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 6)
        {
	  return 1020 /* 0x3fc */;
        }
      else if (which_alternative == 7)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else if (which_alternative == 8)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }

    case 879:  /* *thumb2_extendqisi_v6 */
    case 880:  /* *thumb2_zero_extendhisi2_v6 */
    case 881:  /* thumb2_zero_extendqisi2_v6 */
    case 4082:  /* *p *thumb2_extendqisi_v6 */
    case 4083:  /* *p *thumb2_zero_extendhisi2_v6 */
    case 4084:  /* *p thumb2_zero_extendqisi2_v6 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
	    {
	      return get_attr_thumb2_pool_range (insn);
	    }
	  else
	    {
	      return get_attr_arm_pool_range (insn);
	    }
        }
      else
        {
	  return 4094 /* 0xffe */;
        }

    default:
      if ((
#line 73 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(TARGET_THUMB)))
        {
	  return get_attr_thumb2_pool_range (insn);
        }
      else
        {
	  return get_attr_arm_pool_range (insn);
        }

    }
}

enum attr_predicated
get_attr_predicated (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  switch (recog_memoized (insn))
    {
    case 3584:  /* *p *arm_addsi3 */
    case 3585:  /* *p *addsi3_compare0_scratch */
    case 3586:  /* *p *compare_negsi_si */
    case 3587:  /* *p *compare_addsi2_op0 */
    case 3588:  /* *p *compare_addsi2_op1 */
    case 3589:  /* *p *addsi3_carryin_ltu */
    case 3590:  /* *p *addsi3_carryin_geu */
    case 3591:  /* *p *addsi3_carryin_alt2_ltu */
    case 3592:  /* *p *addsi3_carryin_alt2_geu */
    case 3593:  /* *p *addsi3_carryin_shift_ltu */
    case 3594:  /* *p *addsi3_carryin_shift_geu */
    case 3595:  /* *p *subsi3_carryin */
    case 3596:  /* *p *subsi3_carryin_shift */
    case 3597:  /* *p *rsbsi3_carryin_shift */
    case 3598:  /* *p *arm_subsi3_insn */
    case 3599:  /* *p *arm_mulsi3 */
    case 3600:  /* *p *arm_mulsi3_v6 */
    case 3601:  /* *p *mulsi3addsi */
    case 3602:  /* *p *mulsi3addsi_v6 */
    case 3603:  /* *p *mulsi3subsi */
    case 3604:  /* *p *mulsidi3adddi */
    case 3605:  /* *p *mulsidi3adddi_v6 */
    case 3606:  /* *p *mulsidi3_nov6 */
    case 3607:  /* *p *mulsidi3_v6 */
    case 3608:  /* *p *umulsidi3_nov6 */
    case 3609:  /* *p *umulsidi3_v6 */
    case 3610:  /* *p *umulsidi3adddi */
    case 3611:  /* *p *umulsidi3adddi_v6 */
    case 3612:  /* *p *smulsi3_highpart_nov6 */
    case 3613:  /* *p *smulsi3_highpart_v6 */
    case 3614:  /* *p *umulsi3_highpart_nov6 */
    case 3615:  /* *p *umulsi3_highpart_v6 */
    case 3616:  /* *p mulhisi3 */
    case 3617:  /* *p *mulhisi3tb */
    case 3618:  /* *p *mulhisi3bt */
    case 3619:  /* *p *mulhisi3tt */
    case 3620:  /* *p maddhisi4 */
    case 3621:  /* *p *maddhisi4tb */
    case 3622:  /* *p *maddhisi4tt */
    case 3623:  /* *p maddhidi4 */
    case 3624:  /* *p *maddhidi4tb */
    case 3625:  /* *p *maddhidi4tt */
    case 3626:  /* *p *arm_andsi3_insn */
    case 3627:  /* *p *zeroextractsi_compare0_scratch */
    case 3628:  /* *p insv_zero */
    case 3629:  /* *p insv_t2 */
    case 3630:  /* *p *anddi_notdi_di */
    case 3631:  /* *p *anddi_notzesidi_di */
    case 3632:  /* *p *anddi_notdi_zesidi */
    case 3633:  /* *p *anddi_notsesidi_di */
    case 3634:  /* *p andsi_notsi_si */
    case 3635:  /* *p andsi_not_shiftsi_si */
    case 3636:  /* *p andsi_not_shiftsi_si_scc_no_reuse */
    case 3637:  /* *p andsi_not_shiftsi_si_scc */
    case 3638:  /* *p *iordi_zesidi_di */
    case 3639:  /* *p *iordi_sesidi_di */
    case 3640:  /* *p *iorsi3_insn */
    case 3641:  /* *p *xordi_zesidi_di */
    case 3642:  /* *p *xordi_sesidi_di */
    case 3643:  /* *p *arm_xorsi3 */
    case 3644:  /* *p *andsi_iorsi3_notsi */
    case 3645:  /* *p *smax_0 */
    case 3646:  /* *p *smax_m1 */
    case 3647:  /* *p *smin_0 */
    case 3648:  /* *p *satsi_smin */
    case 3649:  /* *p *satsi_smax */
    case 3650:  /* *p *satsi_smin */
    case 3651:  /* *p *satsi_smax */
    case 3652:  /* *p *satsi_smin_shift */
    case 3653:  /* *p *satsi_smax_shift */
    case 3654:  /* *p *satsi_smin_shift */
    case 3655:  /* *p *satsi_smax_shift */
    case 3656:  /* *p *arm_shiftsi3 */
    case 3657:  /* *p *not_shiftsi */
    case 3658:  /* *p unaligned_loadsi */
    case 3659:  /* *p unaligned_loadhis */
    case 3660:  /* *p unaligned_loadhiu */
    case 3661:  /* *p unaligned_storesi */
    case 3662:  /* *p unaligned_storehi */
    case 3663:  /* *p *extv_reg */
    case 3664:  /* *p extzv_t2 */
    case 3665:  /* *p divsi3 */
    case 3666:  /* *p udivsi3 */
    case 3667:  /* *p *arm_negsi2 */
    case 3668:  /* *p *arm_abssi2 */
    case 3669:  /* *p *arm_neg_abssi2 */
    case 3670:  /* *p one_cmpldi2 */
    case 3671:  /* *p *arm_one_cmplsi2 */
    case 3672:  /* *p zero_extendqidi2 */
    case 3673:  /* *p zero_extendhidi2 */
    case 3674:  /* *p zero_extendsidi2 */
    case 3675:  /* *p extendqidi2 */
    case 3676:  /* *p extendhidi2 */
    case 3677:  /* *p extendsidi2 */
    case 3678:  /* *p *arm_zero_extendhisi2 */
    case 3679:  /* *p *arm_zero_extendhisi2_v6 */
    case 3680:  /* *p *arm_zero_extendhisi2addsi */
    case 3681:  /* *p *arm_zero_extendqisi2 */
    case 3682:  /* *p *arm_zero_extendqisi2_v6 */
    case 3683:  /* *p *arm_zero_extendqisi2addsi */
    case 3684:  /* *p *compareqi_eq0 */
    case 3685:  /* *p *arm_extendhisi2 */
    case 3686:  /* *p *arm_extendhisi2_v6 */
    case 3687:  /* *p *arm_extendqihi_insn */
    case 3688:  /* *p *arm_extendqisi */
    case 3689:  /* *p *arm_extendqisi_v6 */
    case 3690:  /* *p *arm_extendqisi2addsi */
    case 3691:  /* *p *arm_movt */
    case 3692:  /* *p *arm_movsi_insn */
    case 3693:  /* *p pic_add_dot_plus_eight */
    case 3694:  /* *p tls_load_dot_plus_eight */
    case 3695:  /* *p *movhi_insn_arch4 */
    case 3696:  /* *p *movhi_bytes */
    case 3697:  /* *p *arm_movqi_insn */
    case 3698:  /* *p *arm32_movhf */
    case 3699:  /* *p *arm_movsf_soft_insn */
    case 3700:  /* *p *arm_cmpsi_insn */
    case 3701:  /* *p *arm_cmpsi_negshiftsi_si */
    case 3702:  /* *p *arm_jump */
    case 3703:  /* *p *arm_return */
    case 3704:  /* *p *arm_simple_return */
    case 3705:  /* *p probe_stack */
    case 3706:  /* *p *arm_indirect_jump */
    case 3707:  /* *p *load_indirect_jump */
    case 3708:  /* *p *add_multsi */
    case 3709:  /* *p *rsb_multsi */
    case 3710:  /* *p *orr_multsi */
    case 3711:  /* *p *eor_multsi */
    case 3712:  /* *p *and_multsi */
    case 3713:  /* *p *add_shiftsi */
    case 3714:  /* *p *rsb_shiftsi */
    case 3715:  /* *p *orr_shiftsi */
    case 3716:  /* *p *eor_shiftsi */
    case 3717:  /* *p *and_shiftsi */
    case 3718:  /* *p *sub_shiftsi */
    case 3719:  /* *p *arith_adjacentmem */
    case 3720:  /* *p *load_multiple_with_writeback */
    case 3721:  /* *p *pop_multiple_with_writeback_and_return */
    case 3722:  /* *p *pop_multiple_with_return */
    case 3723:  /* *p *ldr_with_return */
    case 3724:  /* *p clzsi2 */
    case 3725:  /* *p rbitsi2 */
    case 3726:  /* *p load_tp_hard */
    case 3727:  /* *p *arm_movtas_ze */
    case 3728:  /* *p *arm_rev */
    case 3729:  /* *p *thumb2_ldrd */
    case 3730:  /* *p *thumb2_ldrd_base */
    case 3731:  /* *p *thumb2_ldrd_base_neg */
    case 3732:  /* *p *thumb2_strd */
    case 3733:  /* *p *thumb2_strd_base */
    case 3734:  /* *p *thumb2_strd_base_neg */
    case 3735:  /* *p *ldm4_ */
    case 3736:  /* *p *ldm4_ia_update */
    case 3737:  /* *p *stm4_ */
    case 3738:  /* *p *stm4_ia_update */
    case 3739:  /* *p *ldm4_ib */
    case 3740:  /* *p *ldm4_ib_update */
    case 3741:  /* *p *stm4_ib */
    case 3742:  /* *p *stm4_ib_update */
    case 3743:  /* *p *ldm4_da */
    case 3744:  /* *p *ldm4_da_update */
    case 3745:  /* *p *stm4_da */
    case 3746:  /* *p *stm4_da_update */
    case 3747:  /* *p *ldm4_db */
    case 3748:  /* *p *ldm4_db_update */
    case 3749:  /* *p *stm4_db */
    case 3750:  /* *p *stm4_db_update */
    case 3751:  /* *p *ldm3_ */
    case 3752:  /* *p *ldm3_ia_update */
    case 3753:  /* *p *stm3_ */
    case 3754:  /* *p *stm3_ia_update */
    case 3755:  /* *p *ldm3_ib */
    case 3756:  /* *p *ldm3_ib_update */
    case 3757:  /* *p *stm3_ib */
    case 3758:  /* *p *stm3_ib_update */
    case 3759:  /* *p *ldm3_da */
    case 3760:  /* *p *ldm3_da_update */
    case 3761:  /* *p *stm3_da */
    case 3762:  /* *p *stm3_da_update */
    case 3763:  /* *p *ldm3_db */
    case 3764:  /* *p *ldm3_db_update */
    case 3765:  /* *p *stm3_db */
    case 3766:  /* *p *stm3_db_update */
    case 3767:  /* *p *ldm2_ */
    case 3768:  /* *p *ldm2_ia_update */
    case 3769:  /* *p *stm2_ */
    case 3770:  /* *p *stm2_ia_update */
    case 3771:  /* *p *ldm2_ib */
    case 3772:  /* *p *ldm2_ib_update */
    case 3773:  /* *p *stm2_ib */
    case 3774:  /* *p *stm2_ib_update */
    case 3775:  /* *p *ldm2_da */
    case 3776:  /* *p *ldm2_da_update */
    case 3777:  /* *p *stm2_da */
    case 3778:  /* *p *stm2_da_update */
    case 3779:  /* *p *ldm2_db */
    case 3780:  /* *p *ldm2_db_update */
    case 3781:  /* *p *stm2_db */
    case 3782:  /* *p *stm2_db_update */
    case 3783:  /* *p *load_multiple */
    case 3784:  /* *p tbcstv8qi */
    case 3785:  /* *p tbcstv4hi */
    case 3786:  /* *p tbcstv2si */
    case 3787:  /* *p iwmmxt_iordi3 */
    case 3788:  /* *p iwmmxt_xordi3 */
    case 3789:  /* *p iwmmxt_anddi3 */
    case 3790:  /* *p iwmmxt_nanddi3 */
    case 3791:  /* *p movv2si_internal */
    case 3792:  /* *p movv4hi_internal */
    case 3793:  /* *p movv8qi_internal */
    case 3794:  /* *p *andv2si3_iwmmxt */
    case 3795:  /* *p *andv4hi3_iwmmxt */
    case 3796:  /* *p *andv8qi3_iwmmxt */
    case 3797:  /* *p *iorv2si3_iwmmxt */
    case 3798:  /* *p *iorv4hi3_iwmmxt */
    case 3799:  /* *p *iorv8qi3_iwmmxt */
    case 3800:  /* *p *xorv2si3_iwmmxt */
    case 3801:  /* *p *xorv4hi3_iwmmxt */
    case 3802:  /* *p *xorv8qi3_iwmmxt */
    case 3803:  /* *p *addv2si3_iwmmxt */
    case 3804:  /* *p *addv4hi3_iwmmxt */
    case 3805:  /* *p *addv8qi3_iwmmxt */
    case 3806:  /* *p ssaddv8qi3 */
    case 3807:  /* *p ssaddv4hi3 */
    case 3808:  /* *p ssaddv2si3 */
    case 3809:  /* *p usaddv8qi3 */
    case 3810:  /* *p usaddv4hi3 */
    case 3811:  /* *p usaddv2si3 */
    case 3812:  /* *p *subv2si3_iwmmxt */
    case 3813:  /* *p *subv4hi3_iwmmxt */
    case 3814:  /* *p *subv8qi3_iwmmxt */
    case 3815:  /* *p sssubv8qi3 */
    case 3816:  /* *p sssubv4hi3 */
    case 3817:  /* *p sssubv2si3 */
    case 3818:  /* *p ussubv8qi3 */
    case 3819:  /* *p ussubv4hi3 */
    case 3820:  /* *p ussubv2si3 */
    case 3821:  /* *p *mulv4hi3_iwmmxt */
    case 3822:  /* *p smulv4hi3_highpart */
    case 3823:  /* *p umulv4hi3_highpart */
    case 3824:  /* *p iwmmxt_wmacs */
    case 3825:  /* *p iwmmxt_wmacsz */
    case 3826:  /* *p iwmmxt_wmacu */
    case 3827:  /* *p iwmmxt_wmacuz */
    case 3828:  /* *p iwmmxt_clrdi */
    case 3829:  /* *p iwmmxt_clrv8qi */
    case 3830:  /* *p iwmmxt_clrv4hi */
    case 3831:  /* *p iwmmxt_clrv2si */
    case 3832:  /* *p iwmmxt_uavgrndv8qi3 */
    case 3833:  /* *p iwmmxt_uavgrndv4hi3 */
    case 3834:  /* *p iwmmxt_uavgv8qi3 */
    case 3835:  /* *p iwmmxt_uavgv4hi3 */
    case 3836:  /* *p iwmmxt_tinsrb */
    case 3837:  /* *p iwmmxt_tinsrh */
    case 3838:  /* *p iwmmxt_tinsrw */
    case 3839:  /* *p iwmmxt_textrmub */
    case 3840:  /* *p iwmmxt_textrmsb */
    case 3841:  /* *p iwmmxt_textrmuh */
    case 3842:  /* *p iwmmxt_textrmsh */
    case 3843:  /* *p iwmmxt_textrmw */
    case 3844:  /* *p iwmmxt_wshufh */
    case 3845:  /* *p eqv8qi3 */
    case 3846:  /* *p eqv4hi3 */
    case 3847:  /* *p eqv2si3 */
    case 3848:  /* *p gtuv8qi3 */
    case 3849:  /* *p gtuv4hi3 */
    case 3850:  /* *p gtuv2si3 */
    case 3851:  /* *p gtv8qi3 */
    case 3852:  /* *p gtv4hi3 */
    case 3853:  /* *p gtv2si3 */
    case 3854:  /* *p *smaxv2si3_iwmmxt */
    case 3855:  /* *p *smaxv4hi3_iwmmxt */
    case 3856:  /* *p *smaxv8qi3_iwmmxt */
    case 3857:  /* *p *umaxv2si3_iwmmxt */
    case 3858:  /* *p *umaxv4hi3_iwmmxt */
    case 3859:  /* *p *umaxv8qi3_iwmmxt */
    case 3860:  /* *p *sminv2si3_iwmmxt */
    case 3861:  /* *p *sminv4hi3_iwmmxt */
    case 3862:  /* *p *sminv8qi3_iwmmxt */
    case 3863:  /* *p *uminv2si3_iwmmxt */
    case 3864:  /* *p *uminv4hi3_iwmmxt */
    case 3865:  /* *p *uminv8qi3_iwmmxt */
    case 3866:  /* *p iwmmxt_wpackhss */
    case 3867:  /* *p iwmmxt_wpackwss */
    case 3868:  /* *p iwmmxt_wpackdss */
    case 3869:  /* *p iwmmxt_wpackhus */
    case 3870:  /* *p iwmmxt_wpackwus */
    case 3871:  /* *p iwmmxt_wpackdus */
    case 3872:  /* *p iwmmxt_wunpckihb */
    case 3873:  /* *p iwmmxt_wunpckihh */
    case 3874:  /* *p iwmmxt_wunpckihw */
    case 3875:  /* *p iwmmxt_wunpckilb */
    case 3876:  /* *p iwmmxt_wunpckilh */
    case 3877:  /* *p iwmmxt_wunpckilw */
    case 3878:  /* *p iwmmxt_wunpckehub */
    case 3879:  /* *p iwmmxt_wunpckehuh */
    case 3880:  /* *p iwmmxt_wunpckehuw */
    case 3881:  /* *p iwmmxt_wunpckehsb */
    case 3882:  /* *p iwmmxt_wunpckehsh */
    case 3883:  /* *p iwmmxt_wunpckehsw */
    case 3884:  /* *p iwmmxt_wunpckelub */
    case 3885:  /* *p iwmmxt_wunpckeluh */
    case 3886:  /* *p iwmmxt_wunpckeluw */
    case 3887:  /* *p iwmmxt_wunpckelsb */
    case 3888:  /* *p iwmmxt_wunpckelsh */
    case 3889:  /* *p iwmmxt_wunpckelsw */
    case 3890:  /* *p rorv4hi3 */
    case 3891:  /* *p rorv2si3 */
    case 3892:  /* *p rordi3 */
    case 3893:  /* *p ashrv4hi3_iwmmxt */
    case 3894:  /* *p ashrv2si3_iwmmxt */
    case 3895:  /* *p ashrdi3_iwmmxt */
    case 3896:  /* *p lshrv4hi3_iwmmxt */
    case 3897:  /* *p lshrv2si3_iwmmxt */
    case 3898:  /* *p lshrdi3_iwmmxt */
    case 3899:  /* *p ashlv4hi3_iwmmxt */
    case 3900:  /* *p ashlv2si3_iwmmxt */
    case 3901:  /* *p ashldi3_iwmmxt */
    case 3902:  /* *p rorv4hi3_di */
    case 3903:  /* *p rorv2si3_di */
    case 3904:  /* *p rordi3_di */
    case 3905:  /* *p ashrv4hi3_di */
    case 3906:  /* *p ashrv2si3_di */
    case 3907:  /* *p ashrdi3_di */
    case 3908:  /* *p lshrv4hi3_di */
    case 3909:  /* *p lshrv2si3_di */
    case 3910:  /* *p lshrdi3_di */
    case 3911:  /* *p ashlv4hi3_di */
    case 3912:  /* *p ashlv2si3_di */
    case 3913:  /* *p ashldi3_di */
    case 3914:  /* *p iwmmxt_wmadds */
    case 3915:  /* *p iwmmxt_wmaddu */
    case 3916:  /* *p iwmmxt_tmia */
    case 3917:  /* *p iwmmxt_tmiaph */
    case 3918:  /* *p iwmmxt_tmiabb */
    case 3919:  /* *p iwmmxt_tmiatb */
    case 3920:  /* *p iwmmxt_tmiabt */
    case 3921:  /* *p iwmmxt_tmiatt */
    case 3922:  /* *p iwmmxt_tmovmskb */
    case 3923:  /* *p iwmmxt_tmovmskh */
    case 3924:  /* *p iwmmxt_tmovmskw */
    case 3925:  /* *p iwmmxt_waccb */
    case 3926:  /* *p iwmmxt_wacch */
    case 3927:  /* *p iwmmxt_waccw */
    case 3928:  /* *p iwmmxt_waligni */
    case 3929:  /* *p iwmmxt_walignr */
    case 3930:  /* *p iwmmxt_walignr0 */
    case 3931:  /* *p iwmmxt_walignr1 */
    case 3932:  /* *p iwmmxt_walignr2 */
    case 3933:  /* *p iwmmxt_walignr3 */
    case 3934:  /* *p iwmmxt_wsadb */
    case 3935:  /* *p iwmmxt_wsadh */
    case 3936:  /* *p iwmmxt_wsadbz */
    case 3937:  /* *p iwmmxt_wsadhz */
    case 3938:  /* *p iwmmxt_wabsv2si3 */
    case 3939:  /* *p iwmmxt_wabsv4hi3 */
    case 3940:  /* *p iwmmxt_wabsv8qi3 */
    case 3941:  /* *p iwmmxt_wabsdiffb */
    case 3942:  /* *p iwmmxt_wabsdiffh */
    case 3943:  /* *p iwmmxt_wabsdiffw */
    case 3944:  /* *p iwmmxt_waddsubhx */
    case 3945:  /* *p iwmmxt_wsubaddhx */
    case 3946:  /* *p addcv4hi3 */
    case 3947:  /* *p addcv2si3 */
    case 3948:  /* *p iwmmxt_avg4 */
    case 3949:  /* *p iwmmxt_avg4r */
    case 3950:  /* *p iwmmxt_wmaddsx */
    case 3951:  /* *p iwmmxt_wmaddux */
    case 3952:  /* *p iwmmxt_wmaddsn */
    case 3953:  /* *p iwmmxt_wmaddun */
    case 3954:  /* *p iwmmxt_wmulwsm */
    case 3955:  /* *p iwmmxt_wmulwum */
    case 3956:  /* *p iwmmxt_wmulsmr */
    case 3957:  /* *p iwmmxt_wmulumr */
    case 3958:  /* *p iwmmxt_wmulwsmr */
    case 3959:  /* *p iwmmxt_wmulwumr */
    case 3960:  /* *p iwmmxt_wmulwl */
    case 3961:  /* *p iwmmxt_wqmulm */
    case 3962:  /* *p iwmmxt_wqmulwm */
    case 3963:  /* *p iwmmxt_wqmulmr */
    case 3964:  /* *p iwmmxt_wqmulwmr */
    case 3965:  /* *p iwmmxt_waddbhusm */
    case 3966:  /* *p iwmmxt_waddbhusl */
    case 3967:  /* *p iwmmxt_wqmiabb */
    case 3968:  /* *p iwmmxt_wqmiabt */
    case 3969:  /* *p iwmmxt_wqmiatb */
    case 3970:  /* *p iwmmxt_wqmiatt */
    case 3971:  /* *p iwmmxt_wqmiabbn */
    case 3972:  /* *p iwmmxt_wqmiabtn */
    case 3973:  /* *p iwmmxt_wqmiatbn */
    case 3974:  /* *p iwmmxt_wqmiattn */
    case 3975:  /* *p iwmmxt_wmiabb */
    case 3976:  /* *p iwmmxt_wmiabt */
    case 3977:  /* *p iwmmxt_wmiatb */
    case 3978:  /* *p iwmmxt_wmiatt */
    case 3979:  /* *p iwmmxt_wmiabbn */
    case 3980:  /* *p iwmmxt_wmiabtn */
    case 3981:  /* *p iwmmxt_wmiatbn */
    case 3982:  /* *p iwmmxt_wmiattn */
    case 3983:  /* *p iwmmxt_wmiawbb */
    case 3984:  /* *p iwmmxt_wmiawbt */
    case 3985:  /* *p iwmmxt_wmiawtb */
    case 3986:  /* *p iwmmxt_wmiawtt */
    case 3987:  /* *p iwmmxt_wmiawbbn */
    case 3988:  /* *p iwmmxt_wmiawbtn */
    case 3989:  /* *p iwmmxt_wmiawtbn */
    case 3990:  /* *p iwmmxt_wmiawttn */
    case 3991:  /* *p iwmmxt_wmerge */
    case 3992:  /* *p iwmmxt_tandcv2si3 */
    case 3993:  /* *p iwmmxt_tandcv4hi3 */
    case 3994:  /* *p iwmmxt_tandcv8qi3 */
    case 3995:  /* *p iwmmxt_torcv2si3 */
    case 3996:  /* *p iwmmxt_torcv4hi3 */
    case 3997:  /* *p iwmmxt_torcv8qi3 */
    case 3998:  /* *p iwmmxt_torvscv2si3 */
    case 3999:  /* *p iwmmxt_torvscv4hi3 */
    case 4000:  /* *p iwmmxt_torvscv8qi3 */
    case 4001:  /* *p iwmmxt_textrcv2si3 */
    case 4002:  /* *p iwmmxt_textrcv4hi3 */
    case 4003:  /* *p iwmmxt_textrcv8qi3 */
    case 4004:  /* *p *arm_movhi_vfp */
    case 4005:  /* *p *thumb2_movhi_vfp */
    case 4006:  /* *p *arm_movhi_fp16 */
    case 4007:  /* *p *thumb2_movhi_fp16 */
    case 4008:  /* *p *arm_movsi_vfp */
    case 4009:  /* *p *thumb2_movsi_vfp */
    case 4010:  /* *p *movdi_vfp_cortexa8 */
    case 4011:  /* *p *movhf_vfp_fp16 */
    case 4012:  /* *p *movsf_vfp */
    case 4013:  /* *p *thumb2_movsf_vfp */
    case 4014:  /* *p *movdf_vfp */
    case 4015:  /* *p *abssf2_vfp */
    case 4016:  /* *p *absdf2_vfp */
    case 4017:  /* *p *negsf2_vfp */
    case 4018:  /* *p *negdf2_vfp */
    case 4019:  /* *p *addsf3_vfp */
    case 4020:  /* *p *adddf3_vfp */
    case 4021:  /* *p *subsf3_vfp */
    case 4022:  /* *p *subdf3_vfp */
    case 4023:  /* *p *divsf3_vfp */
    case 4024:  /* *p *divdf3_vfp */
    case 4025:  /* *p *mulsf3_vfp */
    case 4026:  /* *p *muldf3_vfp */
    case 4027:  /* *p *mulsf3negsf_vfp */
    case 4028:  /* *p *negmulsf3_vfp */
    case 4029:  /* *p *muldf3negdf_vfp */
    case 4030:  /* *p *negmuldf3_vfp */
    case 4031:  /* *p *mulsf3addsf_vfp */
    case 4032:  /* *p *muldf3adddf_vfp */
    case 4033:  /* *p *mulsf3subsf_vfp */
    case 4034:  /* *p *muldf3subdf_vfp */
    case 4035:  /* *p *mulsf3negsfaddsf_vfp */
    case 4036:  /* *p *fmuldf3negdfadddf_vfp */
    case 4037:  /* *p *mulsf3negsfsubsf_vfp */
    case 4038:  /* *p *muldf3negdfsubdf_vfp */
    case 4039:  /* *p fmasf4 */
    case 4040:  /* *p fmadf4 */
    case 4041:  /* *p *fmsubsf4 */
    case 4042:  /* *p *fmsubdf4 */
    case 4043:  /* *p *fnmsubsf4 */
    case 4044:  /* *p *fnmsubdf4 */
    case 4045:  /* *p *fnmaddsf4 */
    case 4046:  /* *p *fnmadddf4 */
    case 4047:  /* *p *extendsfdf2_vfp */
    case 4048:  /* *p *truncdfsf2_vfp */
    case 4049:  /* *p extendhfsf2 */
    case 4050:  /* *p truncsfhf2 */
    case 4051:  /* *p *truncsisf2_vfp */
    case 4052:  /* *p *truncsidf2_vfp */
    case 4053:  /* *p fixuns_truncsfsi2 */
    case 4054:  /* *p fixuns_truncdfsi2 */
    case 4055:  /* *p *floatsisf2_vfp */
    case 4056:  /* *p *floatsidf2_vfp */
    case 4057:  /* *p floatunssisf2 */
    case 4058:  /* *p floatunssidf2 */
    case 4059:  /* *p *sqrtsf2_vfp */
    case 4060:  /* *p *sqrtdf2_vfp */
    case 4061:  /* *p *cmpsf_vfp */
    case 4062:  /* *p *cmpsf_trap_vfp */
    case 4063:  /* *p *cmpdf_vfp */
    case 4064:  /* *p *cmpdf_trap_vfp */
    case 4065:  /* *p *combine_vcvt_f32_u32 */
    case 4066:  /* *p *combine_vcvt_f32_s32 */
    case 4067:  /* *p *combine_vcvt_f64_u32 */
    case 4068:  /* *p *combine_vcvt_f64_s32 */
    case 4069:  /* *p *combine_vcvtf2i */
    case 4070:  /* *p btruncsf2 */
    case 4071:  /* *p nearbyintsf2 */
    case 4072:  /* *p rintsf2 */
    case 4073:  /* *p btruncdf2 */
    case 4074:  /* *p nearbyintdf2 */
    case 4075:  /* *p rintdf2 */
    case 4076:  /* *p *thumb_andsi_not_shiftsi_si */
    case 4077:  /* *p *thumb2_abssi2 */
    case 4078:  /* *p *thumb2_neg_abssi2 */
    case 4079:  /* *p *thumb2_pop_single */
    case 4080:  /* *p *thumb2_movsi_insn */
    case 4081:  /* *p *thumb2_movhi_insn */
    case 4082:  /* *p *thumb2_extendqisi_v6 */
    case 4083:  /* *p *thumb2_zero_extendhisi2_v6 */
    case 4084:  /* *p thumb2_zero_extendqisi2_v6 */
    case 4085:  /* *p *thumb2_alusi3_short */
    case 4086:  /* *p *thumb2_shiftsi3_short */
    case 4087:  /* *p *thumb2_movqi_shortim */
    case 4088:  /* *p *thumb2_movhi_shortim */
    case 4089:  /* *p *thumb2_movsi_shortim */
    case 4090:  /* *p *thumb2_addsi_short */
    case 4091:  /* *p *thumb2_subsi_short */
    case 4092:  /* *p *thumb2_mulsi_short */
    case 4093:  /* *p *thumb2_one_cmplsi2_short */
    case 4094:  /* *p *thumb2_negsi2_short */
    case 4095:  /* *p *iordi_notdi_di */
    case 4096:  /* *p *iordi_notzesidi_di */
    case 4097:  /* *p *iordi_notdi_zesidi */
    case 4098:  /* *p *iordi_notsesidi_di */
    case 4099:  /* *p *orsi_notsi_si */
    case 4100:  /* *p *orsi_not_shiftsi_si */
    case 4101:  /* *p atomic_loadqi */
    case 4102:  /* *p atomic_loadhi */
    case 4103:  /* *p atomic_loadsi */
    case 4104:  /* *p atomic_storeqi */
    case 4105:  /* *p atomic_storehi */
    case 4106:  /* *p atomic_storesi */
    case 4107:  /* *p arm_atomic_loaddi2_ldrd */
    case 4108:  /* *p arm_load_exclusiveqi */
    case 4109:  /* *p arm_load_exclusivehi */
    case 4110:  /* *p arm_load_acquire_exclusiveqi */
    case 4111:  /* *p arm_load_acquire_exclusivehi */
    case 4112:  /* *p arm_load_exclusivesi */
    case 4113:  /* *p arm_load_acquire_exclusivesi */
    case 4114:  /* *p arm_load_exclusivedi */
    case 4115:  /* *p arm_load_acquire_exclusivedi */
    case 4116:  /* *p arm_store_exclusiveqi */
    case 4117:  /* *p arm_store_exclusivehi */
    case 4118:  /* *p arm_store_exclusivesi */
    case 4119:  /* *p arm_store_exclusivedi */
    case 4120:  /* *p arm_store_release_exclusivedi */
    case 4121:  /* *p arm_store_release_exclusiveqi */
    case 4122:  /* *p arm_store_release_exclusivehi */
    case 4123:  /* *p arm_store_release_exclusivesi */
    case 4124:  /* *p addqq3 */
    case 4125:  /* *p addhq3 */
    case 4126:  /* *p addsq3 */
    case 4127:  /* *p adduqq3 */
    case 4128:  /* *p adduhq3 */
    case 4129:  /* *p addusq3 */
    case 4130:  /* *p addha3 */
    case 4131:  /* *p addsa3 */
    case 4132:  /* *p adduha3 */
    case 4133:  /* *p addusa3 */
    case 4134:  /* *p addv4qq3 */
    case 4135:  /* *p addv2hq3 */
    case 4136:  /* *p addv2ha3 */
    case 4137:  /* *p usaddv4uqq3 */
    case 4138:  /* *p usaddv2uhq3 */
    case 4139:  /* *p usadduqq3 */
    case 4140:  /* *p usadduhq3 */
    case 4141:  /* *p usaddv2uha3 */
    case 4142:  /* *p usadduha3 */
    case 4143:  /* *p ssaddv4qq3 */
    case 4144:  /* *p ssaddv2hq3 */
    case 4145:  /* *p ssaddqq3 */
    case 4146:  /* *p ssaddhq3 */
    case 4147:  /* *p ssaddv2ha3 */
    case 4148:  /* *p ssaddha3 */
    case 4149:  /* *p ssaddsq3 */
    case 4150:  /* *p ssaddsa3 */
    case 4151:  /* *p subqq3 */
    case 4152:  /* *p subhq3 */
    case 4153:  /* *p subsq3 */
    case 4154:  /* *p subuqq3 */
    case 4155:  /* *p subuhq3 */
    case 4156:  /* *p subusq3 */
    case 4157:  /* *p subha3 */
    case 4158:  /* *p subsa3 */
    case 4159:  /* *p subuha3 */
    case 4160:  /* *p subusa3 */
    case 4161:  /* *p subv4qq3 */
    case 4162:  /* *p subv2hq3 */
    case 4163:  /* *p subv2ha3 */
    case 4164:  /* *p ussubv4uqq3 */
    case 4165:  /* *p ussubv2uhq3 */
    case 4166:  /* *p ussubuqq3 */
    case 4167:  /* *p ussubuhq3 */
    case 4168:  /* *p ussubv2uha3 */
    case 4169:  /* *p ussubuha3 */
    case 4170:  /* *p sssubv4qq3 */
    case 4171:  /* *p sssubv2hq3 */
    case 4172:  /* *p sssubqq3 */
    case 4173:  /* *p sssubhq3 */
    case 4174:  /* *p sssubv2ha3 */
    case 4175:  /* *p sssubha3 */
    case 4176:  /* *p sssubsq3 */
    case 4177:  /* *p sssubsa3 */
    case 4178:  /* *p arm_ssatsihi_shift */
    case 4179:  /* *p arm_usatsihi */
      return PREDICATED_YES;

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
    default:
      return PREDICATED_NO;

    }
}

enum attr_predicable_short_it
get_attr_predicable_short_it (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  switch (recog_memoized (insn))
    {
    case 4011:  /* *p *movhf_vfp_fp16 */
    case 634:  /* *movhf_vfp_fp16 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7))
        {
	  return PREDICABLE_SHORT_IT_NO;
        }
      else if (which_alternative == 3)
        {
	  return PREDICABLE_SHORT_IT_YES;
        }
      else
        {
	  return PREDICABLE_SHORT_IT_NO;
        }

    case 4081:  /* *p *thumb2_movhi_insn */
    case 4080:  /* *p *thumb2_movsi_insn */
    case 4009:  /* *p *thumb2_movsi_vfp */
    case 4007:  /* *p *thumb2_movhi_fp16 */
    case 4005:  /* *p *thumb2_movhi_vfp */
    case 857:  /* *thumb2_movhi_insn */
    case 855:  /* *thumb2_movsi_insn */
    case 631:  /* *thumb2_movsi_vfp */
    case 629:  /* *thumb2_movhi_fp16 */
    case 627:  /* *thumb2_movhi_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return PREDICABLE_SHORT_IT_YES;
        }
      else if (which_alternative == 1)
        {
	  return PREDICABLE_SHORT_IT_NO;
        }
      else if (which_alternative == 2)
        {
	  return PREDICABLE_SHORT_IT_YES;
        }
      else
        {
	  return PREDICABLE_SHORT_IT_NO;
        }

    case 3700:  /* *p *arm_cmpsi_insn */
    case 196:  /* *arm_cmpsi_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7))
        {
	  return PREDICABLE_SHORT_IT_YES;
        }
      else
        {
	  return PREDICABLE_SHORT_IT_NO;
        }

    case 3697:  /* *p *arm_movqi_insn */
    case 192:  /* *arm_movqi_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return PREDICABLE_SHORT_IT_YES;
        }
      else if (which_alternative == 2)
        {
	  return PREDICABLE_SHORT_IT_NO;
        }
      else if (which_alternative == 3)
        {
	  return PREDICABLE_SHORT_IT_YES;
        }
      else
        {
	  return PREDICABLE_SHORT_IT_NO;
        }

    case 3643:  /* *p *arm_xorsi3 */
    case 3640:  /* *p *iorsi3_insn */
    case 3626:  /* *p *arm_andsi3_insn */
    case 111:  /* *arm_xorsi3 */
    case 105:  /* *iorsi3_insn */
    case 82:  /* *arm_andsi3_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return PREDICABLE_SHORT_IT_NO;
        }
      else if (which_alternative == 1)
        {
	  return PREDICABLE_SHORT_IT_YES;
        }
      else
        {
	  return PREDICABLE_SHORT_IT_NO;
        }

    case 3656:  /* *p *arm_shiftsi3 */
    case 3600:  /* *p *arm_mulsi3_v6 */
    case 3588:  /* *p *compare_addsi2_op1 */
    case 3587:  /* *p *compare_addsi2_op0 */
    case 132:  /* *arm_shiftsi3 */
    case 45:  /* *arm_mulsi3_v6 */
    case 18:  /* *compare_addsi2_op1 */
    case 17:  /* *compare_addsi2_op0 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return PREDICABLE_SHORT_IT_YES;
        }
      else
        {
	  return PREDICABLE_SHORT_IT_NO;
        }

    case 3598:  /* *p *arm_subsi3_insn */
    case 3584:  /* *p *arm_addsi3 */
    case 41:  /* *arm_subsi3_insn */
    case 4:  /* *arm_addsi3 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0xf))
        {
	  return PREDICABLE_SHORT_IT_YES;
        }
      else
        {
	  return PREDICABLE_SHORT_IT_NO;
        }

    case 3592:  /* *p *addsi3_carryin_alt2_geu */
    case 3591:  /* *p *addsi3_carryin_alt2_ltu */
    case 3590:  /* *p *addsi3_carryin_geu */
    case 3589:  /* *p *addsi3_carryin_ltu */
    case 22:  /* *addsi3_carryin_alt2_geu */
    case 21:  /* *addsi3_carryin_alt2_ltu */
    case 20:  /* *addsi3_carryin_geu */
    case 19:  /* *addsi3_carryin_ltu */
    case 13:  /* *compare_negsi_si */
    case 138:  /* unaligned_loadsi */
    case 139:  /* unaligned_loadhis */
    case 140:  /* unaligned_loadhiu */
    case 141:  /* unaligned_storesi */
    case 142:  /* unaligned_storehi */
    case 150:  /* *arm_negsi2 */
    case 157:  /* *arm_one_cmplsi2 */
    case 2666:  /* addqq3 */
    case 2667:  /* addhq3 */
    case 2668:  /* addsq3 */
    case 2669:  /* adduqq3 */
    case 2670:  /* adduhq3 */
    case 2671:  /* addusq3 */
    case 2672:  /* addha3 */
    case 2673:  /* addsa3 */
    case 2674:  /* adduha3 */
    case 2675:  /* addusa3 */
    case 2693:  /* subqq3 */
    case 2694:  /* subhq3 */
    case 2695:  /* subsq3 */
    case 2696:  /* subuqq3 */
    case 2697:  /* subuhq3 */
    case 2698:  /* subusq3 */
    case 2699:  /* subha3 */
    case 2700:  /* subsa3 */
    case 2701:  /* subuha3 */
    case 2702:  /* subusa3 */
    case 3586:  /* *p *compare_negsi_si */
    case 3658:  /* *p unaligned_loadsi */
    case 3659:  /* *p unaligned_loadhis */
    case 3660:  /* *p unaligned_loadhiu */
    case 3661:  /* *p unaligned_storesi */
    case 3662:  /* *p unaligned_storehi */
    case 3667:  /* *p *arm_negsi2 */
    case 3671:  /* *p *arm_one_cmplsi2 */
    case 4124:  /* *p addqq3 */
    case 4125:  /* *p addhq3 */
    case 4126:  /* *p addsq3 */
    case 4127:  /* *p adduqq3 */
    case 4128:  /* *p adduhq3 */
    case 4129:  /* *p addusq3 */
    case 4130:  /* *p addha3 */
    case 4131:  /* *p addsa3 */
    case 4132:  /* *p adduha3 */
    case 4133:  /* *p addusa3 */
    case 4151:  /* *p subqq3 */
    case 4152:  /* *p subhq3 */
    case 4153:  /* *p subsq3 */
    case 4154:  /* *p subuqq3 */
    case 4155:  /* *p subuhq3 */
    case 4156:  /* *p subusq3 */
    case 4157:  /* *p subha3 */
    case 4158:  /* *p subsa3 */
    case 4159:  /* *p subuha3 */
    case 4160:  /* *p subusa3 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return PREDICABLE_SHORT_IT_YES;
        }
      else
        {
	  return PREDICABLE_SHORT_IT_NO;
        }

    case 23:  /* *addsi3_carryin_shift_ltu */
    case 24:  /* *addsi3_carryin_shift_geu */
    case 29:  /* *subsi3_carryin */
    case 51:  /* *mulsi3addsi_v6 */
    case 56:  /* *mulsi3subsi */
    case 58:  /* *mulsidi3adddi_v6 */
    case 60:  /* *mulsidi3_v6 */
    case 62:  /* *umulsidi3_v6 */
    case 64:  /* *umulsidi3adddi_v6 */
    case 66:  /* *smulsi3_highpart_v6 */
    case 68:  /* *umulsi3_highpart_v6 */
    case 70:  /* *mulhisi3tb */
    case 71:  /* *mulhisi3bt */
    case 72:  /* *mulhisi3tt */
    case 73:  /* maddhisi4 */
    case 74:  /* *maddhisi4tb */
    case 75:  /* *maddhisi4tt */
    case 76:  /* maddhidi4 */
    case 77:  /* *maddhidi4tb */
    case 78:  /* *maddhidi4tt */
    case 85:  /* *zeroextractsi_compare0_scratch */
    case 90:  /* insv_zero */
    case 91:  /* insv_t2 */
    case 93:  /* *anddi_notzesidi_di */
    case 94:  /* *anddi_notdi_zesidi */
    case 95:  /* *anddi_notsesidi_di */
    case 96:  /* andsi_notsi_si */
    case 98:  /* andsi_not_shiftsi_si_scc_no_reuse */
    case 99:  /* andsi_not_shiftsi_si_scc */
    case 103:  /* *iordi_zesidi_di */
    case 109:  /* *xordi_zesidi_di */
    case 114:  /* *andsi_iorsi3_notsi */
    case 115:  /* *smax_0 */
    case 116:  /* *smax_m1 */
    case 118:  /* *smin_0 */
    case 125:  /* *satsi_smax */
    case 126:  /* *satsi_smin */
    case 127:  /* *satsi_smax_shift */
    case 128:  /* *satsi_smin_shift */
    case 135:  /* *not_shiftsi */
    case 143:  /* *extv_reg */
    case 144:  /* extzv_t2 */
    case 145:  /* divsi3 */
    case 146:  /* udivsi3 */
    case 168:  /* *arm_zero_extendhisi2addsi */
    case 171:  /* *arm_zero_extendqisi2addsi */
    case 172:  /* *compareqi_eq0 */
    case 174:  /* *arm_extendhisi2_v6 */
    case 179:  /* *arm_extendqisi2addsi */
    case 181:  /* *arm_movt */
    case 193:  /* *arm32_movhf */
    case 194:  /* *arm_movsf_soft_insn */
    case 238:  /* *add_multsi */
    case 239:  /* *rsb_multsi */
    case 240:  /* *orr_multsi */
    case 241:  /* *eor_multsi */
    case 242:  /* *and_multsi */
    case 243:  /* *add_shiftsi */
    case 244:  /* *rsb_shiftsi */
    case 245:  /* *orr_shiftsi */
    case 246:  /* *eor_shiftsi */
    case 247:  /* *and_shiftsi */
    case 318:  /* clzsi2 */
    case 319:  /* rbitsi2 */
    case 327:  /* *arm_movtas_ze */
    case 328:  /* *arm_rev */
    case 333:  /* *thumb2_ldrd */
    case 334:  /* *thumb2_ldrd_base */
    case 335:  /* *thumb2_ldrd_base_neg */
    case 336:  /* *thumb2_strd */
    case 337:  /* *thumb2_strd_base */
    case 338:  /* *thumb2_strd_base_neg */
    case 345:  /* *ldm4_ */
    case 347:  /* *ldm4_ia_update */
    case 349:  /* *stm4_ */
    case 350:  /* *stm4_ia_update */
    case 360:  /* *ldm4_db */
    case 361:  /* *ldm4_db_update */
    case 362:  /* *stm4_db */
    case 363:  /* *stm4_db_update */
    case 364:  /* *ldm3_ */
    case 366:  /* *ldm3_ia_update */
    case 368:  /* *stm3_ */
    case 369:  /* *stm3_ia_update */
    case 379:  /* *ldm3_db */
    case 380:  /* *ldm3_db_update */
    case 381:  /* *stm3_db */
    case 382:  /* *stm3_db_update */
    case 383:  /* *ldm2_ */
    case 385:  /* *ldm2_ia_update */
    case 387:  /* *stm2_ */
    case 388:  /* *stm2_ia_update */
    case 398:  /* *ldm2_db */
    case 399:  /* *ldm2_db_update */
    case 400:  /* *stm2_db */
    case 401:  /* *stm2_db_update */
    case 638:  /* *thumb2_movsf_vfp */
    case 645:  /* *abssf2_vfp */
    case 646:  /* *absdf2_vfp */
    case 647:  /* *negsf2_vfp */
    case 648:  /* *negdf2_vfp */
    case 659:  /* *addsf3_vfp */
    case 660:  /* *adddf3_vfp */
    case 662:  /* *subsf3_vfp */
    case 663:  /* *subdf3_vfp */
    case 665:  /* *divsf3_vfp */
    case 666:  /* *divdf3_vfp */
    case 668:  /* *mulsf3_vfp */
    case 669:  /* *muldf3_vfp */
    case 672:  /* *mulsf3negsf_vfp */
    case 673:  /* *negmulsf3_vfp */
    case 674:  /* *muldf3negdf_vfp */
    case 675:  /* *negmuldf3_vfp */
    case 677:  /* *mulsf3addsf_vfp */
    case 678:  /* *muldf3adddf_vfp */
    case 680:  /* *mulsf3subsf_vfp */
    case 681:  /* *muldf3subdf_vfp */
    case 683:  /* *mulsf3negsfaddsf_vfp */
    case 684:  /* *fmuldf3negdfadddf_vfp */
    case 686:  /* *mulsf3negsfsubsf_vfp */
    case 687:  /* *muldf3negdfsubdf_vfp */
    case 689:  /* fmasf4 */
    case 690:  /* fmadf4 */
    case 692:  /* *fmsubsf4 */
    case 693:  /* *fmsubdf4 */
    case 695:  /* *fnmsubsf4 */
    case 696:  /* *fnmsubdf4 */
    case 698:  /* *fnmaddsf4 */
    case 699:  /* *fnmadddf4 */
    case 700:  /* *extendsfdf2_vfp */
    case 701:  /* *truncdfsf2_vfp */
    case 702:  /* extendhfsf2 */
    case 703:  /* truncsfhf2 */
    case 704:  /* *truncsisf2_vfp */
    case 705:  /* *truncsidf2_vfp */
    case 706:  /* fixuns_truncsfsi2 */
    case 707:  /* fixuns_truncdfsi2 */
    case 708:  /* *floatsisf2_vfp */
    case 709:  /* *floatsidf2_vfp */
    case 710:  /* floatunssisf2 */
    case 711:  /* floatunssidf2 */
    case 714:  /* *sqrtsf2_vfp */
    case 715:  /* *sqrtdf2_vfp */
    case 721:  /* *cmpsf_vfp */
    case 722:  /* *cmpsf_trap_vfp */
    case 723:  /* *cmpdf_vfp */
    case 724:  /* *cmpdf_trap_vfp */
    case 725:  /* *combine_vcvt_f32_u32 */
    case 726:  /* *combine_vcvt_f32_s32 */
    case 727:  /* *combine_vcvt_f64_u32 */
    case 728:  /* *combine_vcvt_f64_s32 */
    case 729:  /* *combine_vcvtf2i */
    case 747:  /* btruncsf2 */
    case 748:  /* ceilsf2 */
    case 749:  /* floorsf2 */
    case 750:  /* nearbyintsf2 */
    case 751:  /* rintsf2 */
    case 752:  /* roundsf2 */
    case 753:  /* btruncdf2 */
    case 754:  /* ceildf2 */
    case 755:  /* floordf2 */
    case 756:  /* nearbyintdf2 */
    case 757:  /* rintdf2 */
    case 758:  /* rounddf2 */
    case 846:  /* *thumb_andsi_not_shiftsi_si */
    case 852:  /* *thumb2_abssi2 */
    case 853:  /* *thumb2_neg_abssi2 */
    case 879:  /* *thumb2_extendqisi_v6 */
    case 880:  /* *thumb2_zero_extendhisi2_v6 */
    case 881:  /* thumb2_zero_extendqisi2_v6 */
    case 902:  /* *iordi_notdi_di */
    case 903:  /* *iordi_notzesidi_di */
    case 904:  /* *iordi_notdi_zesidi */
    case 905:  /* *iordi_notsesidi_di */
    case 906:  /* *orsi_notsi_si */
    case 907:  /* *orsi_not_shiftsi_si */
    case 2563:  /* atomic_loadqi */
    case 2564:  /* atomic_loadhi */
    case 2565:  /* atomic_loadsi */
    case 2566:  /* atomic_storeqi */
    case 2567:  /* atomic_storehi */
    case 2568:  /* atomic_storesi */
    case 2569:  /* arm_atomic_loaddi2_ldrd */
    case 2650:  /* arm_load_exclusiveqi */
    case 2651:  /* arm_load_exclusivehi */
    case 2652:  /* arm_load_acquire_exclusiveqi */
    case 2653:  /* arm_load_acquire_exclusivehi */
    case 2654:  /* arm_load_exclusivesi */
    case 2655:  /* arm_load_acquire_exclusivesi */
    case 2656:  /* arm_load_exclusivedi */
    case 2657:  /* arm_load_acquire_exclusivedi */
    case 2658:  /* arm_store_exclusiveqi */
    case 2659:  /* arm_store_exclusivehi */
    case 2660:  /* arm_store_exclusivesi */
    case 2661:  /* arm_store_exclusivedi */
    case 2662:  /* arm_store_release_exclusivedi */
    case 2663:  /* arm_store_release_exclusiveqi */
    case 2664:  /* arm_store_release_exclusivehi */
    case 2665:  /* arm_store_release_exclusivesi */
    case 2676:  /* addv4qq3 */
    case 2677:  /* addv2hq3 */
    case 2678:  /* addv2ha3 */
    case 2679:  /* usaddv4uqq3 */
    case 2680:  /* usaddv2uhq3 */
    case 2681:  /* usadduqq3 */
    case 2682:  /* usadduhq3 */
    case 2683:  /* usaddv2uha3 */
    case 2684:  /* usadduha3 */
    case 2685:  /* ssaddv4qq3 */
    case 2686:  /* ssaddv2hq3 */
    case 2687:  /* ssaddqq3 */
    case 2688:  /* ssaddhq3 */
    case 2689:  /* ssaddv2ha3 */
    case 2690:  /* ssaddha3 */
    case 2691:  /* ssaddsq3 */
    case 2692:  /* ssaddsa3 */
    case 2703:  /* subv4qq3 */
    case 2704:  /* subv2hq3 */
    case 2705:  /* subv2ha3 */
    case 2706:  /* ussubv4uqq3 */
    case 2707:  /* ussubv2uhq3 */
    case 2708:  /* ussubuqq3 */
    case 2709:  /* ussubuhq3 */
    case 2710:  /* ussubv2uha3 */
    case 2711:  /* ussubuha3 */
    case 2712:  /* sssubv4qq3 */
    case 2713:  /* sssubv2hq3 */
    case 2714:  /* sssubqq3 */
    case 2715:  /* sssubhq3 */
    case 2716:  /* sssubv2ha3 */
    case 2717:  /* sssubha3 */
    case 2718:  /* sssubsq3 */
    case 2719:  /* sssubsa3 */
    case 2722:  /* arm_ssatsihi_shift */
    case 2723:  /* arm_usatsihi */
    case 3593:  /* *p *addsi3_carryin_shift_ltu */
    case 3594:  /* *p *addsi3_carryin_shift_geu */
    case 3595:  /* *p *subsi3_carryin */
    case 3602:  /* *p *mulsi3addsi_v6 */
    case 3603:  /* *p *mulsi3subsi */
    case 3605:  /* *p *mulsidi3adddi_v6 */
    case 3607:  /* *p *mulsidi3_v6 */
    case 3609:  /* *p *umulsidi3_v6 */
    case 3611:  /* *p *umulsidi3adddi_v6 */
    case 3613:  /* *p *smulsi3_highpart_v6 */
    case 3615:  /* *p *umulsi3_highpart_v6 */
    case 3617:  /* *p *mulhisi3tb */
    case 3618:  /* *p *mulhisi3bt */
    case 3619:  /* *p *mulhisi3tt */
    case 3620:  /* *p maddhisi4 */
    case 3621:  /* *p *maddhisi4tb */
    case 3622:  /* *p *maddhisi4tt */
    case 3623:  /* *p maddhidi4 */
    case 3624:  /* *p *maddhidi4tb */
    case 3625:  /* *p *maddhidi4tt */
    case 3627:  /* *p *zeroextractsi_compare0_scratch */
    case 3628:  /* *p insv_zero */
    case 3629:  /* *p insv_t2 */
    case 3631:  /* *p *anddi_notzesidi_di */
    case 3632:  /* *p *anddi_notdi_zesidi */
    case 3633:  /* *p *anddi_notsesidi_di */
    case 3634:  /* *p andsi_notsi_si */
    case 3636:  /* *p andsi_not_shiftsi_si_scc_no_reuse */
    case 3637:  /* *p andsi_not_shiftsi_si_scc */
    case 3638:  /* *p *iordi_zesidi_di */
    case 3641:  /* *p *xordi_zesidi_di */
    case 3644:  /* *p *andsi_iorsi3_notsi */
    case 3645:  /* *p *smax_0 */
    case 3646:  /* *p *smax_m1 */
    case 3647:  /* *p *smin_0 */
    case 3648:  /* *p *satsi_smin */
    case 3649:  /* *p *satsi_smax */
    case 3650:  /* *p *satsi_smin */
    case 3651:  /* *p *satsi_smax */
    case 3652:  /* *p *satsi_smin_shift */
    case 3653:  /* *p *satsi_smax_shift */
    case 3654:  /* *p *satsi_smin_shift */
    case 3655:  /* *p *satsi_smax_shift */
    case 3657:  /* *p *not_shiftsi */
    case 3663:  /* *p *extv_reg */
    case 3664:  /* *p extzv_t2 */
    case 3665:  /* *p divsi3 */
    case 3666:  /* *p udivsi3 */
    case 3680:  /* *p *arm_zero_extendhisi2addsi */
    case 3683:  /* *p *arm_zero_extendqisi2addsi */
    case 3684:  /* *p *compareqi_eq0 */
    case 3686:  /* *p *arm_extendhisi2_v6 */
    case 3690:  /* *p *arm_extendqisi2addsi */
    case 3691:  /* *p *arm_movt */
    case 3698:  /* *p *arm32_movhf */
    case 3699:  /* *p *arm_movsf_soft_insn */
    case 3708:  /* *p *add_multsi */
    case 3709:  /* *p *rsb_multsi */
    case 3710:  /* *p *orr_multsi */
    case 3711:  /* *p *eor_multsi */
    case 3712:  /* *p *and_multsi */
    case 3713:  /* *p *add_shiftsi */
    case 3714:  /* *p *rsb_shiftsi */
    case 3715:  /* *p *orr_shiftsi */
    case 3716:  /* *p *eor_shiftsi */
    case 3717:  /* *p *and_shiftsi */
    case 3724:  /* *p clzsi2 */
    case 3725:  /* *p rbitsi2 */
    case 3727:  /* *p *arm_movtas_ze */
    case 3728:  /* *p *arm_rev */
    case 3729:  /* *p *thumb2_ldrd */
    case 3730:  /* *p *thumb2_ldrd_base */
    case 3731:  /* *p *thumb2_ldrd_base_neg */
    case 3732:  /* *p *thumb2_strd */
    case 3733:  /* *p *thumb2_strd_base */
    case 3734:  /* *p *thumb2_strd_base_neg */
    case 3735:  /* *p *ldm4_ */
    case 3736:  /* *p *ldm4_ia_update */
    case 3737:  /* *p *stm4_ */
    case 3738:  /* *p *stm4_ia_update */
    case 3747:  /* *p *ldm4_db */
    case 3748:  /* *p *ldm4_db_update */
    case 3749:  /* *p *stm4_db */
    case 3750:  /* *p *stm4_db_update */
    case 3751:  /* *p *ldm3_ */
    case 3752:  /* *p *ldm3_ia_update */
    case 3753:  /* *p *stm3_ */
    case 3754:  /* *p *stm3_ia_update */
    case 3763:  /* *p *ldm3_db */
    case 3764:  /* *p *ldm3_db_update */
    case 3765:  /* *p *stm3_db */
    case 3766:  /* *p *stm3_db_update */
    case 3767:  /* *p *ldm2_ */
    case 3768:  /* *p *ldm2_ia_update */
    case 3769:  /* *p *stm2_ */
    case 3770:  /* *p *stm2_ia_update */
    case 3779:  /* *p *ldm2_db */
    case 3780:  /* *p *ldm2_db_update */
    case 3781:  /* *p *stm2_db */
    case 3782:  /* *p *stm2_db_update */
    case 4013:  /* *p *thumb2_movsf_vfp */
    case 4015:  /* *p *abssf2_vfp */
    case 4016:  /* *p *absdf2_vfp */
    case 4017:  /* *p *negsf2_vfp */
    case 4018:  /* *p *negdf2_vfp */
    case 4019:  /* *p *addsf3_vfp */
    case 4020:  /* *p *adddf3_vfp */
    case 4021:  /* *p *subsf3_vfp */
    case 4022:  /* *p *subdf3_vfp */
    case 4023:  /* *p *divsf3_vfp */
    case 4024:  /* *p *divdf3_vfp */
    case 4025:  /* *p *mulsf3_vfp */
    case 4026:  /* *p *muldf3_vfp */
    case 4027:  /* *p *mulsf3negsf_vfp */
    case 4028:  /* *p *negmulsf3_vfp */
    case 4029:  /* *p *muldf3negdf_vfp */
    case 4030:  /* *p *negmuldf3_vfp */
    case 4031:  /* *p *mulsf3addsf_vfp */
    case 4032:  /* *p *muldf3adddf_vfp */
    case 4033:  /* *p *mulsf3subsf_vfp */
    case 4034:  /* *p *muldf3subdf_vfp */
    case 4035:  /* *p *mulsf3negsfaddsf_vfp */
    case 4036:  /* *p *fmuldf3negdfadddf_vfp */
    case 4037:  /* *p *mulsf3negsfsubsf_vfp */
    case 4038:  /* *p *muldf3negdfsubdf_vfp */
    case 4039:  /* *p fmasf4 */
    case 4040:  /* *p fmadf4 */
    case 4041:  /* *p *fmsubsf4 */
    case 4042:  /* *p *fmsubdf4 */
    case 4043:  /* *p *fnmsubsf4 */
    case 4044:  /* *p *fnmsubdf4 */
    case 4045:  /* *p *fnmaddsf4 */
    case 4046:  /* *p *fnmadddf4 */
    case 4047:  /* *p *extendsfdf2_vfp */
    case 4048:  /* *p *truncdfsf2_vfp */
    case 4049:  /* *p extendhfsf2 */
    case 4050:  /* *p truncsfhf2 */
    case 4051:  /* *p *truncsisf2_vfp */
    case 4052:  /* *p *truncsidf2_vfp */
    case 4053:  /* *p fixuns_truncsfsi2 */
    case 4054:  /* *p fixuns_truncdfsi2 */
    case 4055:  /* *p *floatsisf2_vfp */
    case 4056:  /* *p *floatsidf2_vfp */
    case 4057:  /* *p floatunssisf2 */
    case 4058:  /* *p floatunssidf2 */
    case 4059:  /* *p *sqrtsf2_vfp */
    case 4060:  /* *p *sqrtdf2_vfp */
    case 4061:  /* *p *cmpsf_vfp */
    case 4062:  /* *p *cmpsf_trap_vfp */
    case 4063:  /* *p *cmpdf_vfp */
    case 4064:  /* *p *cmpdf_trap_vfp */
    case 4065:  /* *p *combine_vcvt_f32_u32 */
    case 4066:  /* *p *combine_vcvt_f32_s32 */
    case 4067:  /* *p *combine_vcvt_f64_u32 */
    case 4068:  /* *p *combine_vcvt_f64_s32 */
    case 4069:  /* *p *combine_vcvtf2i */
    case 4070:  /* *p btruncsf2 */
    case 4071:  /* *p nearbyintsf2 */
    case 4072:  /* *p rintsf2 */
    case 4073:  /* *p btruncdf2 */
    case 4074:  /* *p nearbyintdf2 */
    case 4075:  /* *p rintdf2 */
    case 4076:  /* *p *thumb_andsi_not_shiftsi_si */
    case 4077:  /* *p *thumb2_abssi2 */
    case 4078:  /* *p *thumb2_neg_abssi2 */
    case 4082:  /* *p *thumb2_extendqisi_v6 */
    case 4083:  /* *p *thumb2_zero_extendhisi2_v6 */
    case 4084:  /* *p thumb2_zero_extendqisi2_v6 */
    case 4095:  /* *p *iordi_notdi_di */
    case 4096:  /* *p *iordi_notzesidi_di */
    case 4097:  /* *p *iordi_notdi_zesidi */
    case 4098:  /* *p *iordi_notsesidi_di */
    case 4099:  /* *p *orsi_notsi_si */
    case 4100:  /* *p *orsi_not_shiftsi_si */
    case 4101:  /* *p atomic_loadqi */
    case 4102:  /* *p atomic_loadhi */
    case 4103:  /* *p atomic_loadsi */
    case 4104:  /* *p atomic_storeqi */
    case 4105:  /* *p atomic_storehi */
    case 4106:  /* *p atomic_storesi */
    case 4107:  /* *p arm_atomic_loaddi2_ldrd */
    case 4108:  /* *p arm_load_exclusiveqi */
    case 4109:  /* *p arm_load_exclusivehi */
    case 4110:  /* *p arm_load_acquire_exclusiveqi */
    case 4111:  /* *p arm_load_acquire_exclusivehi */
    case 4112:  /* *p arm_load_exclusivesi */
    case 4113:  /* *p arm_load_acquire_exclusivesi */
    case 4114:  /* *p arm_load_exclusivedi */
    case 4115:  /* *p arm_load_acquire_exclusivedi */
    case 4116:  /* *p arm_store_exclusiveqi */
    case 4117:  /* *p arm_store_exclusivehi */
    case 4118:  /* *p arm_store_exclusivesi */
    case 4119:  /* *p arm_store_exclusivedi */
    case 4120:  /* *p arm_store_release_exclusivedi */
    case 4121:  /* *p arm_store_release_exclusiveqi */
    case 4122:  /* *p arm_store_release_exclusivehi */
    case 4123:  /* *p arm_store_release_exclusivesi */
    case 4134:  /* *p addv4qq3 */
    case 4135:  /* *p addv2hq3 */
    case 4136:  /* *p addv2ha3 */
    case 4137:  /* *p usaddv4uqq3 */
    case 4138:  /* *p usaddv2uhq3 */
    case 4139:  /* *p usadduqq3 */
    case 4140:  /* *p usadduhq3 */
    case 4141:  /* *p usaddv2uha3 */
    case 4142:  /* *p usadduha3 */
    case 4143:  /* *p ssaddv4qq3 */
    case 4144:  /* *p ssaddv2hq3 */
    case 4145:  /* *p ssaddqq3 */
    case 4146:  /* *p ssaddhq3 */
    case 4147:  /* *p ssaddv2ha3 */
    case 4148:  /* *p ssaddha3 */
    case 4149:  /* *p ssaddsq3 */
    case 4150:  /* *p ssaddsa3 */
    case 4161:  /* *p subv4qq3 */
    case 4162:  /* *p subv2hq3 */
    case 4163:  /* *p subv2ha3 */
    case 4164:  /* *p ussubv4uqq3 */
    case 4165:  /* *p ussubv2uhq3 */
    case 4166:  /* *p ussubuqq3 */
    case 4167:  /* *p ussubuhq3 */
    case 4168:  /* *p ussubv2uha3 */
    case 4169:  /* *p ussubuha3 */
    case 4170:  /* *p sssubv4qq3 */
    case 4171:  /* *p sssubv2hq3 */
    case 4172:  /* *p sssubqq3 */
    case 4173:  /* *p sssubhq3 */
    case 4174:  /* *p sssubv2ha3 */
    case 4175:  /* *p sssubha3 */
    case 4176:  /* *p sssubsq3 */
    case 4177:  /* *p sssubsa3 */
    case 4178:  /* *p arm_ssatsihi_shift */
    case 4179:  /* *p arm_usatsihi */
      return PREDICABLE_SHORT_IT_NO;

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
    default:
      return PREDICABLE_SHORT_IT_YES;

    }
}

int
get_attr_shift (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  switch (recog_memoized (insn))
    {
    case 248:  /* *arith_shiftsi_compare0 */
    case 249:  /* *arith_shiftsi_compare0_scratch */
      return 4;

    case 127:  /* *satsi_smax_shift */
    case 128:  /* *satsi_smin_shift */
    case 243:  /* *add_shiftsi */
    case 244:  /* *rsb_shiftsi */
    case 245:  /* *orr_shiftsi */
    case 246:  /* *eor_shiftsi */
    case 247:  /* *and_shiftsi */
    case 250:  /* *sub_shiftsi */
    case 251:  /* *sub_shiftsi_compare0 */
    case 252:  /* *sub_shiftsi_compare0_scratch */
    case 3652:  /* *p *satsi_smin_shift */
    case 3653:  /* *p *satsi_smax_shift */
    case 3654:  /* *p *satsi_smin_shift */
    case 3655:  /* *p *satsi_smax_shift */
    case 3713:  /* *p *add_shiftsi */
    case 3714:  /* *p *rsb_shiftsi */
    case 3715:  /* *p *orr_shiftsi */
    case 3716:  /* *p *eor_shiftsi */
    case 3717:  /* *p *and_shiftsi */
    case 3718:  /* *p *sub_shiftsi */
      return 3;

    case 97:  /* andsi_not_shiftsi_si */
    case 238:  /* *add_multsi */
    case 239:  /* *rsb_multsi */
    case 240:  /* *orr_multsi */
    case 241:  /* *eor_multsi */
    case 242:  /* *and_multsi */
    case 286:  /* *if_shift_move */
    case 288:  /* *if_move_shift */
    case 846:  /* *thumb_andsi_not_shiftsi_si */
    case 907:  /* *orsi_not_shiftsi_si */
    case 3635:  /* *p andsi_not_shiftsi_si */
    case 3708:  /* *p *add_multsi */
    case 3709:  /* *p *rsb_multsi */
    case 3710:  /* *p *orr_multsi */
    case 3711:  /* *p *eor_multsi */
    case 3712:  /* *p *and_multsi */
    case 4076:  /* *p *thumb_andsi_not_shiftsi_si */
    case 4100:  /* *p *orsi_not_shiftsi_si */
      return 2;

    case 98:  /* andsi_not_shiftsi_si_scc_no_reuse */
    case 99:  /* andsi_not_shiftsi_si_scc */
    case 132:  /* *arm_shiftsi3 */
    case 133:  /* *shiftsi3_compare0 */
    case 134:  /* *shiftsi3_compare0_scratch */
    case 135:  /* *not_shiftsi */
    case 136:  /* *not_shiftsi_compare0 */
    case 137:  /* *not_shiftsi_compare0_scratch */
    case 154:  /* *arm_abssi2 */
    case 155:  /* *arm_neg_abssi2 */
    case 163:  /* extendqidi2 */
    case 164:  /* extendhidi2 */
    case 165:  /* extendsidi2 */
    case 197:  /* *cmpsi_shiftsi */
    case 198:  /* *cmpsi_shiftsi_swp */
    case 290:  /* *if_shift_shift */
    case 852:  /* *thumb2_abssi2 */
    case 853:  /* *thumb2_neg_abssi2 */
    case 859:  /* *thumb2_cmpsi_neg_shiftsi */
    case 887:  /* *thumb2_shiftsi3_short */
    case 2722:  /* arm_ssatsihi_shift */
    case 3636:  /* *p andsi_not_shiftsi_si_scc_no_reuse */
    case 3637:  /* *p andsi_not_shiftsi_si_scc */
    case 3656:  /* *p *arm_shiftsi3 */
    case 3657:  /* *p *not_shiftsi */
    case 3668:  /* *p *arm_abssi2 */
    case 3669:  /* *p *arm_neg_abssi2 */
    case 3675:  /* *p extendqidi2 */
    case 3676:  /* *p extendhidi2 */
    case 3677:  /* *p extendsidi2 */
    case 4077:  /* *p *thumb2_abssi2 */
    case 4078:  /* *p *thumb2_neg_abssi2 */
    case 4086:  /* *p *thumb2_shiftsi3_short */
    case 4178:  /* *p arm_ssatsihi_shift */
      return 1;

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
    default:
      return 0;

    }
}

int
get_attr_thumb2_neg_pool_range (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  switch (recog_memoized (insn))
    {
    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
    default:
      return 0;

    }
}

int
get_attr_thumb2_pool_range (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  switch (recog_memoized (insn))
    {
    case 920:  /* *neon_movti */
    case 919:  /* *neon_movv2di */
    case 918:  /* *neon_movv4sf */
    case 917:  /* *neon_movv4si */
    case 916:  /* *neon_movv8hf */
    case 915:  /* *neon_movv8hi */
    case 914:  /* *neon_movv16qi */
    case 913:  /* *neon_movdi */
    case 912:  /* *neon_movv2sf */
    case 911:  /* *neon_movv2si */
    case 910:  /* *neon_movv4hf */
    case 909:  /* *neon_movv4hi */
    case 908:  /* *neon_movv8qi */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7))
        {
	  return 0;
        }
      else if (which_alternative == 3)
        {
	  return 1018 /* 0x3fa */;
        }
      else if (((1 << which_alternative) & 0x70))
        {
	  return 0;
        }
      else if (which_alternative == 7)
        {
	  return 1018 /* 0x3fa */;
        }
      else
        {
	  return 0;
        }

    case 4010:  /* *p *movdi_vfp_cortexa8 */
    case 633:  /* *movdi_vfp_cortexa8 */
    case 632:  /* *movdi_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0xf))
        {
	  return 0;
        }
      else if (which_alternative == 4)
        {
	  return 1018 /* 0x3fa */;
        }
      else if (which_alternative == 5)
        {
	  return 4094 /* 0xffe */;
        }
      else if (((1 << which_alternative) & 0x3c0))
        {
	  return 0;
        }
      else if (which_alternative == 10)
        {
	  return 1018 /* 0x3fa */;
        }
      else
        {
	  return 0;
        }

    case 195:  /* *movdf_soft_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7))
        {
	  return 0;
        }
      else if (which_alternative == 3)
        {
	  return 1018 /* 0x3fa */;
        }
      else
        {
	  return 0;
        }

    case 180:  /* *arm_movdi */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7))
        {
	  return 0;
        }
      else if (which_alternative == 3)
        {
	  return 4094 /* 0xffe */;
        }
      else
        {
	  return 0;
        }

    case 194:  /* *arm_movsf_soft_insn */
    case 3699:  /* *p *arm_movsf_soft_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return 0;
        }
      else if (which_alternative == 1)
        {
	  return 4094 /* 0xffe */;
        }
      else
        {
	  return 0;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
    default:
      return 0;

    }
}

enum attr_type
get_attr_type (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  switch (recog_memoized (insn))
    {
    case 1106:  /* bicdi3_neon */
    case 1094:  /* orndi3_neon */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_NEON_LOGIC;
        }
      else
        {
	  return TYPE_MULTIPLE;
        }

    case 998:  /* subdi3_neon */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_NEON_SUB;
        }
      else if (((1 << which_alternative) & 0xe))
        {
	  return TYPE_MULTIPLE;
        }
      else
        {
	  return TYPE_NEON_SUB;
        }

    case 984:  /* adddi3_neon */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_NEON_ADD;
        }
      else if (((1 << which_alternative) & 0x6))
        {
	  return TYPE_MULTIPLE;
        }
      else if (which_alternative == 3)
        {
	  return TYPE_NEON_ADD;
        }
      else
        {
	  return TYPE_MULTIPLE;
        }

    case 4081:  /* *p *thumb2_movhi_insn */
    case 857:  /* *thumb2_movhi_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_MOV_REG;
        }
      else if (((1 << which_alternative) & 0xe))
        {
	  return TYPE_MOV_IMM;
        }
      else if (which_alternative == 4)
        {
	  return TYPE_STORE1;
        }
      else
        {
	  return TYPE_LOAD1;
        }

    case 4080:  /* *p *thumb2_movsi_insn */
    case 855:  /* *thumb2_movsi_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_MOV_REG;
        }
      else if (((1 << which_alternative) & 0x6))
        {
	  return TYPE_MOV_IMM;
        }
      else if (which_alternative == 3)
        {
	  return TYPE_MVN_IMM;
        }
      else if (which_alternative == 4)
        {
	  return TYPE_MOV_IMM;
        }
      else if (((1 << which_alternative) & 0x60))
        {
	  return TYPE_LOAD1;
        }
      else
        {
	  return TYPE_STORE1;
        }

    case 812:  /* *thumb1_movsf_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_ALUS_IMM;
        }
      else if (which_alternative == 1)
        {
	  return TYPE_LOAD1;
        }
      else if (which_alternative == 2)
        {
	  return TYPE_STORE1;
        }
      else if (which_alternative == 3)
        {
	  return TYPE_LOAD1;
        }
      else if (which_alternative == 4)
        {
	  return TYPE_STORE1;
        }
      else
        {
	  return TYPE_MOV_REG;
        }

    case 811:  /* *thumb1_movhf */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_MOV_REG;
        }
      else if (which_alternative == 1)
        {
	  return TYPE_LOAD1;
        }
      else if (which_alternative == 2)
        {
	  return TYPE_STORE1;
        }
      else
        {
	  return TYPE_MOV_REG;
        }

    case 810:  /* *thumb1_movqi_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_ALU_IMM;
        }
      else if (which_alternative == 1)
        {
	  return TYPE_LOAD1;
        }
      else if (which_alternative == 2)
        {
	  return TYPE_STORE1;
        }
      else if (which_alternative == 3)
        {
	  return TYPE_MOV_REG;
        }
      else
        {
	  return TYPE_MOV_IMM;
        }

    case 809:  /* *thumb1_movhi_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_ALUS_IMM;
        }
      else if (which_alternative == 1)
        {
	  return TYPE_LOAD1;
        }
      else if (which_alternative == 2)
        {
	  return TYPE_STORE1;
        }
      else if (((1 << which_alternative) & 0x18))
        {
	  return TYPE_MOV_REG;
        }
      else
        {
	  return TYPE_MOV_IMM;
        }

    case 808:  /* *thumb1_movsi_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_MOV_REG;
        }
      else if (((1 << which_alternative) & 0x6))
        {
	  return TYPE_MOV_IMM;
        }
      else if (((1 << which_alternative) & 0x18))
        {
	  return TYPE_MULTIPLE;
        }
      else if (which_alternative == 5)
        {
	  return TYPE_LOAD1;
        }
      else if (which_alternative == 6)
        {
	  return TYPE_STORE1;
        }
      else if (which_alternative == 7)
        {
	  return TYPE_LOAD1;
        }
      else if (which_alternative == 8)
        {
	  return TYPE_STORE1;
        }
      else
        {
	  return TYPE_MOV_REG;
        }

    case 807:  /* *thumb1_movdi_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0xf))
        {
	  return TYPE_MULTIPLE;
        }
      else if (which_alternative == 4)
        {
	  return TYPE_LOAD2;
        }
      else if (which_alternative == 5)
        {
	  return TYPE_STORE2;
        }
      else if (which_alternative == 6)
        {
	  return TYPE_LOAD2;
        }
      else if (which_alternative == 7)
        {
	  return TYPE_STORE2;
        }
      else
        {
	  return TYPE_MULTIPLE;
        }

    case 784:  /* *thumb1_addsi3 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return TYPE_ALUS_IMM;
        }
      else if (((1 << which_alternative) & 0x7c))
        {
	  return TYPE_ALUS_SREG;
        }
      else
        {
	  return TYPE_MULTIPLE;
        }

    case 644:  /* *thumb2_movdfcc_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7))
        {
	  return TYPE_FFARITHD;
        }
      else if (((1 << which_alternative) & 0x18))
        {
	  return TYPE_F_MCR;
        }
      else if (which_alternative == 5)
        {
	  return TYPE_F_MCRR;
        }
      else
        {
	  return TYPE_F_MRRC;
        }

    case 643:  /* *movdfcc_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7))
        {
	  return TYPE_FFARITHD;
        }
      else if (((1 << which_alternative) & 0x38))
        {
	  return TYPE_F_MCR;
        }
      else
        {
	  return TYPE_F_MRRC;
        }

    case 642:  /* *thumb2_movsfcc_vfp */
    case 641:  /* *movsfcc_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7))
        {
	  return TYPE_FMOV;
        }
      else if (((1 << which_alternative) & 0x38))
        {
	  return TYPE_F_MCR;
        }
      else
        {
	  return TYPE_F_MRC;
        }

    case 4010:  /* *p *movdi_vfp_cortexa8 */
    case 633:  /* *movdi_vfp_cortexa8 */
    case 632:  /* *movdi_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0xf))
        {
	  return TYPE_MULTIPLE;
        }
      else if (((1 << which_alternative) & 0x30))
        {
	  return TYPE_LOAD2;
        }
      else if (which_alternative == 6)
        {
	  return TYPE_STORE2;
        }
      else if (which_alternative == 7)
        {
	  return TYPE_F_MCRR;
        }
      else if (which_alternative == 8)
        {
	  return TYPE_F_MRRC;
        }
      else if (which_alternative == 9)
        {
	  return TYPE_FFARITHD;
        }
      else if (which_alternative == 10)
        {
	  return TYPE_F_LOADD;
        }
      else
        {
	  return TYPE_F_STORED;
        }

    case 4009:  /* *p *thumb2_movsi_vfp */
    case 631:  /* *thumb2_movsi_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7))
        {
	  return TYPE_MOV_REG;
        }
      else if (which_alternative == 3)
        {
	  return TYPE_MVN_REG;
        }
      else if (which_alternative == 4)
        {
	  return TYPE_MOV_IMM;
        }
      else if (((1 << which_alternative) & 0x60))
        {
	  return TYPE_LOAD1;
        }
      else if (((1 << which_alternative) & 0x180))
        {
	  return TYPE_STORE1;
        }
      else if (which_alternative == 9)
        {
	  return TYPE_F_MCR;
        }
      else if (which_alternative == 10)
        {
	  return TYPE_F_MRC;
        }
      else if (which_alternative == 11)
        {
	  return TYPE_FMOV;
        }
      else if (which_alternative == 12)
        {
	  return TYPE_F_LOADS;
        }
      else
        {
	  return TYPE_F_STORES;
        }

    case 4008:  /* *p *arm_movsi_vfp */
    case 630:  /* *arm_movsi_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return TYPE_MOV_REG;
        }
      else if (which_alternative == 2)
        {
	  return TYPE_MVN_IMM;
        }
      else if (which_alternative == 3)
        {
	  return TYPE_MOV_IMM;
        }
      else if (which_alternative == 4)
        {
	  return TYPE_LOAD1;
        }
      else if (which_alternative == 5)
        {
	  return TYPE_STORE1;
        }
      else if (which_alternative == 6)
        {
	  return TYPE_F_MCR;
        }
      else if (which_alternative == 7)
        {
	  return TYPE_F_MRC;
        }
      else if (which_alternative == 8)
        {
	  return TYPE_FMOV;
        }
      else if (which_alternative == 9)
        {
	  return TYPE_F_LOADS;
        }
      else
        {
	  return TYPE_F_STORES;
        }

    case 4007:  /* *p *thumb2_movhi_fp16 */
    case 4005:  /* *p *thumb2_movhi_vfp */
    case 629:  /* *thumb2_movhi_fp16 */
    case 627:  /* *thumb2_movhi_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_MOV_REG;
        }
      else if (((1 << which_alternative) & 0xe))
        {
	  return TYPE_MOV_IMM;
        }
      else if (which_alternative == 4)
        {
	  return TYPE_STORE1;
        }
      else if (which_alternative == 5)
        {
	  return TYPE_LOAD1;
        }
      else if (which_alternative == 6)
        {
	  return TYPE_F_MCR;
        }
      else if (which_alternative == 7)
        {
	  return TYPE_F_MRC;
        }
      else
        {
	  return TYPE_FMOV;
        }

    case 412:  /* *cond_iwmmxt_movsi_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return TYPE_UNTYPED;
        }
      else if (which_alternative == 2)
        {
	  return TYPE_LOAD1;
        }
      else if (which_alternative == 3)
        {
	  return TYPE_STORE1;
        }
      else
        {
	  return TYPE_UNTYPED;
        }

    case 411:  /* *iwmmxt_movsi_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0xf))
        {
	  return TYPE_UNTYPED;
        }
      else if (which_alternative == 4)
        {
	  return TYPE_LOAD1;
        }
      else if (which_alternative == 5)
        {
	  return TYPE_STORE1;
        }
      else if (((1 << which_alternative) & 0x3c0))
        {
	  return TYPE_UNTYPED;
        }
      else if (which_alternative == 10)
        {
	  return TYPE_F_MCR;
        }
      else if (which_alternative == 11)
        {
	  return TYPE_F_MRC;
        }
      else if (which_alternative == 12)
        {
	  return TYPE_FMOV;
        }
      else if (which_alternative == 13)
        {
	  return TYPE_F_LOADS;
        }
      else
        {
	  return TYPE_F_STORES;
        }

    case 410:  /* *iwmmxt_arm_movdi */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7))
        {
	  return TYPE_UNTYPED;
        }
      else if (which_alternative == 3)
        {
	  return TYPE_LOAD2;
        }
      else if (which_alternative == 4)
        {
	  return TYPE_STORE2;
        }
      else if (((1 << which_alternative) & 0x3e0))
        {
	  return TYPE_UNTYPED;
        }
      else if (which_alternative == 10)
        {
	  return TYPE_F_MCRR;
        }
      else if (which_alternative == 11)
        {
	  return TYPE_F_MRRC;
        }
      else if (which_alternative == 12)
        {
	  return TYPE_FFARITHD;
        }
      else if (which_alternative == 13)
        {
	  return TYPE_F_LOADD;
        }
      else
        {
	  return TYPE_F_STORED;
        }

    case 3789:  /* *p iwmmxt_anddi3 */
    case 408:  /* iwmmxt_anddi3 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_WMMX_WAND;
        }
      else
        {
	  return TYPE_UNTYPED;
        }

    case 3788:  /* *p iwmmxt_xordi3 */
    case 407:  /* iwmmxt_xordi3 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_WMMX_WXOR;
        }
      else
        {
	  return TYPE_UNTYPED;
        }

    case 3787:  /* *p iwmmxt_iordi3 */
    case 406:  /* iwmmxt_iordi3 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_WMMX_WOR;
        }
      else
        {
	  return TYPE_UNTYPED;
        }

    case 288:  /* *if_move_shift */
    case 286:  /* *if_shift_move */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if (const_int_operand (operands[3], VOIDmode))
	    {
	      return TYPE_MOV_SHIFT;
	    }
	  else
	    {
	      return TYPE_MOV_SHIFT_REG;
	    }
        }
      else
        {
	  return TYPE_MULTIPLE;
        }

    case 274:  /* *if_move_plus */
    case 272:  /* *if_plus_move */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if (const_int_operand (operands[3], VOIDmode))
	    {
	      return TYPE_ALU_IMM;
	    }
	  else
	    {
	      return TYPE_ALU_SREG;
	    }
        }
      else if (which_alternative == 1)
        {
	  return TYPE_ALU_IMM;
        }
      else
        {
	  return TYPE_MULTIPLE;
        }

    case 3717:  /* *p *and_shiftsi */
    case 3716:  /* *p *eor_shiftsi */
    case 3715:  /* *p *orr_shiftsi */
    case 3714:  /* *p *rsb_shiftsi */
    case 3713:  /* *p *add_shiftsi */
    case 247:  /* *and_shiftsi */
    case 246:  /* *eor_shiftsi */
    case 245:  /* *orr_shiftsi */
    case 244:  /* *rsb_shiftsi */
    case 243:  /* *add_shiftsi */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return TYPE_ALU_SHIFT_IMM;
        }
      else
        {
	  return TYPE_ALU_SHIFT_REG;
        }

    case 3700:  /* *p *arm_cmpsi_insn */
    case 196:  /* *arm_cmpsi_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_ALUS_IMM;
        }
      else if (((1 << which_alternative) & 0x6))
        {
	  return TYPE_ALUS_SREG;
        }
      else
        {
	  return TYPE_ALUS_IMM;
        }

    case 3697:  /* *p *arm_movqi_insn */
    case 192:  /* *arm_movqi_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return TYPE_MOV_REG;
        }
      else if (((1 << which_alternative) & 0xc))
        {
	  return TYPE_MOV_IMM;
        }
      else if (which_alternative == 4)
        {
	  return TYPE_MVN_IMM;
        }
      else if (which_alternative == 5)
        {
	  return TYPE_LOAD1;
        }
      else if (which_alternative == 6)
        {
	  return TYPE_STORE1;
        }
      else if (which_alternative == 7)
        {
	  return TYPE_LOAD1;
        }
      else
        {
	  return TYPE_STORE1;
        }

    case 195:  /* *movdf_soft_insn */
    case 180:  /* *arm_movdi */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x7))
        {
	  return TYPE_MULTIPLE;
        }
      else if (which_alternative == 3)
        {
	  return TYPE_LOAD2;
        }
      else
        {
	  return TYPE_STORE2;
        }

    case 3677:  /* *p extendsidi2 */
    case 3676:  /* *p extendhidi2 */
    case 3675:  /* *p extendqidi2 */
    case 3674:  /* *p zero_extendsidi2 */
    case 3673:  /* *p zero_extendhidi2 */
    case 3672:  /* *p zero_extendqidi2 */
    case 165:  /* extendsidi2 */
    case 164:  /* extendhidi2 */
    case 163:  /* extendqidi2 */
    case 162:  /* zero_extendsidi2 */
    case 161:  /* zero_extendhidi2 */
    case 160:  /* zero_extendqidi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_MULTIPLE;
        }
      else if (which_alternative == 1)
        {
	  return TYPE_MOV_REG;
        }
      else
        {
	  return TYPE_MULTIPLE;
        }

    case 3670:  /* *p one_cmpldi2 */
    case 156:  /* one_cmpldi2 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_NEON_MOVE;
        }
      else if (((1 << which_alternative) & 0x6))
        {
	  return TYPE_MULTIPLE;
        }
      else
        {
	  return TYPE_NEON_MOVE;
        }

    case 3656:  /* *p *arm_shiftsi3 */
    case 132:  /* *arm_shiftsi3 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_ALU_SHIFT_REG;
        }
      else if (((1 << which_alternative) & 0x6))
        {
	  return TYPE_ALU_SHIFT_IMM;
        }
      else
        {
	  return TYPE_ALU_SHIFT_REG;
        }

    case 3643:  /* *p *arm_xorsi3 */
    case 111:  /* *arm_xorsi3 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_LOGIC_IMM;
        }
      else if (((1 << which_alternative) & 0x6))
        {
	  return TYPE_LOGIC_REG;
        }
      else
        {
	  return TYPE_MULTIPLE;
        }

    case 108:  /* *xordi3_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_NEON_LOGIC;
        }
      else if (((1 << which_alternative) & 0x1e))
        {
	  return TYPE_MULTIPLE;
        }
      else
        {
	  return TYPE_NEON_LOGIC;
        }

    case 3640:  /* *p *iorsi3_insn */
    case 105:  /* *iorsi3_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_LOGIC_IMM;
        }
      else if (which_alternative == 1)
        {
	  return TYPE_LOGIC_REG;
        }
      else if (which_alternative == 2)
        {
	  return TYPE_LOGIC_IMM;
        }
      else
        {
	  return TYPE_LOGIC_REG;
        }

    case 84:  /* *andsi3_compare0_scratch */
    case 83:  /* *andsi3_compare0 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return TYPE_LOGICS_IMM;
        }
      else
        {
	  return TYPE_LOGICS_REG;
        }

    case 3626:  /* *p *arm_andsi3_insn */
    case 82:  /* *arm_andsi3_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return TYPE_LOGIC_IMM;
        }
      else if (((1 << which_alternative) & 0xc))
        {
	  return TYPE_LOGIC_REG;
        }
      else
        {
	  return TYPE_LOGIC_IMM;
        }

    case 102:  /* *iordi3_insn */
    case 79:  /* *anddi3_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return TYPE_NEON_LOGIC;
        }
      else if (((1 << which_alternative) & 0x3c))
        {
	  return TYPE_MULTIPLE;
        }
      else
        {
	  return TYPE_NEON_LOGIC;
        }

    case 43:  /* subsi3_compare */
    case 42:  /* subsi3_compare0 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_ALUS_IMM;
        }
      else
        {
	  return TYPE_ALUS_SREG;
        }

    case 3598:  /* *p *arm_subsi3_insn */
    case 41:  /* *arm_subsi3_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0xf))
        {
	  return TYPE_ALU_SREG;
        }
      else if (((1 << which_alternative) & 0x30))
        {
	  return TYPE_ALU_IMM;
        }
      else if (((1 << which_alternative) & 0xc0))
        {
	  return TYPE_ALU_SREG;
        }
      else
        {
	  return TYPE_MULTIPLE;
        }

    case 3592:  /* *p *addsi3_carryin_alt2_geu */
    case 3591:  /* *p *addsi3_carryin_alt2_ltu */
    case 3590:  /* *p *addsi3_carryin_geu */
    case 3589:  /* *p *addsi3_carryin_ltu */
    case 22:  /* *addsi3_carryin_alt2_geu */
    case 21:  /* *addsi3_carryin_alt2_ltu */
    case 20:  /* *addsi3_carryin_geu */
    case 19:  /* *addsi3_carryin_ltu */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return TYPE_ADC_REG;
        }
      else
        {
	  return TYPE_ADC_IMM;
        }

    case 3588:  /* *p *compare_addsi2_op1 */
    case 3587:  /* *p *compare_addsi2_op0 */
    case 18:  /* *compare_addsi2_op1 */
    case 17:  /* *compare_addsi2_op0 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_ALUS_IMM;
        }
      else if (which_alternative == 1)
        {
	  return TYPE_ALUS_SREG;
        }
      else if (((1 << which_alternative) & 0xc))
        {
	  return TYPE_ALUS_IMM;
        }
      else
        {
	  return TYPE_ALUS_SREG;
        }

    case 3585:  /* *p *addsi3_compare0_scratch */
    case 16:  /* *addsi3_compare_op2 */
    case 15:  /* *addsi3_compare_op1 */
    case 12:  /* *addsi3_compare0_scratch */
    case 11:  /* addsi3_compare0 */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x3))
        {
	  return TYPE_ALUS_IMM;
        }
      else
        {
	  return TYPE_ALUS_SREG;
        }

    case 106:  /* *iorsi3_compare0 */
    case 107:  /* *iorsi3_compare0_scratch */
    case 112:  /* *xorsi3_compare0 */
    case 113:  /* *xorsi3_compare0_scratch */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_LOGICS_IMM;
        }
      else
        {
	  return TYPE_LOGICS_REG;
        }

    case 212:  /* *movsicc_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if (const_int_operand (operands[2], VOIDmode))
	    {
	      return TYPE_MOV_IMM;
	    }
	  else
	    {
	      return TYPE_MOV_REG;
	    }
        }
      else if (which_alternative == 1)
        {
	  return TYPE_MVN_IMM;
        }
      else if (which_alternative == 2)
        {
	  if (const_int_operand (operands[1], VOIDmode))
	    {
	      return TYPE_MOV_IMM;
	    }
	  else
	    {
	      return TYPE_MOV_REG;
	    }
        }
      else if (which_alternative == 3)
        {
	  return TYPE_MVN_IMM;
        }
      else if (which_alternative == 4)
        {
	  return TYPE_MULTIPLE;
        }
      else if (which_alternative == 5)
        {
	  return TYPE_MULTIPLE;
        }
      else if (which_alternative == 6)
        {
	  return TYPE_MULTIPLE;
        }
      else
        {
	  return TYPE_MULTIPLE;
        }

    case 197:  /* *cmpsi_shiftsi */
    case 198:  /* *cmpsi_shiftsi_swp */
    case 251:  /* *sub_shiftsi_compare0 */
    case 252:  /* *sub_shiftsi_compare0_scratch */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_ALUS_SHIFT_IMM;
        }
      else if (which_alternative == 1)
        {
	  return TYPE_ALUS_SHIFT_REG;
        }
      else
        {
	  return TYPE_ALUS_SHIFT_IMM;
        }

    case 254:  /* *ior_scc */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_LOGIC_IMM;
        }
      else
        {
	  return TYPE_MULTIPLE;
        }

    case 256:  /* *cond_move */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if (const_int_operand (operands[2], VOIDmode))
	    {
	      return TYPE_MOV_IMM;
	    }
	  else
	    {
	      return TYPE_MOV_REG;
	    }
        }
      else if (which_alternative == 1)
        {
	  if (const_int_operand (operands[1], VOIDmode))
	    {
	      return TYPE_MOV_IMM;
	    }
	  else
	    {
	      return TYPE_MOV_REG;
	    }
        }
      else
        {
	  return TYPE_MULTIPLE;
        }

    case 278:  /* *if_arith_move */
    case 280:  /* *if_move_arith */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if (const_int_operand (operands[3], VOIDmode))
	    {
	      return TYPE_ALU_SHIFT_IMM;
	    }
	  else
	    {
	      return TYPE_ALU_SHIFT_REG;
	    }
        }
      else
        {
	  return TYPE_MULTIPLE;
        }

    case 290:  /* *if_shift_shift */
      extract_insn_cached (insn);
      if ((const_int_operand (operands[2], VOIDmode)) && (const_int_operand (operands[4], VOIDmode)))
        {
	  return TYPE_MOV_SHIFT;
        }
      else
        {
	  return TYPE_MOV_SHIFT_REG;
        }

    case 284:  /* *if_not_move */
    case 282:  /* *if_move_not */
    case 300:  /* *cond_move_not */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_MVN_REG;
        }
      else
        {
	  return TYPE_MULTIPLE;
        }

    case 635:  /* *movhf_vfp_neon */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_NEON_LOAD1_1REG;
        }
      else if (which_alternative == 1)
        {
	  return TYPE_NEON_STORE1_1REG;
        }
      else if (which_alternative == 2)
        {
	  return TYPE_LOAD1;
        }
      else if (which_alternative == 3)
        {
	  return TYPE_STORE1;
        }
      else if (which_alternative == 4)
        {
	  return TYPE_FMOV;
        }
      else if (which_alternative == 5)
        {
	  return TYPE_MOV_REG;
        }
      else if (which_alternative == 6)
        {
	  return TYPE_F_MCR;
        }
      else if (which_alternative == 7)
        {
	  return TYPE_F_MRC;
        }
      else
        {
	  return TYPE_MULTIPLE;
        }

    case 636:  /* *movhf_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_LOAD1;
        }
      else if (which_alternative == 1)
        {
	  return TYPE_STORE1;
        }
      else if (which_alternative == 2)
        {
	  return TYPE_FMOV;
        }
      else if (which_alternative == 3)
        {
	  return TYPE_MOV_REG;
        }
      else if (which_alternative == 4)
        {
	  return TYPE_F_MCR;
        }
      else if (which_alternative == 5)
        {
	  return TYPE_F_MRC;
        }
      else
        {
	  return TYPE_MULTIPLE;
        }

    case 134:  /* *shiftsi3_compare0_scratch */
    case 793:  /* *thumb1_ashlsi3 */
    case 794:  /* *thumb1_ashrsi3 */
    case 795:  /* *thumb1_lshrsi3 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_SHIFT_IMM;
        }
      else
        {
	  return TYPE_SHIFT_REG;
        }

    case 813:  /* *thumb_movdf_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_MULTIPLE;
        }
      else if (which_alternative == 1)
        {
	  return TYPE_LOAD2;
        }
      else if (which_alternative == 2)
        {
	  return TYPE_STORE2;
        }
      else if (which_alternative == 3)
        {
	  return TYPE_LOAD2;
        }
      else if (which_alternative == 4)
        {
	  return TYPE_STORE2;
        }
      else
        {
	  return TYPE_MULTIPLE;
        }

    case 816:  /* thumb1_cbz */
      if (get_attr_length (insn) == 2)
        {
	  return TYPE_BRANCH;
        }
      else
        {
	  return TYPE_MULTIPLE;
        }

    case 865:  /* *thumb2_movsicc_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if (const_int_operand (operands[2], VOIDmode))
	    {
	      return TYPE_MOV_IMM;
	    }
	  else
	    {
	      return TYPE_MOV_REG;
	    }
        }
      else if (which_alternative == 1)
        {
	  if (const_int_operand (operands[1], VOIDmode))
	    {
	      return TYPE_MOV_IMM;
	    }
	  else
	    {
	      return TYPE_MOV_REG;
	    }
        }
      else if (which_alternative == 2)
        {
	  if (const_int_operand (operands[2], VOIDmode))
	    {
	      return TYPE_MOV_IMM;
	    }
	  else
	    {
	      return TYPE_MOV_REG;
	    }
        }
      else if (which_alternative == 3)
        {
	  return TYPE_MVN_IMM;
        }
      else if (which_alternative == 4)
        {
	  if (const_int_operand (operands[1], VOIDmode))
	    {
	      return TYPE_MOV_IMM;
	    }
	  else
	    {
	      return TYPE_MOV_REG;
	    }
        }
      else if (which_alternative == 5)
        {
	  return TYPE_MVN_IMM;
        }
      else if (which_alternative == 6)
        {
	  return TYPE_MULTIPLE;
        }
      else if (which_alternative == 7)
        {
	  return TYPE_MULTIPLE;
        }
      else if (which_alternative == 8)
        {
	  return TYPE_MULTIPLE;
        }
      else if (which_alternative == 9)
        {
	  return TYPE_MULTIPLE;
        }
      else if (which_alternative == 10)
        {
	  return TYPE_MULTIPLE;
        }
      else
        {
	  return TYPE_MULTIPLE;
        }

    case 893:  /* thumb2_addsi3_compare0 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if (const_int_operand (operands[2], VOIDmode))
	    {
	      return TYPE_ALUS_IMM;
	    }
	  else
	    {
	      return TYPE_ALUS_SREG;
	    }
        }
      else if (which_alternative == 1)
        {
	  return TYPE_ALUS_IMM;
        }
      else
        {
	  if (const_int_operand (operands[2], VOIDmode))
	    {
	      return TYPE_ALUS_IMM;
	    }
	  else
	    {
	      return TYPE_ALUS_SREG;
	    }
        }

    case 894:  /* *thumb2_addsi3_compare0_scratch */
      extract_insn_cached (insn);
      if (const_int_operand (operands[1], VOIDmode))
        {
	  return TYPE_ALUS_IMM;
        }
      else
        {
	  return TYPE_ALUS_SREG;
        }

    case 898:  /* *thumb2_cbz */
    case 899:  /* *thumb2_cbnz */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_BRANCH;
        }
      else
        {
	  return TYPE_MULTIPLE;
        }

    case 908:  /* *neon_movv8qi */
    case 909:  /* *neon_movv4hi */
    case 910:  /* *neon_movv4hf */
    case 911:  /* *neon_movv2si */
    case 912:  /* *neon_movv2sf */
    case 913:  /* *neon_movdi */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_NEON_MOVE;
        }
      else if (which_alternative == 1)
        {
	  return TYPE_NEON_STORE1_1REG;
        }
      else if (which_alternative == 2)
        {
	  return TYPE_NEON_MOVE;
        }
      else if (which_alternative == 3)
        {
	  return TYPE_NEON_LOAD1_1REG;
        }
      else if (which_alternative == 4)
        {
	  return TYPE_NEON_TO_GP;
        }
      else if (which_alternative == 5)
        {
	  return TYPE_NEON_FROM_GP;
        }
      else if (which_alternative == 6)
        {
	  return TYPE_MOV_REG;
        }
      else if (which_alternative == 7)
        {
	  return TYPE_NEON_LOAD1_2REG;
        }
      else
        {
	  return TYPE_NEON_STORE1_2REG;
        }

    case 914:  /* *neon_movv16qi */
    case 915:  /* *neon_movv8hi */
    case 916:  /* *neon_movv8hf */
    case 917:  /* *neon_movv4si */
    case 918:  /* *neon_movv4sf */
    case 919:  /* *neon_movv2di */
    case 920:  /* *neon_movti */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_NEON_MOVE_Q;
        }
      else if (which_alternative == 1)
        {
	  return TYPE_NEON_STORE2_2REG_Q;
        }
      else if (which_alternative == 2)
        {
	  return TYPE_NEON_MOVE_Q;
        }
      else if (which_alternative == 3)
        {
	  return TYPE_NEON_LOAD2_2REG_Q;
        }
      else if (which_alternative == 4)
        {
	  return TYPE_NEON_TO_GP_Q;
        }
      else if (which_alternative == 5)
        {
	  return TYPE_NEON_FROM_GP_Q;
        }
      else if (which_alternative == 6)
        {
	  return TYPE_MOV_REG;
        }
      else if (which_alternative == 7)
        {
	  return TYPE_NEON_LOAD1_4REG;
        }
      else
        {
	  return TYPE_NEON_STORE1_4REG;
        }

    case 921:  /* *neon_movei */
    case 922:  /* *neon_movoi */
    case 923:  /* *neon_movci */
    case 924:  /* *neon_movxi */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_NEON_MOVE_Q;
        }
      else if (which_alternative == 1)
        {
	  return TYPE_NEON_STORE2_2REG_Q;
        }
      else
        {
	  return TYPE_NEON_LOAD2_2REG_Q;
        }

    case 949:  /* vec_setv8qi_internal */
    case 950:  /* vec_setv4hi_internal */
    case 951:  /* vec_setv4hf_internal */
    case 952:  /* vec_setv2si_internal */
    case 953:  /* vec_setv2sf_internal */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_NEON_LOAD1_ALL_LANES;
        }
      else
        {
	  return TYPE_NEON_FROM_GP;
        }

    case 954:  /* vec_setv16qi_internal */
    case 955:  /* vec_setv8hi_internal */
    case 956:  /* vec_setv8hf_internal */
    case 957:  /* vec_setv4si_internal */
    case 958:  /* vec_setv4sf_internal */
    case 959:  /* vec_setv2di_internal */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_NEON_LOAD1_ALL_LANES_Q;
        }
      else
        {
	  return TYPE_NEON_FROM_GP_Q;
        }

    case 960:  /* vec_extractv8qi */
    case 961:  /* vec_extractv4hi */
    case 962:  /* vec_extractv4hf */
    case 963:  /* vec_extractv2si */
    case 964:  /* vec_extractv2sf */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_NEON_STORE1_ONE_LANE;
        }
      else
        {
	  return TYPE_NEON_TO_GP;
        }

    case 965:  /* vec_extractv16qi */
    case 966:  /* vec_extractv8hi */
    case 967:  /* vec_extractv8hf */
    case 968:  /* vec_extractv4si */
    case 969:  /* vec_extractv4sf */
    case 970:  /* vec_extractv2di */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_NEON_STORE1_ONE_LANE_Q;
        }
      else
        {
	  return TYPE_NEON_TO_GP_Q;
        }

    case 971:  /* *addv8qi3_neon */
    case 973:  /* *addv4hi3_neon */
    case 975:  /* *addv2si3_neon */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_ADDSUB_S;
        }
      else
        {
	  return TYPE_NEON_ADD;
        }

    case 972:  /* *addv16qi3_neon */
    case 974:  /* *addv8hi3_neon */
    case 976:  /* *addv4si3_neon */
    case 981:  /* *addv2di3_neon */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_ADDSUB_S_Q;
        }
      else
        {
	  return TYPE_NEON_ADD_Q;
        }

    case 985:  /* *subv8qi3_neon */
    case 987:  /* *subv4hi3_neon */
    case 989:  /* *subv2si3_neon */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_ADDSUB_S;
        }
      else
        {
	  return TYPE_NEON_SUB;
        }

    case 986:  /* *subv16qi3_neon */
    case 988:  /* *subv8hi3_neon */
    case 990:  /* *subv4si3_neon */
    case 995:  /* *subv2di3_neon */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_ADDSUB_S_Q;
        }
      else
        {
	  return TYPE_NEON_SUB_Q;
        }

    case 1001:  /* *mulv4hi3_neon */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_MUL_S;
        }
      else
        {
	  return TYPE_NEON_MUL_H;
        }

    case 1002:  /* *mulv8hi3_neon */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_MUL_S_Q;
        }
      else
        {
	  return TYPE_NEON_MUL_H_Q;
        }

    case 1003:  /* *mulv2si3_neon */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_MUL_S;
        }
      else
        {
	  return TYPE_NEON_MUL_S;
        }

    case 1004:  /* *mulv4si3_neon */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_MUL_S_Q;
        }
      else
        {
	  return TYPE_NEON_MUL_S_Q;
        }

    case 1129:  /* absv8qi2 */
    case 1131:  /* absv4hi2 */
    case 1133:  /* absv2si2 */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_ABS_S;
        }
      else
        {
	  return TYPE_NEON_ABS;
        }

    case 1130:  /* absv16qi2 */
    case 1132:  /* absv8hi2 */
    case 1134:  /* absv4si2 */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_ABS_S_Q;
        }
      else
        {
	  return TYPE_NEON_ABS_Q;
        }

    case 1135:  /* absv2sf2 */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true))
        {
	  return TYPE_NEON_FP_ABS_S;
        }
      else
        {
	  return TYPE_NEON_ABS;
        }

    case 1136:  /* absv4sf2 */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true))
        {
	  return TYPE_NEON_FP_ABS_S_Q;
        }
      else
        {
	  return TYPE_NEON_ABS_Q;
        }

    case 1137:  /* negv8qi2 */
    case 1139:  /* negv4hi2 */
    case 1141:  /* negv2si2 */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_NEG_S;
        }
      else
        {
	  return TYPE_NEON_NEG;
        }

    case 1138:  /* negv16qi2 */
    case 1140:  /* negv8hi2 */
    case 1142:  /* negv4si2 */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_NEG_S_Q;
        }
      else
        {
	  return TYPE_NEON_NEG_Q;
        }

    case 1143:  /* negv2sf2 */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true))
        {
	  return TYPE_NEON_FP_NEG_S;
        }
      else
        {
	  return TYPE_NEON_NEG;
        }

    case 1144:  /* negv4sf2 */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true))
        {
	  return TYPE_NEON_FP_NEG_S_Q;
        }
      else
        {
	  return TYPE_NEON_NEG_Q;
        }

    case 1176:  /* *sminv8qi3_neon */
    case 1178:  /* *sminv4hi3_neon */
    case 1180:  /* *sminv2si3_neon */
    case 1184:  /* *smaxv8qi3_neon */
    case 1186:  /* *smaxv4hi3_neon */
    case 1188:  /* *smaxv2si3_neon */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_MINMAX_S;
        }
      else
        {
	  return TYPE_NEON_MINMAX;
        }

    case 1177:  /* *sminv16qi3_neon */
    case 1179:  /* *sminv8hi3_neon */
    case 1181:  /* *sminv4si3_neon */
    case 1185:  /* *smaxv16qi3_neon */
    case 1187:  /* *smaxv8hi3_neon */
    case 1189:  /* *smaxv4si3_neon */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_MINMAX_S_Q;
        }
      else
        {
	  return TYPE_NEON_MINMAX_Q;
        }

    case 1182:  /* *sminv2sf3_neon */
    case 1190:  /* *smaxv2sf3_neon */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true))
        {
	  return TYPE_NEON_FP_MINMAX_S;
        }
      else
        {
	  return TYPE_NEON_MINMAX;
        }

    case 1183:  /* *sminv4sf3_neon */
    case 1191:  /* *smaxv4sf3_neon */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true))
        {
	  return TYPE_NEON_FP_MINMAX_S_Q;
        }
      else
        {
	  return TYPE_NEON_MINMAX_Q;
        }

    case 1192:  /* vashlv8qi3 */
    case 1194:  /* vashlv4hi3 */
    case 1196:  /* vashlv2si3 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_NEON_SHIFT_REG;
        }
      else
        {
	  return TYPE_NEON_SHIFT_IMM;
        }

    case 1193:  /* vashlv16qi3 */
    case 1195:  /* vashlv8hi3 */
    case 1197:  /* vashlv4si3 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_NEON_SHIFT_REG_Q;
        }
      else
        {
	  return TYPE_NEON_SHIFT_IMM_Q;
        }

    case 1224:  /* neon_load_count */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_NEON_LOAD1_1REG;
        }
      else
        {
	  return TYPE_NEON_FROM_GP;
        }

    case 1225:  /* ashldi3_neon_noclobber */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_NEON_SHIFT_IMM;
        }
      else
        {
	  return TYPE_NEON_SHIFT_REG;
        }

    case 1294:  /* neon_vpadd_internalv8qi */
    case 1295:  /* neon_vpadd_internalv4hi */
    case 1296:  /* neon_vpadd_internalv2si */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_REDUC_ADD_S;
        }
      else
        {
	  return TYPE_NEON_REDUC_ADD;
        }

    case 1297:  /* neon_vpadd_internalv2sf */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true))
        {
	  return TYPE_NEON_FP_REDUC_ADD_S;
        }
      else
        {
	  return TYPE_NEON_REDUC_ADD;
        }

    case 1299:  /* neon_vpsminv8qi */
    case 1300:  /* neon_vpsminv4hi */
    case 1301:  /* neon_vpsminv2si */
    case 1303:  /* neon_vpsmaxv8qi */
    case 1304:  /* neon_vpsmaxv4hi */
    case 1305:  /* neon_vpsmaxv2si */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_REDUC_MINMAX_S;
        }
      else
        {
	  return TYPE_NEON_REDUC_MINMAX;
        }

    case 1302:  /* neon_vpsminv2sf */
    case 1306:  /* neon_vpsmaxv2sf */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true))
        {
	  return TYPE_NEON_FP_REDUC_MINMAX_S;
        }
      else
        {
	  return TYPE_NEON_REDUC_MINMAX;
        }

    case 977:  /* *addv4hf3_neon */
    case 979:  /* *addv2sf3_neon */
    case 983:  /* addv4hf3_fp16 */
    case 1329:  /* neon_vaddv2sf_unspec */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true))
        {
	  return TYPE_NEON_FP_ADDSUB_S;
        }
      else
        {
	  return TYPE_NEON_ADD;
        }

    case 978:  /* *addv8hf3_neon */
    case 980:  /* *addv4sf3_neon */
    case 982:  /* addv8hf3_fp16 */
    case 1330:  /* neon_vaddv4sf_unspec */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true))
        {
	  return TYPE_NEON_FP_ADDSUB_S_Q;
        }
      else
        {
	  return TYPE_NEON_ADD_Q;
        }

    case 999:  /* *mulv8qi3_neon */
    case 1389:  /* neon_vmulpv8qi */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_MUL_S;
        }
      else
        {
	  return TYPE_NEON_MUL_B;
        }

    case 1000:  /* *mulv16qi3_neon */
    case 1390:  /* neon_vmulpv16qi */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_MUL_S_Q;
        }
      else
        {
	  return TYPE_NEON_MUL_B_Q;
        }

    case 1005:  /* *mulv2sf3_neon */
    case 1391:  /* neon_vmulfv2sf */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true))
        {
	  return TYPE_NEON_FP_MUL_S;
        }
      else
        {
	  return TYPE_NEON_MUL_S;
        }

    case 1006:  /* *mulv4sf3_neon */
    case 1392:  /* neon_vmulfv4sf */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true))
        {
	  return TYPE_NEON_FP_MUL_S_Q;
        }
      else
        {
	  return TYPE_NEON_MUL_S_Q;
        }

    case 1007:  /* mulv8qi3addv8qi_neon */
    case 1017:  /* mulv8qi3negv8qiaddv8qi_neon */
    case 1395:  /* neon_vmlav8qi_unspec */
    case 1409:  /* neon_vmlsv8qi_unspec */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_MLA_S;
        }
      else
        {
	  return TYPE_NEON_MLA_B;
        }

    case 1008:  /* mulv16qi3addv16qi_neon */
    case 1018:  /* mulv16qi3negv16qiaddv16qi_neon */
    case 1396:  /* neon_vmlav16qi_unspec */
    case 1410:  /* neon_vmlsv16qi_unspec */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_MLA_S_Q;
        }
      else
        {
	  return TYPE_NEON_MLA_B_Q;
        }

    case 1009:  /* mulv4hi3addv4hi_neon */
    case 1019:  /* mulv4hi3negv4hiaddv4hi_neon */
    case 1397:  /* neon_vmlav4hi_unspec */
    case 1411:  /* neon_vmlsv4hi_unspec */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_MLA_S;
        }
      else
        {
	  return TYPE_NEON_MLA_H;
        }

    case 1010:  /* mulv8hi3addv8hi_neon */
    case 1020:  /* mulv8hi3negv8hiaddv8hi_neon */
    case 1398:  /* neon_vmlav8hi_unspec */
    case 1412:  /* neon_vmlsv8hi_unspec */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_MLA_S_Q;
        }
      else
        {
	  return TYPE_NEON_MLA_H_Q;
        }

    case 1011:  /* mulv2si3addv2si_neon */
    case 1021:  /* mulv2si3negv2siaddv2si_neon */
    case 1399:  /* neon_vmlav2si_unspec */
    case 1413:  /* neon_vmlsv2si_unspec */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_MLA_S;
        }
      else
        {
	  return TYPE_NEON_MLA_S;
        }

    case 1012:  /* mulv4si3addv4si_neon */
    case 1022:  /* mulv4si3negv4siaddv4si_neon */
    case 1400:  /* neon_vmlav4si_unspec */
    case 1414:  /* neon_vmlsv4si_unspec */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_MLA_S_Q;
        }
      else
        {
	  return TYPE_NEON_MLA_S_Q;
        }

    case 1013:  /* mulv2sf3addv2sf_neon */
    case 1023:  /* mulv2sf3negv2sfaddv2sf_neon */
    case 1401:  /* neon_vmlav2sf_unspec */
    case 1415:  /* neon_vmlsv2sf_unspec */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true))
        {
	  return TYPE_NEON_FP_MLA_S;
        }
      else
        {
	  return TYPE_NEON_MLA_S;
        }

    case 1014:  /* mulv4sf3addv4sf_neon */
    case 1024:  /* mulv4sf3negv4sfaddv4sf_neon */
    case 1402:  /* neon_vmlav4sf_unspec */
    case 1416:  /* neon_vmlsv4sf_unspec */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true))
        {
	  return TYPE_NEON_FP_MLA_S_Q;
        }
      else
        {
	  return TYPE_NEON_MLA_S_Q;
        }

    case 991:  /* *subv4hf3_neon */
    case 993:  /* *subv2sf3_neon */
    case 1454:  /* neon_vsubv2sf_unspec */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true))
        {
	  return TYPE_NEON_FP_ADDSUB_S;
        }
      else
        {
	  return TYPE_NEON_SUB;
        }

    case 992:  /* *subv8hf3_neon */
    case 994:  /* *subv4sf3_neon */
    case 1455:  /* neon_vsubv4sf_unspec */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true))
        {
	  return TYPE_NEON_FP_ADDSUB_S_Q;
        }
      else
        {
	  return TYPE_NEON_SUB_Q;
        }

    case 1507:  /* neon_vceqv16qi_insn */
    case 1508:  /* neon_vcgtv16qi_insn */
    case 1509:  /* neon_vcgev16qi_insn */
    case 1510:  /* neon_vclev16qi_insn */
    case 1511:  /* neon_vcltv16qi_insn */
    case 1517:  /* neon_vceqv8hi_insn */
    case 1518:  /* neon_vcgtv8hi_insn */
    case 1519:  /* neon_vcgev8hi_insn */
    case 1520:  /* neon_vclev8hi_insn */
    case 1521:  /* neon_vcltv8hi_insn */
    case 1527:  /* neon_vceqv4si_insn */
    case 1528:  /* neon_vcgtv4si_insn */
    case 1529:  /* neon_vcgev4si_insn */
    case 1530:  /* neon_vclev4si_insn */
    case 1531:  /* neon_vcltv4si_insn */
    case 1537:  /* neon_vceqv4sf_insn */
    case 1538:  /* neon_vcgtv4sf_insn */
    case 1539:  /* neon_vcgev4sf_insn */
    case 1540:  /* neon_vclev4sf_insn */
    case 1541:  /* neon_vcltv4sf_insn */
    case 1552:  /* neon_vceqv8hf_fp16insn */
    case 1553:  /* neon_vcgtv8hf_fp16insn */
    case 1554:  /* neon_vcgev8hf_fp16insn */
    case 1555:  /* neon_vclev8hf_fp16insn */
    case 1556:  /* neon_vcltv8hf_fp16insn */
      extract_insn_cached (insn);
      if (zero_operand (operands[2], VOIDmode))
        {
	  return TYPE_NEON_COMPARE_ZERO_Q;
        }
      else
        {
	  return TYPE_NEON_COMPARE_Q;
        }

    case 1502:  /* neon_vceqv8qi_insn */
    case 1503:  /* neon_vcgtv8qi_insn */
    case 1504:  /* neon_vcgev8qi_insn */
    case 1505:  /* neon_vclev8qi_insn */
    case 1506:  /* neon_vcltv8qi_insn */
    case 1512:  /* neon_vceqv4hi_insn */
    case 1513:  /* neon_vcgtv4hi_insn */
    case 1514:  /* neon_vcgev4hi_insn */
    case 1515:  /* neon_vclev4hi_insn */
    case 1516:  /* neon_vcltv4hi_insn */
    case 1522:  /* neon_vceqv2si_insn */
    case 1523:  /* neon_vcgtv2si_insn */
    case 1524:  /* neon_vcgev2si_insn */
    case 1525:  /* neon_vclev2si_insn */
    case 1526:  /* neon_vcltv2si_insn */
    case 1532:  /* neon_vceqv2sf_insn */
    case 1533:  /* neon_vcgtv2sf_insn */
    case 1534:  /* neon_vcgev2sf_insn */
    case 1535:  /* neon_vclev2sf_insn */
    case 1536:  /* neon_vcltv2sf_insn */
    case 1557:  /* neon_vceqv4hf_fp16insn */
    case 1558:  /* neon_vcgtv4hf_fp16insn */
    case 1559:  /* neon_vcgev4hf_fp16insn */
    case 1560:  /* neon_vclev4hf_fp16insn */
    case 1561:  /* neon_vcltv4hf_fp16insn */
      extract_insn_cached (insn);
      if (zero_operand (operands[2], VOIDmode))
        {
	  return TYPE_NEON_COMPARE_ZERO;
        }
      else
        {
	  return TYPE_NEON_COMPARE;
        }

    case 1809:  /* neon_vdup_nv2si */
    case 1810:  /* neon_vdup_nv2sf */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_NEON_FROM_GP;
        }
      else
        {
	  return TYPE_NEON_DUP;
        }

    case 1811:  /* neon_vdup_nv4si */
    case 1812:  /* neon_vdup_nv4sf */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_NEON_FROM_GP_Q;
        }
      else
        {
	  return TYPE_NEON_DUP_Q;
        }

    case 1918:  /* neon_vmul_lanev4hi */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_MUL_S_SCALAR;
        }
      else
        {
	  return TYPE_NEON_MUL_H_SCALAR;
        }

    case 1919:  /* neon_vmul_lanev2si */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_MUL_S_SCALAR;
        }
      else
        {
	  return TYPE_NEON_MUL_S_SCALAR;
        }

    case 1920:  /* neon_vmul_lanev2sf */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true))
        {
	  return TYPE_NEON_FP_MUL_S_SCALAR;
        }
      else
        {
	  return TYPE_NEON_MUL_S_SCALAR;
        }

    case 1921:  /* neon_vmul_lanev8hi */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_MUL_S_SCALAR_Q;
        }
      else
        {
	  return TYPE_NEON_MUL_H_SCALAR_Q;
        }

    case 1922:  /* neon_vmul_lanev4si */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_MUL_S_SCALAR_Q;
        }
      else
        {
	  return TYPE_NEON_MUL_S_SCALAR_Q;
        }

    case 1923:  /* neon_vmul_lanev4sf */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true))
        {
	  return TYPE_NEON_FP_MUL_S_SCALAR_Q;
        }
      else
        {
	  return TYPE_NEON_MUL_S_SCALAR_Q;
        }

    case 1948:  /* neon_vmla_lanev4hi */
    case 1960:  /* neon_vmls_lanev4hi */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_MLA_S_SCALAR;
        }
      else
        {
	  return TYPE_NEON_MLA_H_SCALAR;
        }

    case 1949:  /* neon_vmla_lanev2si */
    case 1961:  /* neon_vmls_lanev2si */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_MLA_S_SCALAR;
        }
      else
        {
	  return TYPE_NEON_MLA_S_SCALAR;
        }

    case 1950:  /* neon_vmla_lanev2sf */
    case 1962:  /* neon_vmls_lanev2sf */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true))
        {
	  return TYPE_NEON_FP_MLA_S_SCALAR;
        }
      else
        {
	  return TYPE_NEON_MLA_S_SCALAR;
        }

    case 1951:  /* neon_vmla_lanev8hi */
    case 1963:  /* neon_vmls_lanev8hi */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_MLA_S_SCALAR_Q;
        }
      else
        {
	  return TYPE_NEON_MLA_H_SCALAR_Q;
        }

    case 1952:  /* neon_vmla_lanev4si */
    case 1964:  /* neon_vmls_lanev4si */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false))
        {
	  return TYPE_NEON_FP_MLA_S_SCALAR_Q;
        }
      else
        {
	  return TYPE_NEON_MLA_S_SCALAR_Q;
        }

    case 1953:  /* neon_vmla_lanev4sf */
    case 1965:  /* neon_vmls_lanev4sf */
      extract_constrain_insn_cached (insn);
      if (
#line 3968 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true))
        {
	  return TYPE_NEON_FP_MLA_S_SCALAR_Q;
        }
      else
        {
	  return TYPE_NEON_MLA_S_SCALAR_Q;
        }

    case 2319:  /* neon_vld2v8qi */
      if ((8) == (64))
        {
	  return TYPE_NEON_LOAD1_2REG;
        }
      else
        {
	  return TYPE_NEON_LOAD2_2REG;
        }

    case 2320:  /* neon_vld2v4hi */
    case 2321:  /* neon_vld2v4hf */
      if ((16) == (64))
        {
	  return TYPE_NEON_LOAD1_2REG;
        }
      else
        {
	  return TYPE_NEON_LOAD2_2REG;
        }

    case 2322:  /* neon_vld2v2si */
    case 2323:  /* neon_vld2v2sf */
      if ((32) == (64))
        {
	  return TYPE_NEON_LOAD1_2REG;
        }
      else
        {
	  return TYPE_NEON_LOAD2_2REG;
        }

    case 2324:  /* neon_vld2di */
      if ((64) == (64))
        {
	  return TYPE_NEON_LOAD1_2REG;
        }
      else
        {
	  return TYPE_NEON_LOAD2_2REG;
        }

    case 2339:  /* neon_vld2_dupv8qi */
      if ((8) > (1))
        {
	  return TYPE_NEON_LOAD2_ALL_LANES;
        }
      else
        {
	  return TYPE_NEON_LOAD1_1REG;
        }

    case 2340:  /* neon_vld2_dupv4hi */
    case 2341:  /* neon_vld2_dupv4hf */
      if ((4) > (1))
        {
	  return TYPE_NEON_LOAD2_ALL_LANES;
        }
      else
        {
	  return TYPE_NEON_LOAD1_1REG;
        }

    case 2342:  /* neon_vld2_dupv2si */
    case 2343:  /* neon_vld2_dupv2sf */
      if ((2) > (1))
        {
	  return TYPE_NEON_LOAD2_ALL_LANES;
        }
      else
        {
	  return TYPE_NEON_LOAD1_1REG;
        }

    case 2344:  /* neon_vld2_dupdi */
      if ((1) > (1))
        {
	  return TYPE_NEON_LOAD2_ALL_LANES;
        }
      else
        {
	  return TYPE_NEON_LOAD1_1REG;
        }

    case 2345:  /* neon_vst2v8qi */
      if ((8) == (64))
        {
	  return TYPE_NEON_STORE1_2REG;
        }
      else
        {
	  return TYPE_NEON_STORE2_ONE_LANE;
        }

    case 2346:  /* neon_vst2v4hi */
    case 2347:  /* neon_vst2v4hf */
      if ((16) == (64))
        {
	  return TYPE_NEON_STORE1_2REG;
        }
      else
        {
	  return TYPE_NEON_STORE2_ONE_LANE;
        }

    case 2348:  /* neon_vst2v2si */
    case 2349:  /* neon_vst2v2sf */
      if ((32) == (64))
        {
	  return TYPE_NEON_STORE1_2REG;
        }
      else
        {
	  return TYPE_NEON_STORE2_ONE_LANE;
        }

    case 2350:  /* neon_vst2di */
      if ((64) == (64))
        {
	  return TYPE_NEON_STORE1_2REG;
        }
      else
        {
	  return TYPE_NEON_STORE2_ONE_LANE;
        }

    case 2365:  /* neon_vld3v8qi */
      if ((8) == (64))
        {
	  return TYPE_NEON_LOAD1_3REG;
        }
      else
        {
	  return TYPE_NEON_LOAD3_3REG;
        }

    case 2366:  /* neon_vld3v4hi */
    case 2367:  /* neon_vld3v4hf */
      if ((16) == (64))
        {
	  return TYPE_NEON_LOAD1_3REG;
        }
      else
        {
	  return TYPE_NEON_LOAD3_3REG;
        }

    case 2368:  /* neon_vld3v2si */
    case 2369:  /* neon_vld3v2sf */
      if ((32) == (64))
        {
	  return TYPE_NEON_LOAD1_3REG;
        }
      else
        {
	  return TYPE_NEON_LOAD3_3REG;
        }

    case 2370:  /* neon_vld3di */
      if ((64) == (64))
        {
	  return TYPE_NEON_LOAD1_3REG;
        }
      else
        {
	  return TYPE_NEON_LOAD3_3REG;
        }

    case 2390:  /* neon_vld3_dupv8qi */
      if ((8) > (1))
        {
	  return TYPE_NEON_LOAD3_ALL_LANES;
        }
      else
        {
	  return TYPE_NEON_LOAD1_1REG;
        }

    case 2391:  /* neon_vld3_dupv4hi */
    case 2392:  /* neon_vld3_dupv4hf */
      if ((4) > (1))
        {
	  return TYPE_NEON_LOAD3_ALL_LANES;
        }
      else
        {
	  return TYPE_NEON_LOAD1_1REG;
        }

    case 2393:  /* neon_vld3_dupv2si */
    case 2394:  /* neon_vld3_dupv2sf */
      if ((2) > (1))
        {
	  return TYPE_NEON_LOAD3_ALL_LANES;
        }
      else
        {
	  return TYPE_NEON_LOAD1_1REG;
        }

    case 2395:  /* neon_vld3_dupdi */
      if ((1) > (1))
        {
	  return TYPE_NEON_LOAD3_ALL_LANES;
        }
      else
        {
	  return TYPE_NEON_LOAD1_1REG;
        }

    case 2396:  /* neon_vst3v8qi */
      if ((8) == (64))
        {
	  return TYPE_NEON_STORE1_3REG;
        }
      else
        {
	  return TYPE_NEON_STORE3_ONE_LANE;
        }

    case 2397:  /* neon_vst3v4hi */
    case 2398:  /* neon_vst3v4hf */
      if ((16) == (64))
        {
	  return TYPE_NEON_STORE1_3REG;
        }
      else
        {
	  return TYPE_NEON_STORE3_ONE_LANE;
        }

    case 2399:  /* neon_vst3v2si */
    case 2400:  /* neon_vst3v2sf */
      if ((32) == (64))
        {
	  return TYPE_NEON_STORE1_3REG;
        }
      else
        {
	  return TYPE_NEON_STORE3_ONE_LANE;
        }

    case 2401:  /* neon_vst3di */
      if ((64) == (64))
        {
	  return TYPE_NEON_STORE1_3REG;
        }
      else
        {
	  return TYPE_NEON_STORE3_ONE_LANE;
        }

    case 2421:  /* neon_vld4v8qi */
      if ((8) == (64))
        {
	  return TYPE_NEON_LOAD1_4REG;
        }
      else
        {
	  return TYPE_NEON_LOAD4_4REG;
        }

    case 2422:  /* neon_vld4v4hi */
    case 2423:  /* neon_vld4v4hf */
      if ((16) == (64))
        {
	  return TYPE_NEON_LOAD1_4REG;
        }
      else
        {
	  return TYPE_NEON_LOAD4_4REG;
        }

    case 2424:  /* neon_vld4v2si */
    case 2425:  /* neon_vld4v2sf */
      if ((32) == (64))
        {
	  return TYPE_NEON_LOAD1_4REG;
        }
      else
        {
	  return TYPE_NEON_LOAD4_4REG;
        }

    case 2426:  /* neon_vld4di */
      if ((64) == (64))
        {
	  return TYPE_NEON_LOAD1_4REG;
        }
      else
        {
	  return TYPE_NEON_LOAD4_4REG;
        }

    case 2446:  /* neon_vld4_dupv8qi */
      if ((8) > (1))
        {
	  return TYPE_NEON_LOAD4_ALL_LANES;
        }
      else
        {
	  return TYPE_NEON_LOAD1_1REG;
        }

    case 2447:  /* neon_vld4_dupv4hi */
    case 2448:  /* neon_vld4_dupv4hf */
      if ((4) > (1))
        {
	  return TYPE_NEON_LOAD4_ALL_LANES;
        }
      else
        {
	  return TYPE_NEON_LOAD1_1REG;
        }

    case 2449:  /* neon_vld4_dupv2si */
    case 2450:  /* neon_vld4_dupv2sf */
      if ((2) > (1))
        {
	  return TYPE_NEON_LOAD4_ALL_LANES;
        }
      else
        {
	  return TYPE_NEON_LOAD1_1REG;
        }

    case 2451:  /* neon_vld4_dupdi */
      if ((1) > (1))
        {
	  return TYPE_NEON_LOAD4_ALL_LANES;
        }
      else
        {
	  return TYPE_NEON_LOAD1_1REG;
        }

    case 2452:  /* neon_vst4v8qi */
      if ((8) == (64))
        {
	  return TYPE_NEON_STORE1_4REG;
        }
      else
        {
	  return TYPE_NEON_STORE4_4REG;
        }

    case 2453:  /* neon_vst4v4hi */
    case 2454:  /* neon_vst4v4hf */
      if ((16) == (64))
        {
	  return TYPE_NEON_STORE1_4REG;
        }
      else
        {
	  return TYPE_NEON_STORE4_4REG;
        }

    case 2455:  /* neon_vst4v2si */
    case 2456:  /* neon_vst4v2sf */
      if ((32) == (64))
        {
	  return TYPE_NEON_STORE1_4REG;
        }
      else
        {
	  return TYPE_NEON_STORE4_4REG;
        }

    case 2457:  /* neon_vst4di */
      if ((64) == (64))
        {
	  return TYPE_NEON_STORE1_4REG;
        }
      else
        {
	  return TYPE_NEON_STORE4_4REG;
        }

    case 2525:  /* neon_vabdv8qi_2 */
      extract_constrain_insn_cached (insn);
      if ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0))
        {
	  return TYPE_NEON_FP_ABD_S;
        }
      else
        {
	  return TYPE_NEON_ABD;
        }

    case 2526:  /* neon_vabdv16qi_2 */
      extract_constrain_insn_cached (insn);
      if ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0))
        {
	  return TYPE_NEON_FP_ABD_S_Q;
        }
      else
        {
	  return TYPE_NEON_ABD_Q;
        }

    case 2527:  /* neon_vabdv4hi_2 */
      extract_constrain_insn_cached (insn);
      if ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0))
        {
	  return TYPE_NEON_FP_ABD_S;
        }
      else
        {
	  return TYPE_NEON_ABD;
        }

    case 2528:  /* neon_vabdv8hi_2 */
      extract_constrain_insn_cached (insn);
      if ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0))
        {
	  return TYPE_NEON_FP_ABD_S_Q;
        }
      else
        {
	  return TYPE_NEON_ABD_Q;
        }

    case 2529:  /* neon_vabdv2si_2 */
      extract_constrain_insn_cached (insn);
      if ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0))
        {
	  return TYPE_NEON_FP_ABD_S;
        }
      else
        {
	  return TYPE_NEON_ABD;
        }

    case 2530:  /* neon_vabdv4si_2 */
      extract_constrain_insn_cached (insn);
      if ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0))
        {
	  return TYPE_NEON_FP_ABD_S_Q;
        }
      else
        {
	  return TYPE_NEON_ABD_Q;
        }

    case 2531:  /* neon_vabdv4hf_2 */
      extract_constrain_insn_cached (insn);
      if ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0))
        {
	  return TYPE_NEON_FP_ABD_S;
        }
      else
        {
	  return TYPE_NEON_ABD;
        }

    case 2532:  /* neon_vabdv8hf_2 */
      extract_constrain_insn_cached (insn);
      if ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0))
        {
	  return TYPE_NEON_FP_ABD_S_Q;
        }
      else
        {
	  return TYPE_NEON_ABD_Q;
        }

    case 2533:  /* neon_vabdv2sf_2 */
      extract_constrain_insn_cached (insn);
      if ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0))
        {
	  return TYPE_NEON_FP_ABD_S;
        }
      else
        {
	  return TYPE_NEON_ABD;
        }

    case 2534:  /* neon_vabdv4sf_2 */
      extract_constrain_insn_cached (insn);
      if ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0))
        {
	  return TYPE_NEON_FP_ABD_S_Q;
        }
      else
        {
	  return TYPE_NEON_ABD_Q;
        }

    case 2535:  /* neon_vabdv2di_2 */
      extract_constrain_insn_cached (insn);
      if ((
#line 6191 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0))
        {
	  return TYPE_NEON_FP_ABD_S_Q;
        }
      else
        {
	  return TYPE_NEON_ABD_Q;
        }

    case 2536:  /* neon_vabdv8qi_3 */
      extract_constrain_insn_cached (insn);
      if ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0))
        {
	  return TYPE_NEON_FP_ABD_S;
        }
      else
        {
	  return TYPE_NEON_ABD;
        }

    case 2537:  /* neon_vabdv16qi_3 */
      extract_constrain_insn_cached (insn);
      if ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0))
        {
	  return TYPE_NEON_FP_ABD_S_Q;
        }
      else
        {
	  return TYPE_NEON_ABD_Q;
        }

    case 2538:  /* neon_vabdv4hi_3 */
      extract_constrain_insn_cached (insn);
      if ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0))
        {
	  return TYPE_NEON_FP_ABD_S;
        }
      else
        {
	  return TYPE_NEON_ABD;
        }

    case 2539:  /* neon_vabdv8hi_3 */
      extract_constrain_insn_cached (insn);
      if ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0))
        {
	  return TYPE_NEON_FP_ABD_S_Q;
        }
      else
        {
	  return TYPE_NEON_ABD_Q;
        }

    case 2540:  /* neon_vabdv2si_3 */
      extract_constrain_insn_cached (insn);
      if ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0))
        {
	  return TYPE_NEON_FP_ABD_S;
        }
      else
        {
	  return TYPE_NEON_ABD;
        }

    case 2541:  /* neon_vabdv4si_3 */
      extract_constrain_insn_cached (insn);
      if ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0))
        {
	  return TYPE_NEON_FP_ABD_S_Q;
        }
      else
        {
	  return TYPE_NEON_ABD_Q;
        }

    case 2542:  /* neon_vabdv4hf_3 */
      extract_constrain_insn_cached (insn);
      if ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0))
        {
	  return TYPE_NEON_FP_ABD_S;
        }
      else
        {
	  return TYPE_NEON_ABD;
        }

    case 2543:  /* neon_vabdv8hf_3 */
      extract_constrain_insn_cached (insn);
      if ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0))
        {
	  return TYPE_NEON_FP_ABD_S_Q;
        }
      else
        {
	  return TYPE_NEON_ABD_Q;
        }

    case 2544:  /* neon_vabdv2sf_3 */
      extract_constrain_insn_cached (insn);
      if ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0))
        {
	  return TYPE_NEON_FP_ABD_S;
        }
      else
        {
	  return TYPE_NEON_ABD;
        }

    case 2545:  /* neon_vabdv4sf_3 */
      extract_constrain_insn_cached (insn);
      if ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(true)) != (0))
        {
	  return TYPE_NEON_FP_ABD_S_Q;
        }
      else
        {
	  return TYPE_NEON_ABD_Q;
        }

    case 2546:  /* neon_vabdv2di_3 */
      extract_constrain_insn_cached (insn);
      if ((
#line 6204 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/neon.md"
(false)) != (0))
        {
	  return TYPE_NEON_FP_ABD_S_Q;
        }
      else
        {
	  return TYPE_NEON_ABD_Q;
        }

    case 4:  /* *arm_addsi3 */
    case 3584:  /* *p *arm_addsi3 */
      extract_insn_cached (insn);
      if (const_int_operand (operands[2], VOIDmode))
        {
	  return TYPE_ALU_IMM;
        }
      else
        {
	  return TYPE_ALU_SREG;
        }

    case 29:  /* *subsi3_carryin */
    case 3595:  /* *p *subsi3_carryin */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_ADC_REG;
        }
      else
        {
	  return TYPE_ADC_IMM;
        }

    case 23:  /* *addsi3_carryin_shift_ltu */
    case 24:  /* *addsi3_carryin_shift_geu */
    case 33:  /* *subsi3_carryin_shift */
    case 34:  /* *rsbsi3_carryin_shift */
    case 3593:  /* *p *addsi3_carryin_shift_ltu */
    case 3594:  /* *p *addsi3_carryin_shift_geu */
    case 3596:  /* *p *subsi3_carryin_shift */
    case 3597:  /* *p *rsbsi3_carryin_shift */
      extract_insn_cached (insn);
      if (const_int_operand (operands[4], VOIDmode))
        {
	  return TYPE_ALU_SHIFT_IMM;
        }
      else
        {
	  return TYPE_ALU_SHIFT_REG;
        }

    case 97:  /* andsi_not_shiftsi_si */
    case 3635:  /* *p andsi_not_shiftsi_si */
      extract_insn_cached (insn);
      if (const_int_operand (operands[3], VOIDmode))
        {
	  return TYPE_LOGIC_SHIFT_IMM;
        }
      else
        {
	  return TYPE_LOGIC_SHIFT_REG;
        }

    case 98:  /* andsi_not_shiftsi_si_scc_no_reuse */
    case 99:  /* andsi_not_shiftsi_si_scc */
    case 3636:  /* *p andsi_not_shiftsi_si_scc_no_reuse */
    case 3637:  /* *p andsi_not_shiftsi_si_scc */
      extract_insn_cached (insn);
      if (const_int_operand (operands[2], VOIDmode))
        {
	  return TYPE_LOGIC_SHIFT_IMM;
        }
      else
        {
	  return TYPE_LOGIC_SHIFT_REG;
        }

    case 103:  /* *iordi_zesidi_di */
    case 3638:  /* *p *iordi_zesidi_di */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_LOGIC_REG;
        }
      else
        {
	  return TYPE_MULTIPLE;
        }

    case 135:  /* *not_shiftsi */
    case 136:  /* *not_shiftsi_compare0 */
    case 137:  /* *not_shiftsi_compare0_scratch */
    case 3657:  /* *p *not_shiftsi */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_MVN_SHIFT;
        }
      else
        {
	  return TYPE_MVN_SHIFT_REG;
        }

    case 166:  /* *arm_zero_extendhisi2 */
    case 169:  /* *arm_zero_extendqisi2 */
    case 173:  /* *arm_extendhisi2 */
    case 177:  /* *arm_extendqisi */
    case 803:  /* *thumb1_zero_extendqisi2 */
    case 3678:  /* *p *arm_zero_extendhisi2 */
    case 3681:  /* *p *arm_zero_extendqisi2 */
    case 3685:  /* *p *arm_extendhisi2 */
    case 3688:  /* *p *arm_extendqisi */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_ALU_SHIFT_REG;
        }
      else
        {
	  return TYPE_LOAD_BYTE;
        }

    case 182:  /* *arm_movsi_insn */
    case 3692:  /* *p *arm_movsi_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_MOV_REG;
        }
      else if (which_alternative == 1)
        {
	  return TYPE_MOV_IMM;
        }
      else if (which_alternative == 2)
        {
	  return TYPE_MVN_IMM;
        }
      else if (which_alternative == 3)
        {
	  return TYPE_MOV_IMM;
        }
      else if (which_alternative == 4)
        {
	  return TYPE_LOAD1;
        }
      else
        {
	  return TYPE_STORE1;
        }

    case 190:  /* *movhi_insn_arch4 */
    case 3695:  /* *p *movhi_insn_arch4 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if (const_int_operand (operands[1], VOIDmode))
	    {
	      return TYPE_MOV_IMM;
	    }
	  else
	    {
	      return TYPE_MOV_REG;
	    }
        }
      else if (which_alternative == 1)
        {
	  return TYPE_MVN_IMM;
        }
      else if (which_alternative == 2)
        {
	  return TYPE_MOV_IMM;
        }
      else if (which_alternative == 3)
        {
	  return TYPE_STORE1;
        }
      else
        {
	  return TYPE_LOAD1;
        }

    case 191:  /* *movhi_bytes */
    case 3696:  /* *p *movhi_bytes */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_MOV_IMM;
        }
      else if (which_alternative == 1)
        {
	  return TYPE_MOV_REG;
        }
      else
        {
	  return TYPE_MVN_IMM;
        }

    case 193:  /* *arm32_movhf */
    case 3698:  /* *p *arm32_movhf */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_LOAD1;
        }
      else if (which_alternative == 1)
        {
	  return TYPE_STORE1;
        }
      else if (which_alternative == 2)
        {
	  return TYPE_MOV_REG;
        }
      else
        {
	  return TYPE_MULTIPLE;
        }

    case 194:  /* *arm_movsf_soft_insn */
    case 3699:  /* *p *arm_movsf_soft_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_MOV_REG;
        }
      else if (which_alternative == 1)
        {
	  return TYPE_LOAD1;
        }
      else
        {
	  return TYPE_STORE1;
        }

    case 199:  /* *arm_cmpsi_negshiftsi_si */
    case 3701:  /* *p *arm_cmpsi_negshiftsi_si */
      extract_insn_cached (insn);
      if (const_int_operand (operands[3], VOIDmode))
        {
	  return TYPE_ALUS_SHIFT_IMM;
        }
      else
        {
	  return TYPE_ALUS_SHIFT_REG;
        }

    case 133:  /* *shiftsi3_compare0 */
    case 248:  /* *arith_shiftsi_compare0 */
    case 249:  /* *arith_shiftsi_compare0_scratch */
    case 250:  /* *sub_shiftsi */
    case 3718:  /* *p *sub_shiftsi */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_ALUS_SHIFT_IMM;
        }
      else
        {
	  return TYPE_ALUS_SHIFT_REG;
        }

    case 413:  /* movv2si_internal */
    case 414:  /* movv4hi_internal */
    case 415:  /* movv8qi_internal */
    case 3791:  /* *p movv2si_internal */
    case 3792:  /* *p movv4hi_internal */
    case 3793:  /* *p movv8qi_internal */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_WMMX_WMOV;
        }
      else if (which_alternative == 1)
        {
	  return TYPE_WMMX_WSTR;
        }
      else if (which_alternative == 2)
        {
	  return TYPE_WMMX_WLDR;
        }
      else if (which_alternative == 3)
        {
	  return TYPE_WMMX_TMRRC;
        }
      else if (which_alternative == 4)
        {
	  return TYPE_WMMX_TMCRR;
        }
      else if (which_alternative == 5)
        {
	  return TYPE_UNTYPED;
        }
      else if (which_alternative == 6)
        {
	  return TYPE_LOAD1;
        }
      else
        {
	  return TYPE_STORE1;
        }

    case 626:  /* *arm_movhi_vfp */
    case 628:  /* *arm_movhi_fp16 */
    case 4004:  /* *p *arm_movhi_vfp */
    case 4006:  /* *p *arm_movhi_fp16 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if (const_int_operand (operands[1], VOIDmode))
	    {
	      return TYPE_MOV_IMM;
	    }
	  else
	    {
	      return TYPE_MOV_REG;
	    }
        }
      else if (which_alternative == 1)
        {
	  return TYPE_MVN_IMM;
        }
      else if (which_alternative == 2)
        {
	  return TYPE_MOV_IMM;
        }
      else if (which_alternative == 3)
        {
	  return TYPE_STORE1;
        }
      else if (which_alternative == 4)
        {
	  return TYPE_LOAD1;
        }
      else if (which_alternative == 5)
        {
	  return TYPE_F_MCR;
        }
      else if (which_alternative == 6)
        {
	  return TYPE_F_MRC;
        }
      else
        {
	  return TYPE_FMOV;
        }

    case 634:  /* *movhf_vfp_fp16 */
    case 4011:  /* *p *movhf_vfp_fp16 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_LOAD1;
        }
      else if (which_alternative == 1)
        {
	  return TYPE_STORE1;
        }
      else if (which_alternative == 2)
        {
	  return TYPE_FMOV;
        }
      else if (which_alternative == 3)
        {
	  return TYPE_MOV_REG;
        }
      else if (which_alternative == 4)
        {
	  return TYPE_F_MCR;
        }
      else if (which_alternative == 5)
        {
	  return TYPE_F_MRC;
        }
      else if (which_alternative == 6)
        {
	  return TYPE_FCONSTS;
        }
      else if (which_alternative == 7)
        {
	  return TYPE_NEON_LOAD1_1REG;
        }
      else if (which_alternative == 8)
        {
	  return TYPE_NEON_STORE1_1REG;
        }
      else
        {
	  if (
#line 469 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/vfp.md"
(arm_arch_thumb2))
	    {
	      return TYPE_MOV_IMM;
	    }
	  else
	    {
	      return TYPE_MULTIPLE;
	    }
        }

    case 637:  /* *movsf_vfp */
    case 638:  /* *thumb2_movsf_vfp */
    case 4012:  /* *p *movsf_vfp */
    case 4013:  /* *p *thumb2_movsf_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_F_MCR;
        }
      else if (which_alternative == 1)
        {
	  return TYPE_F_MRC;
        }
      else if (which_alternative == 2)
        {
	  return TYPE_FCONSTS;
        }
      else if (which_alternative == 3)
        {
	  return TYPE_F_LOADS;
        }
      else if (which_alternative == 4)
        {
	  return TYPE_F_STORES;
        }
      else if (which_alternative == 5)
        {
	  return TYPE_LOAD1;
        }
      else if (which_alternative == 6)
        {
	  return TYPE_STORE1;
        }
      else if (which_alternative == 7)
        {
	  return TYPE_FMOV;
        }
      else
        {
	  return TYPE_MOV_REG;
        }

    case 639:  /* *movdf_vfp */
    case 640:  /* *thumb2_movdf_vfp */
    case 4014:  /* *p *movdf_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_F_MCRR;
        }
      else if (which_alternative == 1)
        {
	  return TYPE_F_MRRC;
        }
      else if (which_alternative == 2)
        {
	  return TYPE_FCONSTD;
        }
      else if (which_alternative == 3)
        {
	  return TYPE_NEON_MOVE;
        }
      else if (which_alternative == 4)
        {
	  return TYPE_F_LOADD;
        }
      else if (which_alternative == 5)
        {
	  return TYPE_F_STORED;
        }
      else if (which_alternative == 6)
        {
	  return TYPE_LOAD2;
        }
      else if (which_alternative == 7)
        {
	  return TYPE_STORE2;
        }
      else if (which_alternative == 8)
        {
	  return TYPE_FFARITHD;
        }
      else
        {
	  return TYPE_MULTIPLE;
        }

    case 806:  /* thumb1_extendqisi2 */
    case 167:  /* *arm_zero_extendhisi2_v6 */
    case 170:  /* *arm_zero_extendqisi2_v6 */
    case 174:  /* *arm_extendhisi2_v6 */
    case 178:  /* *arm_extendqisi_v6 */
    case 802:  /* *thumb1_zero_extendhisi2 */
    case 804:  /* *thumb1_zero_extendqisi2_v6 */
    case 805:  /* thumb1_extendhisi2 */
    case 879:  /* *thumb2_extendqisi_v6 */
    case 880:  /* *thumb2_zero_extendhisi2_v6 */
    case 881:  /* thumb2_zero_extendqisi2_v6 */
    case 3679:  /* *p *arm_zero_extendhisi2_v6 */
    case 3682:  /* *p *arm_zero_extendqisi2_v6 */
    case 3686:  /* *p *arm_extendhisi2_v6 */
    case 3689:  /* *p *arm_extendqisi_v6 */
    case 4082:  /* *p *thumb2_extendqisi_v6 */
    case 4083:  /* *p *thumb2_zero_extendhisi2_v6 */
    case 4084:  /* *p thumb2_zero_extendqisi2_v6 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return TYPE_EXTEND;
        }
      else
        {
	  return TYPE_LOAD_BYTE;
        }

    case 887:  /* *thumb2_shiftsi3_short */
    case 4086:  /* *p *thumb2_shiftsi3_short */
      extract_insn_cached (insn);
      if (const_int_operand (operands[2], VOIDmode))
        {
	  return TYPE_ALU_SHIFT_IMM;
        }
      else
        {
	  return TYPE_ALU_SHIFT_REG;
        }

    case 891:  /* *thumb2_addsi_short */
    case 4090:  /* *p *thumb2_addsi_short */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  if (const_int_operand (operands[2], VOIDmode))
	    {
	      return TYPE_ALU_IMM;
	    }
	  else
	    {
	      return TYPE_ALU_SREG;
	    }
        }
      else
        {
	  return TYPE_ALU_IMM;
        }

    case 2554:  /* crypto_sha256h */
    case 2555:  /* crypto_sha256h2 */
    case 2556:  /* crypto_sha256su1 */
      return TYPE_CRYPTO_SHA256_SLOW;

    case 2552:  /* crypto_sha256su0 */
      return TYPE_CRYPTO_SHA256_FAST;

    case 2559:  /* crypto_sha1c */
    case 2560:  /* crypto_sha1m */
    case 2561:  /* crypto_sha1p */
      return TYPE_CRYPTO_SHA1_SLOW;

    case 2551:  /* crypto_sha1su1 */
    case 2557:  /* crypto_sha1h */
      return TYPE_CRYPTO_SHA1_FAST;

    case 2553:  /* crypto_sha1su0 */
      return TYPE_CRYPTO_SHA1_XOR;

    case 2547:  /* crypto_aesmc */
    case 2548:  /* crypto_aesimc */
      return TYPE_CRYPTO_AESMC;

    case 2549:  /* crypto_aesd */
    case 2550:  /* crypto_aese */
      return TYPE_CRYPTO_AESE;

    case 1015:  /* mulv8hf3addv8hf_neon */
    case 1026:  /* fmav4sf4 */
    case 1028:  /* fmav4sf4_intrinsic */
    case 1029:  /* fmav8hf4_intrinsic */
    case 1032:  /* *fmsubv4sf4 */
    case 1034:  /* fmsubv4sf4_intrinsic */
    case 1035:  /* fmsubv8hf4_intrinsic */
      return TYPE_NEON_FP_MLA_S_Q;

    case 1016:  /* mulv4hf3addv4hf_neon */
    case 1025:  /* fmav2sf4 */
    case 1027:  /* fmav2sf4_intrinsic */
    case 1030:  /* fmav4hf4_intrinsic */
    case 1031:  /* *fmsubv2sf4 */
    case 1033:  /* fmsubv2sf4_intrinsic */
    case 1036:  /* fmsubv4hf4_intrinsic */
      return TYPE_NEON_FP_MLA_S;

    case 1924:  /* neon_vmul_lanev8hf */
      return TYPE_NEON_FP_MUL_S_SCALAR_Q;

    case 1925:  /* neon_vmul_lanev4hf */
      return TYPE_NEON_FP_MUL_S_SCALAR;

    case 1741:  /* neon_vrsqrtsv4sf */
    case 1742:  /* neon_vrsqrtsv8hf */
      return TYPE_NEON_FP_RSQRTS_S_Q;

    case 1740:  /* neon_vrsqrtsv2sf */
    case 1743:  /* neon_vrsqrtsv4hf */
      return TYPE_NEON_FP_RSQRTS_S;

    case 1162:  /* neon_vrsqrtev8hf */
    case 1783:  /* neon_vrsqrtev4si */
    case 1784:  /* neon_vrsqrtev4sf */
      return TYPE_NEON_FP_RSQRTE_S_Q;

    case 1163:  /* neon_vrsqrtev4hf */
    case 1781:  /* neon_vrsqrtev2si */
    case 1782:  /* neon_vrsqrtev2sf */
      return TYPE_NEON_FP_RSQRTE_S;

    case 1737:  /* neon_vrecpsv4sf */
    case 1738:  /* neon_vrecpsv8hf */
      return TYPE_NEON_FP_RECPS_S_Q;

    case 1736:  /* neon_vrecpsv2sf */
    case 1739:  /* neon_vrecpsv4hf */
      return TYPE_NEON_FP_RECPS_S;

    case 1775:  /* neon_vrecpev8hf */
    case 1779:  /* neon_vrecpev4si */
    case 1780:  /* neon_vrecpev4sf */
      return TYPE_NEON_FP_RECPE_S_Q;

    case 1776:  /* neon_vrecpev4hf */
    case 1777:  /* neon_vrecpev2si */
    case 1778:  /* neon_vrecpev2sf */
      return TYPE_NEON_FP_RECPE_S;

    case 1043:  /* neon_vrintpv4sf */
    case 1044:  /* neon_vrintzv4sf */
    case 1045:  /* neon_vrintmv4sf */
    case 1046:  /* neon_vrintxv4sf */
    case 1047:  /* neon_vrintav4sf */
    case 1048:  /* neon_vrintnv4sf */
    case 1150:  /* neon_vrndv8hf */
    case 1151:  /* neon_vrndav8hf */
    case 1152:  /* neon_vrndmv8hf */
    case 1153:  /* neon_vrndnv8hf */
    case 1154:  /* neon_vrndpv8hf */
    case 1155:  /* neon_vrndxv8hf */
      return TYPE_NEON_FP_ROUND_S_Q;

    case 651:  /* neon_vrndhf */
    case 652:  /* neon_vrndahf */
    case 653:  /* neon_vrndmhf */
    case 654:  /* neon_vrndnhf */
    case 655:  /* neon_vrndphf */
    case 656:  /* neon_vrndxhf */
    case 657:  /* neon_vrndihf */
    case 1037:  /* neon_vrintpv2sf */
    case 1038:  /* neon_vrintzv2sf */
    case 1039:  /* neon_vrintmv2sf */
    case 1040:  /* neon_vrintxv2sf */
    case 1041:  /* neon_vrintav2sf */
    case 1042:  /* neon_vrintnv2sf */
    case 1156:  /* neon_vrndv4hf */
    case 1157:  /* neon_vrndav4hf */
    case 1158:  /* neon_vrndmv4hf */
    case 1159:  /* neon_vrndnv4hf */
    case 1160:  /* neon_vrndpv4hf */
    case 1161:  /* neon_vrndxv4hf */
      return TYPE_NEON_FP_ROUND_S;

    case 1843:  /* floatv4siv4sf2 */
    case 1845:  /* floatunsv4siv4sf2 */
    case 1856:  /* neon_vcvtsv4si */
    case 1857:  /* neon_vcvtuv4si */
    case 1862:  /* neon_vcvtsv8hi */
    case 1863:  /* neon_vcvtuv8hi */
    case 1878:  /* neon_vcvts_nv4si */
    case 1879:  /* neon_vcvtu_nv4si */
    case 1882:  /* neon_vcvts_nv8hi */
    case 1883:  /* neon_vcvtu_nv8hi */
      return TYPE_NEON_INT_TO_FP_S_Q;

    case 1842:  /* floatv2siv2sf2 */
    case 1844:  /* floatunsv2siv2sf2 */
    case 1854:  /* neon_vcvtsv2si */
    case 1855:  /* neon_vcvtuv2si */
    case 1860:  /* neon_vcvtsv4hi */
    case 1861:  /* neon_vcvtuv4hi */
    case 1876:  /* neon_vcvts_nv2si */
    case 1877:  /* neon_vcvtu_nv2si */
    case 1880:  /* neon_vcvts_nv4hi */
    case 1881:  /* neon_vcvtu_nv4hi */
      return TYPE_NEON_INT_TO_FP_S;

    case 1055:  /* neon_vcvtpv4sfv4si */
    case 1056:  /* neon_vcvtmv4sfv4si */
    case 1057:  /* neon_vcvtav4sfv4si */
    case 1058:  /* neon_vcvtpuv4sfv4si */
    case 1059:  /* neon_vcvtmuv4sfv4si */
    case 1060:  /* neon_vcvtauv4sfv4si */
    case 1847:  /* fix_truncv4sfv4si2 */
    case 1849:  /* fixuns_truncv4sfv4si2 */
    case 1852:  /* neon_vcvtsv4sf */
    case 1853:  /* neon_vcvtuv4sf */
    case 1864:  /* neon_vcvtsv8hf */
    case 1865:  /* neon_vcvtuv8hf */
    case 1870:  /* neon_vcvts_nv4sf */
    case 1871:  /* neon_vcvtu_nv4sf */
    case 1872:  /* neon_vcvts_nv8hf */
    case 1873:  /* neon_vcvtu_nv8hf */
    case 1884:  /* neon_vcvtasv8hf */
    case 1885:  /* neon_vcvtauv8hf */
    case 1886:  /* neon_vcvtmsv8hf */
    case 1887:  /* neon_vcvtmuv8hf */
    case 1888:  /* neon_vcvtnsv8hf */
    case 1889:  /* neon_vcvtnuv8hf */
    case 1890:  /* neon_vcvtpsv8hf */
    case 1891:  /* neon_vcvtpuv8hf */
      return TYPE_NEON_FP_TO_INT_S_Q;

    case 1049:  /* neon_vcvtpv2sfv2si */
    case 1050:  /* neon_vcvtmv2sfv2si */
    case 1051:  /* neon_vcvtav2sfv2si */
    case 1052:  /* neon_vcvtpuv2sfv2si */
    case 1053:  /* neon_vcvtmuv2sfv2si */
    case 1054:  /* neon_vcvtauv2sfv2si */
    case 1846:  /* fix_truncv2sfv2si2 */
    case 1848:  /* fixuns_truncv2sfv2si2 */
    case 1850:  /* neon_vcvtsv2sf */
    case 1851:  /* neon_vcvtuv2sf */
    case 1866:  /* neon_vcvtsv4hf */
    case 1867:  /* neon_vcvtuv4hf */
    case 1868:  /* neon_vcvts_nv2sf */
    case 1869:  /* neon_vcvtu_nv2sf */
    case 1874:  /* neon_vcvts_nv4hf */
    case 1875:  /* neon_vcvtu_nv4hf */
    case 1892:  /* neon_vcvtasv4hf */
    case 1893:  /* neon_vcvtauv4hf */
    case 1894:  /* neon_vcvtmsv4hf */
    case 1895:  /* neon_vcvtmuv4hf */
    case 1896:  /* neon_vcvtnsv4hf */
    case 1897:  /* neon_vcvtnuv4hf */
    case 1898:  /* neon_vcvtpsv4hf */
    case 1899:  /* neon_vcvtpuv4hf */
      return TYPE_NEON_FP_TO_INT_S;

    case 1858:  /* neon_vcvtv4sfv4hf */
      return TYPE_NEON_FP_CVT_WIDEN_H;

    case 1859:  /* neon_vcvtv4hfv4sf */
      return TYPE_NEON_FP_CVT_NARROW_S_Q;

    case 1281:  /* quad_halves_sminv4sf */
    case 1282:  /* quad_halves_smaxv4sf */
    case 1734:  /* neon_vpmaxfv4sf */
    case 1735:  /* neon_vpminfv4sf */
      return TYPE_NEON_FP_REDUC_MINMAX_S_Q;

    case 1732:  /* neon_vpmaxfv2sf */
    case 1733:  /* neon_vpminfv2sf */
      return TYPE_NEON_FP_REDUC_MINMAX_S;

    case 1280:  /* quad_halves_plusv4sf */
      return TYPE_NEON_FP_REDUC_ADD_S_Q;

    case 1680:  /* neon_vmaxfv4sf */
    case 1681:  /* neon_vminfv4sf */
    case 1682:  /* neon_vmaxfv8hf */
    case 1683:  /* neon_vminfv8hf */
    case 1688:  /* neon_vmaxnmv8hf */
    case 1689:  /* neon_vminnmv8hf */
    case 1694:  /* fmaxv4sf3 */
    case 1695:  /* fminv4sf3 */
      return TYPE_NEON_FP_MINMAX_S_Q;

    case 1678:  /* neon_vmaxfv2sf */
    case 1679:  /* neon_vminfv2sf */
    case 1684:  /* neon_vmaxfv4hf */
    case 1685:  /* neon_vminfv4hf */
    case 1690:  /* neon_vmaxnmv4hf */
    case 1691:  /* neon_vminnmv4hf */
    case 1692:  /* fmaxv2sf3 */
    case 1693:  /* fminv2sf3 */
      return TYPE_NEON_FP_MINMAX_S;

    case 1547:  /* neon_vceqv4sf_insn_unspec */
    case 1548:  /* neon_vcgtv4sf_insn_unspec */
    case 1549:  /* neon_vcgev4sf_insn_unspec */
    case 1550:  /* neon_vcltv4sf_insn_unspec */
    case 1551:  /* neon_vclev4sf_insn_unspec */
    case 1562:  /* neon_vceqv8hf_fp16insn_unspec */
    case 1563:  /* neon_vcgtv8hf_fp16insn_unspec */
    case 1564:  /* neon_vcgev8hf_fp16insn_unspec */
    case 1565:  /* neon_vcltv8hf_fp16insn_unspec */
    case 1566:  /* neon_vclev8hf_fp16insn_unspec */
    case 1586:  /* neon_vcagtv4sf_insn */
    case 1587:  /* neon_vcagev4sf_insn */
    case 1590:  /* neon_vcagev4sf_insn_unspec */
    case 1591:  /* neon_vcagtv4sf_insn_unspec */
    case 1592:  /* neon_vcagtv8hf_fp16insn */
    case 1593:  /* neon_vcagev8hf_fp16insn */
    case 1594:  /* neon_vcaltv8hf_fp16insn */
    case 1595:  /* neon_vcalev8hf_fp16insn */
    case 1600:  /* neon_vcagev8hf_fp16insn_unspec */
    case 1601:  /* neon_vcagtv8hf_fp16insn_unspec */
    case 1602:  /* neon_vcalev8hf_fp16insn_unspec */
    case 1603:  /* neon_vcaltv8hf_fp16insn_unspec */
      return TYPE_NEON_FP_COMPARE_S_Q;

    case 1542:  /* neon_vceqv2sf_insn_unspec */
    case 1543:  /* neon_vcgtv2sf_insn_unspec */
    case 1544:  /* neon_vcgev2sf_insn_unspec */
    case 1545:  /* neon_vcltv2sf_insn_unspec */
    case 1546:  /* neon_vclev2sf_insn_unspec */
    case 1567:  /* neon_vceqv4hf_fp16insn_unspec */
    case 1568:  /* neon_vcgtv4hf_fp16insn_unspec */
    case 1569:  /* neon_vcgev4hf_fp16insn_unspec */
    case 1570:  /* neon_vcltv4hf_fp16insn_unspec */
    case 1571:  /* neon_vclev4hf_fp16insn_unspec */
    case 1584:  /* neon_vcagtv2sf_insn */
    case 1585:  /* neon_vcagev2sf_insn */
    case 1588:  /* neon_vcagev2sf_insn_unspec */
    case 1589:  /* neon_vcagtv2sf_insn_unspec */
    case 1596:  /* neon_vcagtv4hf_fp16insn */
    case 1597:  /* neon_vcagev4hf_fp16insn */
    case 1598:  /* neon_vcaltv4hf_fp16insn */
    case 1599:  /* neon_vcalev4hf_fp16insn */
    case 1604:  /* neon_vcagev4hf_fp16insn_unspec */
    case 1605:  /* neon_vcagtv4hf_fp16insn_unspec */
    case 1606:  /* neon_vcalev4hf_fp16insn_unspec */
    case 1607:  /* neon_vcaltv4hf_fp16insn_unspec */
      return TYPE_NEON_FP_COMPARE_S;

    case 1629:  /* neon_vabdfv4sf */
      return TYPE_NEON_FP_ABD_S_Q;

    case 1628:  /* neon_vabdfv2sf */
      return TYPE_NEON_FP_ABD_S;

    case 2468:  /* neon_vst4_lanev8qi */
    case 2469:  /* neon_vst4_lanev4hi */
    case 2470:  /* neon_vst4_lanev4hf */
    case 2471:  /* neon_vst4_lanev2si */
    case 2472:  /* neon_vst4_lanev2sf */
      return TYPE_NEON_STORE4_ONE_LANE;

    case 2458:  /* neon_vst4qav16qi */
    case 2459:  /* neon_vst4qav8hi */
    case 2460:  /* neon_vst4qav8hf */
    case 2461:  /* neon_vst4qav4si */
    case 2462:  /* neon_vst4qav4sf */
    case 2463:  /* neon_vst4qbv16qi */
    case 2464:  /* neon_vst4qbv8hi */
    case 2465:  /* neon_vst4qbv8hf */
    case 2466:  /* neon_vst4qbv4si */
    case 2467:  /* neon_vst4qbv4sf */
    case 2473:  /* neon_vst4_lanev8hi */
    case 2474:  /* neon_vst4_lanev8hf */
    case 2475:  /* neon_vst4_lanev4si */
    case 2476:  /* neon_vst4_lanev4sf */
      return TYPE_NEON_STORE4_4REG_Q;

    case 2417:  /* neon_vst3_lanev8hi */
    case 2418:  /* neon_vst3_lanev8hf */
    case 2419:  /* neon_vst3_lanev4si */
    case 2420:  /* neon_vst3_lanev4sf */
      return TYPE_NEON_STORE3_ONE_LANE_Q;

    case 2412:  /* neon_vst3_lanev8qi */
    case 2413:  /* neon_vst3_lanev4hi */
    case 2414:  /* neon_vst3_lanev4hf */
    case 2415:  /* neon_vst3_lanev2si */
    case 2416:  /* neon_vst3_lanev2sf */
      return TYPE_NEON_STORE3_ONE_LANE;

    case 2402:  /* neon_vst3qav16qi */
    case 2403:  /* neon_vst3qav8hi */
    case 2404:  /* neon_vst3qav8hf */
    case 2405:  /* neon_vst3qav4si */
    case 2406:  /* neon_vst3qav4sf */
    case 2407:  /* neon_vst3qbv16qi */
    case 2408:  /* neon_vst3qbv8hi */
    case 2409:  /* neon_vst3qbv8hf */
    case 2410:  /* neon_vst3qbv4si */
    case 2411:  /* neon_vst3qbv4sf */
      return TYPE_NEON_STORE3_3REG_Q;

    case 2361:  /* neon_vst2_lanev8hi */
    case 2362:  /* neon_vst2_lanev8hf */
    case 2363:  /* neon_vst2_lanev4si */
    case 2364:  /* neon_vst2_lanev4sf */
      return TYPE_NEON_STORE2_ONE_LANE_Q;

    case 2356:  /* neon_vst2_lanev8qi */
    case 2357:  /* neon_vst2_lanev4hi */
    case 2358:  /* neon_vst2_lanev4hf */
    case 2359:  /* neon_vst2_lanev2si */
    case 2360:  /* neon_vst2_lanev2sf */
      return TYPE_NEON_STORE2_ONE_LANE;

    case 2351:  /* neon_vst2v16qi */
    case 2352:  /* neon_vst2v8hi */
    case 2353:  /* neon_vst2v8hf */
    case 2354:  /* neon_vst2v4si */
    case 2355:  /* neon_vst2v4sf */
      return TYPE_NEON_STORE2_4REG_Q;

    case 2313:  /* neon_vst1_lanev16qi */
    case 2314:  /* neon_vst1_lanev8hi */
    case 2315:  /* neon_vst1_lanev8hf */
    case 2316:  /* neon_vst1_lanev4si */
    case 2317:  /* neon_vst1_lanev4sf */
    case 2318:  /* neon_vst1_lanev2di */
      return TYPE_NEON_STORE1_ONE_LANE_Q;

    case 2307:  /* neon_vst1_lanev8qi */
    case 2308:  /* neon_vst1_lanev4hi */
    case 2309:  /* neon_vst1_lanev4hf */
    case 2310:  /* neon_vst1_lanev2si */
    case 2311:  /* neon_vst1_lanev2sf */
    case 2312:  /* neon_vst1_lanedi */
      return TYPE_NEON_STORE1_ONE_LANE;

    case 937:  /* *movmisalignv16qi_neon_store */
    case 938:  /* *movmisalignv8hi_neon_store */
    case 939:  /* *movmisalignv8hf_neon_store */
    case 940:  /* *movmisalignv4si_neon_store */
    case 941:  /* *movmisalignv4sf_neon_store */
    case 942:  /* *movmisalignv2di_neon_store */
    case 2296:  /* neon_vst1v16qi */
    case 2298:  /* neon_vst1v8hi */
    case 2300:  /* neon_vst1v4si */
    case 2302:  /* neon_vst1v8hf */
    case 2304:  /* neon_vst1v4sf */
    case 2306:  /* neon_vst1v2di */
      return TYPE_NEON_STORE1_1REG_Q;

    case 925:  /* *movmisalignv8qi_neon_store */
    case 926:  /* *movmisalignv4hi_neon_store */
    case 927:  /* *movmisalignv4hf_neon_store */
    case 928:  /* *movmisalignv2si_neon_store */
    case 929:  /* *movmisalignv2sf_neon_store */
    case 930:  /* *movmisaligndi_neon_store */
    case 2295:  /* neon_vst1v8qi */
    case 2297:  /* neon_vst1v4hi */
    case 2299:  /* neon_vst1v2si */
    case 2301:  /* neon_vst1v4hf */
    case 2303:  /* neon_vst1v2sf */
    case 2305:  /* neon_vst1di */
      return TYPE_NEON_STORE1_1REG;

    case 2442:  /* neon_vld4_lanev8hi */
    case 2443:  /* neon_vld4_lanev8hf */
    case 2444:  /* neon_vld4_lanev4si */
    case 2445:  /* neon_vld4_lanev4sf */
      return TYPE_NEON_LOAD4_ONE_LANE_Q;

    case 2437:  /* neon_vld4_lanev8qi */
    case 2438:  /* neon_vld4_lanev4hi */
    case 2439:  /* neon_vld4_lanev4hf */
    case 2440:  /* neon_vld4_lanev2si */
    case 2441:  /* neon_vld4_lanev2sf */
      return TYPE_NEON_LOAD4_ONE_LANE;

    case 2427:  /* neon_vld4qav16qi */
    case 2428:  /* neon_vld4qav8hi */
    case 2429:  /* neon_vld4qav8hf */
    case 2430:  /* neon_vld4qav4si */
    case 2431:  /* neon_vld4qav4sf */
    case 2432:  /* neon_vld4qbv16qi */
    case 2433:  /* neon_vld4qbv8hi */
    case 2434:  /* neon_vld4qbv8hf */
    case 2435:  /* neon_vld4qbv4si */
    case 2436:  /* neon_vld4qbv4sf */
      return TYPE_NEON_LOAD4_4REG_Q;

    case 2386:  /* neon_vld3_lanev8hi */
    case 2387:  /* neon_vld3_lanev8hf */
    case 2388:  /* neon_vld3_lanev4si */
    case 2389:  /* neon_vld3_lanev4sf */
      return TYPE_NEON_LOAD3_ONE_LANE_Q;

    case 2381:  /* neon_vld3_lanev8qi */
    case 2382:  /* neon_vld3_lanev4hi */
    case 2383:  /* neon_vld3_lanev4hf */
    case 2384:  /* neon_vld3_lanev2si */
    case 2385:  /* neon_vld3_lanev2sf */
      return TYPE_NEON_LOAD3_ONE_LANE;

    case 2371:  /* neon_vld3qav16qi */
    case 2372:  /* neon_vld3qav8hi */
    case 2373:  /* neon_vld3qav8hf */
    case 2374:  /* neon_vld3qav4si */
    case 2375:  /* neon_vld3qav4sf */
    case 2376:  /* neon_vld3qbv16qi */
    case 2377:  /* neon_vld3qbv8hi */
    case 2378:  /* neon_vld3qbv8hf */
    case 2379:  /* neon_vld3qbv4si */
    case 2380:  /* neon_vld3qbv4sf */
      return TYPE_NEON_LOAD3_3REG_Q;

    case 2335:  /* neon_vld2_lanev8hi */
    case 2336:  /* neon_vld2_lanev8hf */
    case 2337:  /* neon_vld2_lanev4si */
    case 2338:  /* neon_vld2_lanev4sf */
      return TYPE_NEON_LOAD2_ONE_LANE_Q;

    case 2330:  /* neon_vld2_lanev8qi */
    case 2331:  /* neon_vld2_lanev4hi */
    case 2332:  /* neon_vld2_lanev4hf */
    case 2333:  /* neon_vld2_lanev2si */
    case 2334:  /* neon_vld2_lanev2sf */
      return TYPE_NEON_LOAD2_ONE_LANE;

    case 2325:  /* neon_vld2v16qi */
    case 2326:  /* neon_vld2v8hi */
    case 2327:  /* neon_vld2v8hf */
    case 2328:  /* neon_vld2v4si */
    case 2329:  /* neon_vld2v4sf */
      return TYPE_NEON_LOAD2_2REG_Q;

    case 2278:  /* neon_vld1_lanev16qi */
    case 2279:  /* neon_vld1_lanev8hi */
    case 2280:  /* neon_vld1_lanev8hf */
    case 2281:  /* neon_vld1_lanev4si */
    case 2282:  /* neon_vld1_lanev4sf */
    case 2283:  /* neon_vld1_lanev2di */
      return TYPE_NEON_LOAD1_ONE_LANE_Q;

    case 2272:  /* neon_vld1_lanev8qi */
    case 2273:  /* neon_vld1_lanev4hi */
    case 2274:  /* neon_vld1_lanev4hf */
    case 2275:  /* neon_vld1_lanev2si */
    case 2276:  /* neon_vld1_lanev2sf */
    case 2277:  /* neon_vld1_lanedi */
      return TYPE_NEON_LOAD1_ONE_LANE;

    case 2289:  /* neon_vld1_dupv16qi */
    case 2290:  /* neon_vld1_dupv8hi */
    case 2291:  /* neon_vld1_dupv8hf */
    case 2292:  /* neon_vld1_dupv4si */
    case 2293:  /* neon_vld1_dupv4sf */
    case 2294:  /* neon_vld1_dupv2di */
      return TYPE_NEON_LOAD1_ALL_LANES_Q;

    case 2284:  /* neon_vld1_dupv8qi */
    case 2285:  /* neon_vld1_dupv4hi */
    case 2286:  /* neon_vld1_dupv4hf */
    case 2287:  /* neon_vld1_dupv2si */
    case 2288:  /* neon_vld1_dupv2sf */
      return TYPE_NEON_LOAD1_ALL_LANES;

    case 943:  /* *movmisalignv16qi_neon_load */
    case 944:  /* *movmisalignv8hi_neon_load */
    case 945:  /* *movmisalignv8hf_neon_load */
    case 946:  /* *movmisalignv4si_neon_load */
    case 947:  /* *movmisalignv4sf_neon_load */
    case 948:  /* *movmisalignv2di_neon_load */
    case 2261:  /* neon_vld1v16qi */
    case 2263:  /* neon_vld1v8hi */
    case 2265:  /* neon_vld1v4si */
    case 2267:  /* neon_vld1v8hf */
    case 2269:  /* neon_vld1v4sf */
    case 2271:  /* neon_vld1v2di */
      return TYPE_NEON_LOAD1_1REG_Q;

    case 931:  /* *movmisalignv8qi_neon_load */
    case 932:  /* *movmisalignv4hi_neon_load */
    case 933:  /* *movmisalignv4hf_neon_load */
    case 934:  /* *movmisalignv2si_neon_load */
    case 935:  /* *movmisalignv2sf_neon_load */
    case 936:  /* *movmisaligndi_neon_load */
    case 2260:  /* neon_vld1v8qi */
    case 2262:  /* neon_vld1v4hi */
    case 2264:  /* neon_vld1v2si */
    case 2266:  /* neon_vld1v4hf */
    case 2268:  /* neon_vld1v2sf */
    case 2270:  /* neon_vld1di */
      return TYPE_NEON_LOAD1_1REG;

    case 1805:  /* neon_vdup_nv16qi */
    case 1806:  /* neon_vdup_nv8hi */
    case 1808:  /* neon_vdup_nv8hf */
      return TYPE_NEON_FROM_GP_Q;

    case 1803:  /* neon_vdup_nv8qi */
    case 1804:  /* neon_vdup_nv4hi */
    case 1807:  /* neon_vdup_nv4hf */
      return TYPE_NEON_FROM_GP;

    case 1793:  /* neon_vget_lanev16qi_sext_internal */
    case 1794:  /* neon_vget_lanev8hi_sext_internal */
    case 1795:  /* neon_vget_lanev8hf_sext_internal */
    case 1796:  /* neon_vget_lanev4si_sext_internal */
    case 1797:  /* neon_vget_lanev4sf_sext_internal */
    case 1798:  /* neon_vget_lanev16qi_zext_internal */
    case 1799:  /* neon_vget_lanev8hi_zext_internal */
    case 1800:  /* neon_vget_lanev8hf_zext_internal */
    case 1801:  /* neon_vget_lanev4si_zext_internal */
    case 1802:  /* neon_vget_lanev4sf_zext_internal */
      return TYPE_NEON_TO_GP_Q;

    case 1785:  /* neon_vget_lanev8qi_sext_internal */
    case 1786:  /* neon_vget_lanev4hi_sext_internal */
    case 1787:  /* neon_vget_lanev2si_sext_internal */
    case 1788:  /* neon_vget_lanev2sf_sext_internal */
    case 1789:  /* neon_vget_lanev8qi_zext_internal */
    case 1790:  /* neon_vget_lanev4hi_zext_internal */
    case 1791:  /* neon_vget_lanev2si_zext_internal */
    case 1792:  /* neon_vget_lanev2sf_zext_internal */
      return TYPE_NEON_TO_GP;

    case 1959:  /* neon_vqdmlal_lanev2si */
    case 1971:  /* neon_vqdmlsl_lanev2si */
      return TYPE_NEON_SAT_MLA_S_SCALAR_LONG;

    case 1958:  /* neon_vqdmlal_lanev4hi */
    case 1970:  /* neon_vqdmlsl_lanev4hi */
      return TYPE_NEON_SAT_MLA_H_SCALAR_LONG;

    case 1433:  /* neon_vqrdmlahv2si */
    case 1434:  /* neon_vqrdmlshv2si */
    case 1437:  /* neon_vqrdmlahv4si */
    case 1438:  /* neon_vqrdmlshv4si */
    case 1440:  /* neon_vqdmlalv2si */
    case 1442:  /* neon_vqdmlslv2si */
      return TYPE_NEON_SAT_MLA_S_LONG;

    case 1431:  /* neon_vqrdmlahv4hi */
    case 1432:  /* neon_vqrdmlshv4hi */
    case 1435:  /* neon_vqrdmlahv8hi */
    case 1436:  /* neon_vqrdmlshv8hi */
    case 1439:  /* neon_vqdmlalv4hi */
    case 1441:  /* neon_vqdmlslv4hi */
      return TYPE_NEON_SAT_MLA_H_LONG;

    case 1956:  /* neon_vmlals_lanev2si */
    case 1957:  /* neon_vmlalu_lanev2si */
    case 1968:  /* neon_vmlsls_lanev2si */
    case 1969:  /* neon_vmlslu_lanev2si */
      return TYPE_NEON_MLA_S_SCALAR_LONG;

    case 1954:  /* neon_vmlals_lanev4hi */
    case 1955:  /* neon_vmlalu_lanev4hi */
    case 1966:  /* neon_vmlsls_lanev4hi */
    case 1967:  /* neon_vmlslu_lanev4hi */
      return TYPE_NEON_MLA_H_SCALAR_LONG;

    case 1942:  /* neon_vqrdmlah_lanev4si */
    case 1943:  /* neon_vqrdmlsh_lanev4si */
      return TYPE_NEON_MLA_S_SCALAR_Q;

    case 1946:  /* neon_vqrdmlah_lanev2si */
    case 1947:  /* neon_vqrdmlsh_lanev2si */
      return TYPE_NEON_MLA_S_SCALAR;

    case 1940:  /* neon_vqrdmlah_lanev8hi */
    case 1941:  /* neon_vqrdmlsh_lanev8hi */
      return TYPE_NEON_MLA_H_SCALAR_Q;

    case 1944:  /* neon_vqrdmlah_lanev4hi */
    case 1945:  /* neon_vqrdmlsh_lanev4hi */
      return TYPE_NEON_MLA_H_SCALAR;

    case 1407:  /* neon_vmlalsv2si */
    case 1408:  /* neon_vmlaluv2si */
    case 1421:  /* neon_vmlslsv2si */
    case 1422:  /* neon_vmlsluv2si */
      return TYPE_NEON_MLA_S_LONG;

    case 1405:  /* neon_vmlalsv4hi */
    case 1406:  /* neon_vmlaluv4hi */
    case 1419:  /* neon_vmlslsv4hi */
    case 1420:  /* neon_vmlsluv4hi */
      return TYPE_NEON_MLA_H_LONG;

    case 1403:  /* neon_vmlalsv8qi */
    case 1404:  /* neon_vmlaluv8qi */
    case 1417:  /* neon_vmlslsv8qi */
    case 1418:  /* neon_vmlsluv8qi */
      return TYPE_NEON_MLA_B_LONG;

    case 1931:  /* neon_vqdmull_lanev2si */
      return TYPE_NEON_SAT_MUL_S_SCALAR_LONG;

    case 1930:  /* neon_vqdmull_lanev4hi */
      return TYPE_NEON_SAT_MUL_H_SCALAR_LONG;

    case 1934:  /* neon_vqdmulh_lanev4si */
    case 1935:  /* neon_vqrdmulh_lanev4si */
    case 1938:  /* neon_vqdmulh_lanev2si */
    case 1939:  /* neon_vqrdmulh_lanev2si */
      return TYPE_NEON_SAT_MUL_S_SCALAR_Q;

    case 1932:  /* neon_vqdmulh_lanev8hi */
    case 1933:  /* neon_vqrdmulh_lanev8hi */
    case 1936:  /* neon_vqdmulh_lanev4hi */
    case 1937:  /* neon_vqrdmulh_lanev4hi */
      return TYPE_NEON_SAT_MUL_H_SCALAR_Q;

    case 1453:  /* neon_vqdmullv2si */
      return TYPE_NEON_SAT_MUL_S_LONG;

    case 1452:  /* neon_vqdmullv4hi */
      return TYPE_NEON_SAT_MUL_H_LONG;

    case 1429:  /* neon_vqdmulhv4si */
    case 1430:  /* neon_vqrdmulhv4si */
      return TYPE_NEON_SAT_MUL_S_Q;

    case 1425:  /* neon_vqdmulhv2si */
    case 1426:  /* neon_vqrdmulhv2si */
      return TYPE_NEON_SAT_MUL_S;

    case 1427:  /* neon_vqdmulhv8hi */
    case 1428:  /* neon_vqrdmulhv8hi */
      return TYPE_NEON_SAT_MUL_H_Q;

    case 1423:  /* neon_vqdmulhv4hi */
    case 1424:  /* neon_vqrdmulhv4hi */
      return TYPE_NEON_SAT_MUL_H;

    case 1928:  /* neon_vmulls_lanev2si */
    case 1929:  /* neon_vmullu_lanev2si */
      return TYPE_NEON_MUL_S_SCALAR_LONG;

    case 1926:  /* neon_vmulls_lanev4hi */
    case 1927:  /* neon_vmullu_lanev4hi */
      return TYPE_NEON_MUL_H_SCALAR_LONG;

    case 2558:  /* crypto_vmullp64 */
      return TYPE_NEON_MUL_D_LONG;

    case 1449:  /* neon_vmullsv2si */
    case 1450:  /* neon_vmulluv2si */
    case 1451:  /* neon_vmullpv2si */
    case 2493:  /* neon_vec_smult_lo_v4si */
    case 2494:  /* neon_vec_umult_lo_v4si */
    case 2499:  /* neon_vec_smult_hi_v4si */
    case 2500:  /* neon_vec_umult_hi_v4si */
    case 2517:  /* neon_vec_smult_v2si */
    case 2518:  /* neon_vec_umult_v2si */
      return TYPE_NEON_MUL_S_LONG;

    case 1446:  /* neon_vmullsv4hi */
    case 1447:  /* neon_vmulluv4hi */
    case 1448:  /* neon_vmullpv4hi */
    case 2491:  /* neon_vec_smult_lo_v8hi */
    case 2492:  /* neon_vec_umult_lo_v8hi */
    case 2497:  /* neon_vec_smult_hi_v8hi */
    case 2498:  /* neon_vec_umult_hi_v8hi */
    case 2515:  /* neon_vec_smult_v4hi */
    case 2516:  /* neon_vec_umult_v4hi */
      return TYPE_NEON_MUL_H_LONG;

    case 1443:  /* neon_vmullsv8qi */
    case 1444:  /* neon_vmulluv8qi */
    case 1445:  /* neon_vmullpv8qi */
    case 2489:  /* neon_vec_smult_lo_v16qi */
    case 2490:  /* neon_vec_umult_lo_v16qi */
    case 2495:  /* neon_vec_smult_hi_v16qi */
    case 2496:  /* neon_vec_umult_hi_v16qi */
    case 2513:  /* neon_vec_smult_v8qi */
    case 2514:  /* neon_vec_umult_v8qi */
      return TYPE_NEON_MUL_B_LONG;

    case 1393:  /* neon_vmulfv8hf */
      return TYPE_NEON_MUL_S_Q;

    case 1394:  /* neon_vmulfv4hf */
      return TYPE_NEON_MUL_S;

    case 1751:  /* neon_bswapv8hi */
    case 1753:  /* neon_bswapv4si */
    case 1754:  /* neon_bswapv2di */
    case 1985:  /* neon_vrev64v16qi */
    case 1987:  /* neon_vrev64v8hi */
    case 1989:  /* neon_vrev64v4si */
    case 1991:  /* neon_vrev64v8hf */
    case 1993:  /* neon_vrev64v4sf */
    case 1994:  /* neon_vrev64v2di */
    case 1997:  /* neon_vrev32v16qi */
    case 1998:  /* neon_vrev32v8hi */
    case 2000:  /* neon_vrev16v16qi */
      return TYPE_NEON_REV_Q;

    case 1750:  /* neon_bswapv4hi */
    case 1752:  /* neon_bswapv2si */
    case 1984:  /* neon_vrev64v8qi */
    case 1986:  /* neon_vrev64v4hi */
    case 1988:  /* neon_vrev64v2si */
    case 1990:  /* neon_vrev64v4hf */
    case 1992:  /* neon_vrev64v2sf */
    case 1995:  /* neon_vrev32v8qi */
    case 1996:  /* neon_vrev32v4hi */
    case 1999:  /* neon_vrev16v8qi */
      return TYPE_NEON_REV;

    case 1973:  /* neon_vextv16qi */
    case 1975:  /* neon_vextv8hi */
    case 1977:  /* neon_vextv4si */
    case 1979:  /* neon_vextv8hf */
    case 1981:  /* neon_vextv4sf */
    case 1983:  /* neon_vextv2di */
      return TYPE_NEON_EXT_Q;

    case 1972:  /* neon_vextv8qi */
    case 1974:  /* neon_vextv4hi */
    case 1976:  /* neon_vextv2si */
    case 1978:  /* neon_vextv4hf */
    case 1980:  /* neon_vextv2sf */
    case 1982:  /* neon_vextdi */
      return TYPE_NEON_EXT;

    case 1815:  /* neon_vdup_lanev16qi_internal */
    case 1817:  /* neon_vdup_lanev8hi_internal */
    case 1819:  /* neon_vdup_lanev4si_internal */
    case 1821:  /* neon_vdup_lanev4sf_internal */
    case 1822:  /* neon_vdup_lanev8hf_internal */
      return TYPE_NEON_DUP_Q;

    case 1814:  /* neon_vdup_lanev8qi_internal */
    case 1816:  /* neon_vdup_lanev4hi_internal */
    case 1818:  /* neon_vdup_lanev2si_internal */
    case 1820:  /* neon_vdup_lanev2sf_internal */
    case 1823:  /* neon_vdup_lanev4hf_internal */
      return TYPE_NEON_DUP;

    case 1768:  /* clzv16qi2 */
    case 1770:  /* clzv8hi2 */
    case 1772:  /* clzv4si2 */
    case 1774:  /* popcountv16qi2 */
      return TYPE_NEON_CNT_Q;

    case 1767:  /* clzv8qi2 */
    case 1769:  /* clzv4hi2 */
    case 1771:  /* clzv2si2 */
    case 1773:  /* popcountv8qi2 */
      return TYPE_NEON_CNT;

    case 1762:  /* neon_vclsv16qi */
    case 1764:  /* neon_vclsv8hi */
    case 1766:  /* neon_vclsv4si */
      return TYPE_NEON_CLS_Q;

    case 1761:  /* neon_vclsv8qi */
    case 1763:  /* neon_vclsv4hi */
    case 1765:  /* neon_vclsv2si */
      return TYPE_NEON_CLS;

    case 2002:  /* neon_vbslv16qi_internal */
    case 2004:  /* neon_vbslv8hi_internal */
    case 2006:  /* neon_vbslv4si_internal */
    case 2008:  /* neon_vbslv8hf_internal */
    case 2010:  /* neon_vbslv4sf_internal */
    case 2012:  /* neon_vbslv2di_internal */
      return TYPE_NEON_BSL_Q;

    case 2001:  /* neon_vbslv8qi_internal */
    case 2003:  /* neon_vbslv4hi_internal */
    case 2005:  /* neon_vbslv2si_internal */
    case 2007:  /* neon_vbslv4hf_internal */
    case 2009:  /* neon_vbslv2sf_internal */
    case 2011:  /* neon_vbsldi_internal */
      return TYPE_NEON_BSL;

    case 2222:  /* neon_vtbl4v8qi */
    case 2229:  /* neon_vtbx4v8qi */
      return TYPE_NEON_TBL4;

    case 2221:  /* neon_vtbl3v8qi */
    case 2228:  /* neon_vtbx3v8qi */
      return TYPE_NEON_TBL3;

    case 2220:  /* neon_vtbl2v8qi */
    case 2227:  /* neon_vtbx2v8qi */
      return TYPE_NEON_TBL2;

    case 2219:  /* neon_vtbl1v8qi */
    case 2226:  /* neon_vtbx1v8qi */
      return TYPE_NEON_TBL1;

    case 2241:  /* *neon_vzipv16qi_insn */
    case 2243:  /* *neon_vzipv8hi_insn */
    case 2245:  /* *neon_vzipv4si_insn */
    case 2247:  /* *neon_vzipv4sf_insn */
    case 2248:  /* *neon_vzipv8hf_insn */
    case 2251:  /* *neon_vuzpv16qi_insn */
    case 2253:  /* *neon_vuzpv8hi_insn */
    case 2255:  /* *neon_vuzpv4si_insn */
    case 2257:  /* *neon_vuzpv4sf_insn */
    case 2258:  /* *neon_vuzpv8hf_insn */
      return TYPE_NEON_ZIP_Q;

    case 2240:  /* *neon_vzipv8qi_insn */
    case 2242:  /* *neon_vzipv4hi_insn */
    case 2244:  /* *neon_vzipv2si_insn */
    case 2246:  /* *neon_vzipv2sf_insn */
    case 2249:  /* *neon_vzipv4hf_insn */
    case 2250:  /* *neon_vuzpv8qi_insn */
    case 2252:  /* *neon_vuzpv4hi_insn */
    case 2254:  /* *neon_vuzpv2si_insn */
    case 2256:  /* *neon_vuzpv2sf_insn */
    case 2259:  /* *neon_vuzpv4hf_insn */
      return TYPE_NEON_ZIP;

    case 1825:  /* *neon_vswpv16qi */
    case 1827:  /* *neon_vswpv8hi */
    case 1829:  /* *neon_vswpv4si */
    case 1831:  /* *neon_vswpv8hf */
    case 1833:  /* *neon_vswpv4sf */
    case 1835:  /* *neon_vswpv2di */
    case 2231:  /* *neon_vtrnv16qi_insn */
    case 2233:  /* *neon_vtrnv8hi_insn */
    case 2235:  /* *neon_vtrnv4si_insn */
    case 2237:  /* *neon_vtrnv4sf_insn */
    case 2238:  /* *neon_vtrnv8hf_insn */
      return TYPE_NEON_PERMUTE_Q;

    case 1824:  /* *neon_vswpv8qi */
    case 1826:  /* *neon_vswpv4hi */
    case 1828:  /* *neon_vswpv2si */
    case 1830:  /* *neon_vswpv4hf */
    case 1832:  /* *neon_vswpv2sf */
    case 1834:  /* *neon_vswpdi */
    case 2230:  /* *neon_vtrnv8qi_insn */
    case 2232:  /* *neon_vtrnv4hi_insn */
    case 2234:  /* *neon_vtrnv2si_insn */
    case 2236:  /* *neon_vtrnv2sf_insn */
    case 2239:  /* *neon_vtrnv4hf_insn */
      return TYPE_NEON_PERMUTE;

    case 2522:  /* neon_vec_pack_trunc_v8hi */
    case 2523:  /* neon_vec_pack_trunc_v4si */
    case 2524:  /* neon_vec_pack_trunc_v2di */
      return TYPE_NEON_MOVE_NARROW_Q;

    case 1119:  /* one_cmplv16qi2 */
    case 1121:  /* one_cmplv8hi2 */
    case 1123:  /* one_cmplv4si2 */
    case 1125:  /* one_cmplv8hf2 */
    case 1127:  /* one_cmplv4sf2 */
    case 1128:  /* one_cmplv2di2 */
      return TYPE_NEON_MOVE_Q;

    case 1118:  /* one_cmplv8qi2 */
    case 1120:  /* one_cmplv4hi2 */
    case 1122:  /* one_cmplv2si2 */
    case 1124:  /* one_cmplv4hf2 */
    case 1126:  /* one_cmplv2sf2 */
    case 2507:  /* neon_unpacks_v8qi */
    case 2508:  /* neon_unpacku_v8qi */
    case 2509:  /* neon_unpacks_v4hi */
    case 2510:  /* neon_unpacku_v4hi */
    case 2511:  /* neon_unpacks_v2si */
    case 2512:  /* neon_unpacku_v2si */
      return TYPE_NEON_MOVE;

    case 1903:  /* neon_vqmovnsv8hi */
    case 1904:  /* neon_vqmovnuv8hi */
    case 1905:  /* neon_vqmovnsv4si */
    case 1906:  /* neon_vqmovnuv4si */
    case 1907:  /* neon_vqmovnsv2di */
    case 1908:  /* neon_vqmovnuv2di */
    case 1909:  /* neon_vqmovunv8hi */
    case 1910:  /* neon_vqmovunv4si */
    case 1911:  /* neon_vqmovunv2di */
    case 2115:  /* neon_vqshrns_nv8hi */
    case 2116:  /* neon_vqshrnu_nv8hi */
    case 2117:  /* neon_vqrshrns_nv8hi */
    case 2118:  /* neon_vqrshrnu_nv8hi */
    case 2119:  /* neon_vqshrns_nv4si */
    case 2120:  /* neon_vqshrnu_nv4si */
    case 2121:  /* neon_vqrshrns_nv4si */
    case 2122:  /* neon_vqrshrnu_nv4si */
    case 2123:  /* neon_vqshrns_nv2di */
    case 2124:  /* neon_vqshrnu_nv2di */
    case 2125:  /* neon_vqrshrns_nv2di */
    case 2126:  /* neon_vqrshrnu_nv2di */
    case 2127:  /* neon_vqshrun_nv8hi */
    case 2128:  /* neon_vqrshrun_nv8hi */
    case 2129:  /* neon_vqshrun_nv4si */
    case 2130:  /* neon_vqrshrun_nv4si */
    case 2131:  /* neon_vqshrun_nv2di */
    case 2132:  /* neon_vqrshrun_nv2di */
      return TYPE_NEON_SAT_SHIFT_IMM_NARROW_Q;

    case 2049:  /* neon_vqshlsv16qi */
    case 2050:  /* neon_vqshluv16qi */
    case 2051:  /* neon_vqrshlsv16qi */
    case 2052:  /* neon_vqrshluv16qi */
    case 2057:  /* neon_vqshlsv8hi */
    case 2058:  /* neon_vqshluv8hi */
    case 2059:  /* neon_vqrshlsv8hi */
    case 2060:  /* neon_vqrshluv8hi */
    case 2065:  /* neon_vqshlsv4si */
    case 2066:  /* neon_vqshluv4si */
    case 2067:  /* neon_vqrshlsv4si */
    case 2068:  /* neon_vqrshluv4si */
    case 2073:  /* neon_vqshlsv2di */
    case 2074:  /* neon_vqshluv2di */
    case 2075:  /* neon_vqrshlsv2di */
    case 2076:  /* neon_vqrshluv2di */
    case 2143:  /* neon_vqshl_s_nv16qi */
    case 2144:  /* neon_vqshl_u_nv16qi */
    case 2147:  /* neon_vqshl_s_nv8hi */
    case 2148:  /* neon_vqshl_u_nv8hi */
    case 2151:  /* neon_vqshl_s_nv4si */
    case 2152:  /* neon_vqshl_u_nv4si */
    case 2155:  /* neon_vqshl_s_nv2di */
    case 2156:  /* neon_vqshl_u_nv2di */
    case 2158:  /* neon_vqshlu_nv16qi */
    case 2160:  /* neon_vqshlu_nv8hi */
    case 2162:  /* neon_vqshlu_nv4si */
    case 2164:  /* neon_vqshlu_nv2di */
      return TYPE_NEON_SAT_SHIFT_IMM_Q;

    case 2045:  /* neon_vqshlsv8qi */
    case 2046:  /* neon_vqshluv8qi */
    case 2047:  /* neon_vqrshlsv8qi */
    case 2048:  /* neon_vqrshluv8qi */
    case 2053:  /* neon_vqshlsv4hi */
    case 2054:  /* neon_vqshluv4hi */
    case 2055:  /* neon_vqrshlsv4hi */
    case 2056:  /* neon_vqrshluv4hi */
    case 2061:  /* neon_vqshlsv2si */
    case 2062:  /* neon_vqshluv2si */
    case 2063:  /* neon_vqrshlsv2si */
    case 2064:  /* neon_vqrshluv2si */
    case 2069:  /* neon_vqshlsdi */
    case 2070:  /* neon_vqshludi */
    case 2071:  /* neon_vqrshlsdi */
    case 2072:  /* neon_vqrshludi */
    case 2141:  /* neon_vqshl_s_nv8qi */
    case 2142:  /* neon_vqshl_u_nv8qi */
    case 2145:  /* neon_vqshl_s_nv4hi */
    case 2146:  /* neon_vqshl_u_nv4hi */
    case 2149:  /* neon_vqshl_s_nv2si */
    case 2150:  /* neon_vqshl_u_nv2si */
    case 2153:  /* neon_vqshl_s_ndi */
    case 2154:  /* neon_vqshl_u_ndi */
    case 2157:  /* neon_vqshlu_nv8qi */
    case 2159:  /* neon_vqshlu_nv4hi */
    case 2161:  /* neon_vqshlu_nv2si */
    case 2163:  /* neon_vqshlu_ndi */
      return TYPE_NEON_SAT_SHIFT_IMM;

    case 2175:  /* neon_vsras_nv16qi */
    case 2176:  /* neon_vsrau_nv16qi */
    case 2177:  /* neon_vrsras_nv16qi */
    case 2178:  /* neon_vrsrau_nv16qi */
    case 2183:  /* neon_vsras_nv8hi */
    case 2184:  /* neon_vsrau_nv8hi */
    case 2185:  /* neon_vrsras_nv8hi */
    case 2186:  /* neon_vrsrau_nv8hi */
    case 2191:  /* neon_vsras_nv4si */
    case 2192:  /* neon_vsrau_nv4si */
    case 2193:  /* neon_vrsras_nv4si */
    case 2194:  /* neon_vrsrau_nv4si */
    case 2199:  /* neon_vsras_nv2di */
    case 2200:  /* neon_vsrau_nv2di */
    case 2201:  /* neon_vrsras_nv2di */
    case 2202:  /* neon_vrsrau_nv2di */
      return TYPE_NEON_SHIFT_ACC_Q;

    case 2171:  /* neon_vsras_nv8qi */
    case 2172:  /* neon_vsrau_nv8qi */
    case 2173:  /* neon_vrsras_nv8qi */
    case 2174:  /* neon_vrsrau_nv8qi */
    case 2179:  /* neon_vsras_nv4hi */
    case 2180:  /* neon_vsrau_nv4hi */
    case 2181:  /* neon_vrsras_nv4hi */
    case 2182:  /* neon_vrsrau_nv4hi */
    case 2187:  /* neon_vsras_nv2si */
    case 2188:  /* neon_vsrau_nv2si */
    case 2189:  /* neon_vrsras_nv2si */
    case 2190:  /* neon_vrsrau_nv2si */
    case 2195:  /* neon_vsras_ndi */
    case 2196:  /* neon_vsrau_ndi */
    case 2197:  /* neon_vrsras_ndi */
    case 2198:  /* neon_vrsrau_ndi */
      return TYPE_NEON_SHIFT_ACC;

    case 1211:  /* ashlv16qi3_signed */
    case 1213:  /* ashlv8hi3_signed */
    case 1215:  /* ashlv4si3_signed */
    case 1216:  /* ashlv2di3_signed */
    case 1218:  /* ashlv16qi3_unsigned */
    case 1220:  /* ashlv8hi3_unsigned */
    case 1222:  /* ashlv4si3_unsigned */
    case 1223:  /* ashlv2di3_unsigned */
    case 2204:  /* neon_vsri_nv16qi */
    case 2206:  /* neon_vsri_nv8hi */
    case 2208:  /* neon_vsri_nv4si */
    case 2210:  /* neon_vsri_nv2di */
    case 2212:  /* neon_vsli_nv16qi */
    case 2214:  /* neon_vsli_nv8hi */
    case 2216:  /* neon_vsli_nv4si */
    case 2218:  /* neon_vsli_nv2di */
      return TYPE_NEON_SHIFT_REG_Q;

    case 1210:  /* ashlv8qi3_signed */
    case 1212:  /* ashlv4hi3_signed */
    case 1214:  /* ashlv2si3_signed */
    case 1217:  /* ashlv8qi3_unsigned */
    case 1219:  /* ashlv4hi3_unsigned */
    case 1221:  /* ashlv2si3_unsigned */
    case 1227:  /* signed_shift_di3_neon */
    case 1228:  /* unsigned_shift_di3_neon */
    case 2203:  /* neon_vsri_nv8qi */
    case 2205:  /* neon_vsri_nv4hi */
    case 2207:  /* neon_vsri_nv2si */
    case 2209:  /* neon_vsri_ndi */
    case 2211:  /* neon_vsli_nv8qi */
    case 2213:  /* neon_vsli_nv4hi */
    case 2215:  /* neon_vsli_nv2si */
    case 2217:  /* neon_vsli_ndi */
      return TYPE_NEON_SHIFT_REG;

    case 1912:  /* neon_vmovlsv8qi */
    case 1913:  /* neon_vmovluv8qi */
    case 1914:  /* neon_vmovlsv4hi */
    case 1915:  /* neon_vmovluv4hi */
    case 1916:  /* neon_vmovlsv2si */
    case 1917:  /* neon_vmovluv2si */
    case 2165:  /* neon_vshlls_nv8qi */
    case 2166:  /* neon_vshllu_nv8qi */
    case 2167:  /* neon_vshlls_nv4hi */
    case 2168:  /* neon_vshllu_nv4hi */
    case 2169:  /* neon_vshlls_nv2si */
    case 2170:  /* neon_vshllu_nv2si */
    case 2477:  /* neon_vec_unpacks_lo_v16qi */
    case 2478:  /* neon_vec_unpacku_lo_v16qi */
    case 2479:  /* neon_vec_unpacks_lo_v8hi */
    case 2480:  /* neon_vec_unpacku_lo_v8hi */
    case 2481:  /* neon_vec_unpacks_lo_v4si */
    case 2482:  /* neon_vec_unpacku_lo_v4si */
    case 2483:  /* neon_vec_unpacks_hi_v16qi */
    case 2484:  /* neon_vec_unpacku_hi_v16qi */
    case 2485:  /* neon_vec_unpacks_hi_v8hi */
    case 2486:  /* neon_vec_unpacku_hi_v8hi */
    case 2487:  /* neon_vec_unpacks_hi_v4si */
    case 2488:  /* neon_vec_unpacku_hi_v4si */
    case 2501:  /* neon_vec_sshiftl_v8qi */
    case 2502:  /* neon_vec_ushiftl_v8qi */
    case 2503:  /* neon_vec_sshiftl_v4hi */
    case 2504:  /* neon_vec_ushiftl_v4hi */
    case 2505:  /* neon_vec_sshiftl_v2si */
    case 2506:  /* neon_vec_ushiftl_v2si */
      return TYPE_NEON_SHIFT_IMM_LONG;

    case 1900:  /* neon_vmovnv8hi */
    case 1901:  /* neon_vmovnv4si */
    case 1902:  /* neon_vmovnv2di */
    case 2109:  /* neon_vshrn_nv8hi */
    case 2110:  /* neon_vrshrn_nv8hi */
    case 2111:  /* neon_vshrn_nv4si */
    case 2112:  /* neon_vrshrn_nv4si */
    case 2113:  /* neon_vshrn_nv2di */
    case 2114:  /* neon_vrshrn_nv2di */
      return TYPE_NEON_SHIFT_IMM_NARROW_Q;

    case 1199:  /* vashrv16qi3_imm */
    case 1201:  /* vashrv8hi3_imm */
    case 1203:  /* vashrv4si3_imm */
    case 1205:  /* vlshrv16qi3_imm */
    case 1207:  /* vlshrv8hi3_imm */
    case 1209:  /* vlshrv4si3_imm */
    case 2017:  /* neon_vshlsv16qi */
    case 2018:  /* neon_vshluv16qi */
    case 2019:  /* neon_vrshlsv16qi */
    case 2020:  /* neon_vrshluv16qi */
    case 2025:  /* neon_vshlsv8hi */
    case 2026:  /* neon_vshluv8hi */
    case 2027:  /* neon_vrshlsv8hi */
    case 2028:  /* neon_vrshluv8hi */
    case 2033:  /* neon_vshlsv4si */
    case 2034:  /* neon_vshluv4si */
    case 2035:  /* neon_vrshlsv4si */
    case 2036:  /* neon_vrshluv4si */
    case 2041:  /* neon_vshlsv2di */
    case 2042:  /* neon_vshluv2di */
    case 2043:  /* neon_vrshlsv2di */
    case 2044:  /* neon_vrshluv2di */
    case 2081:  /* neon_vshrs_nv16qi */
    case 2082:  /* neon_vshru_nv16qi */
    case 2083:  /* neon_vrshrs_nv16qi */
    case 2084:  /* neon_vrshru_nv16qi */
    case 2089:  /* neon_vshrs_nv8hi */
    case 2090:  /* neon_vshru_nv8hi */
    case 2091:  /* neon_vrshrs_nv8hi */
    case 2092:  /* neon_vrshru_nv8hi */
    case 2097:  /* neon_vshrs_nv4si */
    case 2098:  /* neon_vshru_nv4si */
    case 2099:  /* neon_vrshrs_nv4si */
    case 2100:  /* neon_vrshru_nv4si */
    case 2105:  /* neon_vshrs_nv2di */
    case 2106:  /* neon_vshru_nv2di */
    case 2107:  /* neon_vrshrs_nv2di */
    case 2108:  /* neon_vrshru_nv2di */
    case 2134:  /* neon_vshl_nv16qi */
    case 2136:  /* neon_vshl_nv8hi */
    case 2138:  /* neon_vshl_nv4si */
    case 2140:  /* neon_vshl_nv2di */
      return TYPE_NEON_SHIFT_IMM_Q;

    case 1198:  /* vashrv8qi3_imm */
    case 1200:  /* vashrv4hi3_imm */
    case 1202:  /* vashrv2si3_imm */
    case 1204:  /* vlshrv8qi3_imm */
    case 1206:  /* vlshrv4hi3_imm */
    case 1208:  /* vlshrv2si3_imm */
    case 1229:  /* ashrdi3_neon_imm_noclobber */
    case 1230:  /* lshrdi3_neon_imm_noclobber */
    case 2013:  /* neon_vshlsv8qi */
    case 2014:  /* neon_vshluv8qi */
    case 2015:  /* neon_vrshlsv8qi */
    case 2016:  /* neon_vrshluv8qi */
    case 2021:  /* neon_vshlsv4hi */
    case 2022:  /* neon_vshluv4hi */
    case 2023:  /* neon_vrshlsv4hi */
    case 2024:  /* neon_vrshluv4hi */
    case 2029:  /* neon_vshlsv2si */
    case 2030:  /* neon_vshluv2si */
    case 2031:  /* neon_vrshlsv2si */
    case 2032:  /* neon_vrshluv2si */
    case 2037:  /* neon_vshlsdi */
    case 2038:  /* neon_vshludi */
    case 2039:  /* neon_vrshlsdi */
    case 2040:  /* neon_vrshludi */
    case 2077:  /* neon_vshrs_nv8qi */
    case 2078:  /* neon_vshru_nv8qi */
    case 2079:  /* neon_vrshrs_nv8qi */
    case 2080:  /* neon_vrshru_nv8qi */
    case 2085:  /* neon_vshrs_nv4hi */
    case 2086:  /* neon_vshru_nv4hi */
    case 2087:  /* neon_vrshrs_nv4hi */
    case 2088:  /* neon_vrshru_nv4hi */
    case 2093:  /* neon_vshrs_nv2si */
    case 2094:  /* neon_vshru_nv2si */
    case 2095:  /* neon_vrshrs_nv2si */
    case 2096:  /* neon_vrshru_nv2si */
    case 2101:  /* neon_vshrs_ndi */
    case 2102:  /* neon_vshru_ndi */
    case 2103:  /* neon_vrshrs_ndi */
    case 2104:  /* neon_vrshru_ndi */
    case 2133:  /* neon_vshl_nv8qi */
    case 2135:  /* neon_vshl_nv4hi */
    case 2137:  /* neon_vshl_nv2si */
    case 2139:  /* neon_vshl_ndi */
      return TYPE_NEON_SHIFT_IMM;

    case 1609:  /* neon_vtstv16qi */
    case 1611:  /* neon_vtstv8hi */
    case 1613:  /* neon_vtstv4si */
      return TYPE_NEON_TST_Q;

    case 1608:  /* neon_vtstv8qi */
    case 1610:  /* neon_vtstv4hi */
    case 1612:  /* neon_vtstv2si */
      return TYPE_NEON_TST;

    case 1062:  /* iorv16qi3 */
    case 1064:  /* iorv8hi3 */
    case 1066:  /* iorv4si3 */
    case 1068:  /* iorv8hf3 */
    case 1070:  /* iorv4sf3 */
    case 1071:  /* iorv2di3 */
    case 1073:  /* andv16qi3 */
    case 1075:  /* andv8hi3 */
    case 1077:  /* andv4si3 */
    case 1079:  /* andv8hf3 */
    case 1081:  /* andv4sf3 */
    case 1082:  /* andv2di3 */
    case 1084:  /* ornv16qi3_neon */
    case 1086:  /* ornv8hi3_neon */
    case 1088:  /* ornv4si3_neon */
    case 1090:  /* ornv8hf3_neon */
    case 1092:  /* ornv4sf3_neon */
    case 1093:  /* ornv2di3_neon */
    case 1096:  /* bicv16qi3_neon */
    case 1098:  /* bicv8hi3_neon */
    case 1100:  /* bicv4si3_neon */
    case 1102:  /* bicv8hf3_neon */
    case 1104:  /* bicv4sf3_neon */
    case 1105:  /* bicv2di3_neon */
    case 1108:  /* xorv16qi3 */
    case 1110:  /* xorv8hi3 */
    case 1112:  /* xorv4si3 */
    case 1114:  /* xorv8hf3 */
    case 1116:  /* xorv4sf3 */
    case 1117:  /* xorv2di3 */
      return TYPE_NEON_LOGIC_Q;

    case 1061:  /* iorv8qi3 */
    case 1063:  /* iorv4hi3 */
    case 1065:  /* iorv2si3 */
    case 1067:  /* iorv4hf3 */
    case 1069:  /* iorv2sf3 */
    case 1072:  /* andv8qi3 */
    case 1074:  /* andv4hi3 */
    case 1076:  /* andv2si3 */
    case 1078:  /* andv4hf3 */
    case 1080:  /* andv2sf3 */
    case 1083:  /* ornv8qi3_neon */
    case 1085:  /* ornv4hi3_neon */
    case 1087:  /* ornv2si3_neon */
    case 1089:  /* ornv4hf3_neon */
    case 1091:  /* ornv2sf3_neon */
    case 1095:  /* bicv8qi3_neon */
    case 1097:  /* bicv4hi3_neon */
    case 1099:  /* bicv2si3_neon */
    case 1101:  /* bicv4hf3_neon */
    case 1103:  /* bicv2sf3_neon */
    case 1107:  /* xorv8qi3 */
    case 1109:  /* xorv4hi3 */
    case 1111:  /* xorv2si3 */
    case 1113:  /* xorv4hf3 */
    case 1115:  /* xorv2sf3 */
      return TYPE_NEON_LOGIC;

    case 1276:  /* quad_halves_sminv4si */
    case 1277:  /* quad_halves_smaxv4si */
    case 1278:  /* quad_halves_uminv4si */
    case 1279:  /* quad_halves_umaxv4si */
    case 1284:  /* quad_halves_sminv8hi */
    case 1285:  /* quad_halves_smaxv8hi */
    case 1286:  /* quad_halves_uminv8hi */
    case 1287:  /* quad_halves_umaxv8hi */
    case 1289:  /* quad_halves_sminv16qi */
    case 1290:  /* quad_halves_smaxv16qi */
    case 1291:  /* quad_halves_uminv16qi */
    case 1292:  /* quad_halves_umaxv16qi */
      return TYPE_NEON_REDUC_MINMAX_Q;

    case 1307:  /* neon_vpuminv8qi */
    case 1308:  /* neon_vpuminv4hi */
    case 1309:  /* neon_vpuminv2si */
    case 1310:  /* neon_vpumaxv8qi */
    case 1311:  /* neon_vpumaxv4hi */
    case 1312:  /* neon_vpumaxv2si */
    case 1686:  /* neon_vpmaxfv4hf */
    case 1687:  /* neon_vpminfv4hf */
    case 1720:  /* neon_vpmaxsv8qi */
    case 1721:  /* neon_vpmaxuv8qi */
    case 1722:  /* neon_vpminsv8qi */
    case 1723:  /* neon_vpminuv8qi */
    case 1724:  /* neon_vpmaxsv4hi */
    case 1725:  /* neon_vpmaxuv4hi */
    case 1726:  /* neon_vpminsv4hi */
    case 1727:  /* neon_vpminuv4hi */
    case 1728:  /* neon_vpmaxsv2si */
    case 1729:  /* neon_vpmaxuv2si */
    case 1730:  /* neon_vpminsv2si */
    case 1731:  /* neon_vpminuv2si */
      return TYPE_NEON_REDUC_MINMAX;

    case 1708:  /* neon_vpadalsv8qi */
    case 1709:  /* neon_vpadaluv8qi */
    case 1710:  /* neon_vpadalsv16qi */
    case 1711:  /* neon_vpadaluv16qi */
    case 1712:  /* neon_vpadalsv4hi */
    case 1713:  /* neon_vpadaluv4hi */
    case 1714:  /* neon_vpadalsv8hi */
    case 1715:  /* neon_vpadaluv8hi */
    case 1716:  /* neon_vpadalsv2si */
    case 1717:  /* neon_vpadaluv2si */
    case 1718:  /* neon_vpadalsv4si */
    case 1719:  /* neon_vpadaluv4si */
      return TYPE_NEON_REDUC_ADD_ACC;

    case 1696:  /* neon_vpaddlsv8qi */
    case 1697:  /* neon_vpaddluv8qi */
    case 1698:  /* neon_vpaddlsv16qi */
    case 1699:  /* neon_vpaddluv16qi */
    case 1700:  /* neon_vpaddlsv4hi */
    case 1701:  /* neon_vpaddluv4hi */
    case 1702:  /* neon_vpaddlsv8hi */
    case 1703:  /* neon_vpaddluv8hi */
    case 1704:  /* neon_vpaddlsv2si */
    case 1705:  /* neon_vpaddluv2si */
    case 1706:  /* neon_vpaddlsv4si */
    case 1707:  /* neon_vpaddluv4si */
      return TYPE_NEON_REDUC_ADD_LONG;

    case 1275:  /* quad_halves_plusv4si */
    case 1283:  /* quad_halves_plusv8hi */
    case 1288:  /* quad_halves_plusv16qi */
      return TYPE_NEON_REDUC_ADD_Q;

    case 1298:  /* neon_vpaddv4hf */
      return TYPE_NEON_REDUC_ADD;

    case 1638:  /* neon_vabasv16qi */
    case 1639:  /* neon_vabauv16qi */
    case 1642:  /* neon_vabasv8hi */
    case 1643:  /* neon_vabauv8hi */
    case 1646:  /* neon_vabasv4si */
    case 1647:  /* neon_vabauv4si */
      return TYPE_NEON_ARITH_ACC_Q;

    case 1636:  /* neon_vabasv8qi */
    case 1637:  /* neon_vabauv8qi */
    case 1640:  /* neon_vabasv4hi */
    case 1641:  /* neon_vabauv4hi */
    case 1644:  /* neon_vabasv2si */
    case 1645:  /* neon_vabauv2si */
    case 1648:  /* neon_vabalsv8qi */
    case 1649:  /* neon_vabaluv8qi */
    case 1650:  /* neon_vabalsv4hi */
    case 1651:  /* neon_vabaluv4hi */
    case 1652:  /* neon_vabalsv2si */
    case 1653:  /* neon_vabaluv2si */
      return TYPE_NEON_ARITH_ACC;

    case 1574:  /* neon_vcgtuv16qi */
    case 1575:  /* neon_vcgeuv16qi */
    case 1578:  /* neon_vcgtuv8hi */
    case 1579:  /* neon_vcgeuv8hi */
    case 1582:  /* neon_vcgtuv4si */
    case 1583:  /* neon_vcgeuv4si */
      return TYPE_NEON_COMPARE_Q;

    case 1572:  /* neon_vcgtuv8qi */
    case 1573:  /* neon_vcgeuv8qi */
    case 1576:  /* neon_vcgtuv4hi */
    case 1577:  /* neon_vcgeuv4hi */
    case 1580:  /* neon_vcgtuv2si */
    case 1581:  /* neon_vcgeuv2si */
      return TYPE_NEON_COMPARE;

    case 1165:  /* *uminv16qi3_neon */
    case 1167:  /* *uminv8hi3_neon */
    case 1169:  /* *uminv4si3_neon */
    case 1171:  /* *umaxv16qi3_neon */
    case 1173:  /* *umaxv8hi3_neon */
    case 1175:  /* *umaxv4si3_neon */
    case 1658:  /* neon_vmaxsv16qi */
    case 1659:  /* neon_vmaxuv16qi */
    case 1660:  /* neon_vminsv16qi */
    case 1661:  /* neon_vminuv16qi */
    case 1666:  /* neon_vmaxsv8hi */
    case 1667:  /* neon_vmaxuv8hi */
    case 1668:  /* neon_vminsv8hi */
    case 1669:  /* neon_vminuv8hi */
    case 1674:  /* neon_vmaxsv4si */
    case 1675:  /* neon_vmaxuv4si */
    case 1676:  /* neon_vminsv4si */
    case 1677:  /* neon_vminuv4si */
      return TYPE_NEON_MINMAX_Q;

    case 1164:  /* *uminv8qi3_neon */
    case 1166:  /* *uminv4hi3_neon */
    case 1168:  /* *uminv2si3_neon */
    case 1170:  /* *umaxv8qi3_neon */
    case 1172:  /* *umaxv4hi3_neon */
    case 1174:  /* *umaxv2si3_neon */
    case 1654:  /* neon_vmaxsv8qi */
    case 1655:  /* neon_vmaxuv8qi */
    case 1656:  /* neon_vminsv8qi */
    case 1657:  /* neon_vminuv8qi */
    case 1662:  /* neon_vmaxsv4hi */
    case 1663:  /* neon_vmaxuv4hi */
    case 1664:  /* neon_vminsv4hi */
    case 1665:  /* neon_vminuv4hi */
    case 1670:  /* neon_vmaxsv2si */
    case 1671:  /* neon_vmaxuv2si */
    case 1672:  /* neon_vminsv2si */
    case 1673:  /* neon_vminuv2si */
      return TYPE_NEON_MINMAX;

    case 1630:  /* neon_vabdlsv8qi */
    case 1631:  /* neon_vabdluv8qi */
    case 1632:  /* neon_vabdlsv4hi */
    case 1633:  /* neon_vabdluv4hi */
    case 1634:  /* neon_vabdlsv2si */
    case 1635:  /* neon_vabdluv2si */
      return TYPE_NEON_ABD_LONG;

    case 1616:  /* neon_vabdsv16qi */
    case 1617:  /* neon_vabduv16qi */
    case 1620:  /* neon_vabdsv8hi */
    case 1621:  /* neon_vabduv8hi */
    case 1624:  /* neon_vabdsv4si */
    case 1625:  /* neon_vabduv4si */
    case 1626:  /* neon_vabdv8hf */
      return TYPE_NEON_ABD_Q;

    case 1614:  /* neon_vabdsv8qi */
    case 1615:  /* neon_vabduv8qi */
    case 1618:  /* neon_vabdsv4hi */
    case 1619:  /* neon_vabduv4hi */
    case 1622:  /* neon_vabdsv2si */
    case 1623:  /* neon_vabduv2si */
    case 1627:  /* neon_vabdv4hf */
      return TYPE_NEON_ABD;

    case 1745:  /* neon_vqabsv16qi */
    case 1747:  /* neon_vqabsv8hi */
    case 1749:  /* neon_vqabsv4si */
      return TYPE_NEON_QABS_Q;

    case 1744:  /* neon_vqabsv8qi */
    case 1746:  /* neon_vqabsv4hi */
    case 1748:  /* neon_vqabsv2si */
      return TYPE_NEON_QABS;

    case 1756:  /* neon_vqnegv16qi */
    case 1758:  /* neon_vqnegv8hi */
    case 1760:  /* neon_vqnegv4si */
      return TYPE_NEON_QNEG_Q;

    case 1755:  /* neon_vqnegv8qi */
    case 1757:  /* neon_vqnegv4hi */
    case 1759:  /* neon_vqnegv2si */
      return TYPE_NEON_QNEG;

    case 1146:  /* absv8hf2 */
    case 1147:  /* negv8hf2 */
      return TYPE_NEON_ABS_Q;

    case 1148:  /* absv4hf2 */
    case 1149:  /* negv4hf2 */
      return TYPE_NEON_ABS;

    case 1496:  /* neon_vsubhnv8hi */
    case 1497:  /* neon_vrsubhnv8hi */
    case 1498:  /* neon_vsubhnv4si */
    case 1499:  /* neon_vrsubhnv4si */
    case 1500:  /* neon_vsubhnv2di */
    case 1501:  /* neon_vrsubhnv2di */
      return TYPE_NEON_SUB_HALVE_NARROW_Q;

    case 1486:  /* neon_vhsubsv16qi */
    case 1487:  /* neon_vhsubuv16qi */
    case 1490:  /* neon_vhsubsv8hi */
    case 1491:  /* neon_vhsubuv8hi */
    case 1494:  /* neon_vhsubsv4si */
    case 1495:  /* neon_vhsubuv4si */
      return TYPE_NEON_SUB_HALVE_Q;

    case 1484:  /* neon_vhsubsv8qi */
    case 1485:  /* neon_vhsubuv8qi */
    case 1488:  /* neon_vhsubsv4hi */
    case 1489:  /* neon_vhsubuv4hi */
    case 1492:  /* neon_vhsubsv2si */
    case 1493:  /* neon_vhsubuv2si */
      return TYPE_NEON_SUB_HALVE;

    case 1470:  /* neon_vqsubsv16qi */
    case 1471:  /* neon_vqsubuv16qi */
    case 1474:  /* neon_vqsubsv8hi */
    case 1475:  /* neon_vqsubuv8hi */
    case 1478:  /* neon_vqsubsv4si */
    case 1479:  /* neon_vqsubuv4si */
    case 1482:  /* neon_vqsubsv2di */
    case 1483:  /* neon_vqsubuv2di */
      return TYPE_NEON_QSUB_Q;

    case 1321:  /* *ss_subv8qi_neon */
    case 1322:  /* *ss_subv4hi_neon */
    case 1323:  /* *ss_subv2si_neon */
    case 1324:  /* *ss_subv2sf_neon */
    case 1325:  /* *us_subv8qi_neon */
    case 1326:  /* *us_subv4hi_neon */
    case 1327:  /* *us_subv2si_neon */
    case 1328:  /* *us_subv2sf_neon */
    case 1468:  /* neon_vqsubsv8qi */
    case 1469:  /* neon_vqsubuv8qi */
    case 1472:  /* neon_vqsubsv4hi */
    case 1473:  /* neon_vqsubuv4hi */
    case 1476:  /* neon_vqsubsv2si */
    case 1477:  /* neon_vqsubuv2si */
    case 1480:  /* neon_vqsubsdi */
    case 1481:  /* neon_vqsubudi */
      return TYPE_NEON_QSUB;

    case 1456:  /* neon_vsublsv8qi */
    case 1457:  /* neon_vsubluv8qi */
    case 1458:  /* neon_vsublsv4hi */
    case 1459:  /* neon_vsubluv4hi */
    case 1460:  /* neon_vsublsv2si */
    case 1461:  /* neon_vsubluv2si */
      return TYPE_NEON_SUB_LONG;

    case 1462:  /* neon_vsubwsv8qi */
    case 1463:  /* neon_vsubwuv8qi */
    case 1464:  /* neon_vsubwsv4hi */
    case 1465:  /* neon_vsubwuv4hi */
    case 1466:  /* neon_vsubwsv2si */
    case 1467:  /* neon_vsubwuv2si */
      return TYPE_NEON_SUB_WIDEN;

    case 996:  /* subv8hf3_fp16 */
      return TYPE_NEON_SUB_Q;

    case 997:  /* subv4hf3_fp16 */
      return TYPE_NEON_SUB;

    case 1383:  /* neon_vaddhnv8hi */
    case 1384:  /* neon_vraddhnv8hi */
    case 1385:  /* neon_vaddhnv4si */
    case 1386:  /* neon_vraddhnv4si */
    case 1387:  /* neon_vaddhnv2di */
    case 1388:  /* neon_vraddhnv2di */
      return TYPE_NEON_ADD_HALVE_NARROW_Q;

    case 1343:  /* neon_vrhaddsv8qi */
    case 1344:  /* neon_vrhadduv8qi */
    case 1345:  /* neon_vhaddsv8qi */
    case 1346:  /* neon_vhadduv8qi */
    case 1347:  /* neon_vrhaddsv16qi */
    case 1348:  /* neon_vrhadduv16qi */
    case 1349:  /* neon_vhaddsv16qi */
    case 1350:  /* neon_vhadduv16qi */
    case 1351:  /* neon_vrhaddsv4hi */
    case 1352:  /* neon_vrhadduv4hi */
    case 1353:  /* neon_vhaddsv4hi */
    case 1354:  /* neon_vhadduv4hi */
    case 1355:  /* neon_vrhaddsv8hi */
    case 1356:  /* neon_vrhadduv8hi */
    case 1357:  /* neon_vhaddsv8hi */
    case 1358:  /* neon_vhadduv8hi */
    case 1359:  /* neon_vrhaddsv2si */
    case 1360:  /* neon_vrhadduv2si */
    case 1361:  /* neon_vhaddsv2si */
    case 1362:  /* neon_vhadduv2si */
    case 1363:  /* neon_vrhaddsv4si */
    case 1364:  /* neon_vrhadduv4si */
    case 1365:  /* neon_vhaddsv4si */
    case 1366:  /* neon_vhadduv4si */
      return TYPE_NEON_ADD_HALVE_Q;

    case 1369:  /* neon_vqaddsv16qi */
    case 1370:  /* neon_vqadduv16qi */
    case 1373:  /* neon_vqaddsv8hi */
    case 1374:  /* neon_vqadduv8hi */
    case 1377:  /* neon_vqaddsv4si */
    case 1378:  /* neon_vqadduv4si */
    case 1381:  /* neon_vqaddsv2di */
    case 1382:  /* neon_vqadduv2di */
      return TYPE_NEON_QADD_Q;

    case 1313:  /* *ss_addv8qi_neon */
    case 1314:  /* *ss_addv4hi_neon */
    case 1315:  /* *ss_addv2si_neon */
    case 1316:  /* *ss_addv2sf_neon */
    case 1317:  /* *us_addv8qi_neon */
    case 1318:  /* *us_addv4hi_neon */
    case 1319:  /* *us_addv2si_neon */
    case 1320:  /* *us_addv2sf_neon */
    case 1367:  /* neon_vqaddsv8qi */
    case 1368:  /* neon_vqadduv8qi */
    case 1371:  /* neon_vqaddsv4hi */
    case 1372:  /* neon_vqadduv4hi */
    case 1375:  /* neon_vqaddsv2si */
    case 1376:  /* neon_vqadduv2si */
    case 1379:  /* neon_vqaddsdi */
    case 1380:  /* neon_vqaddudi */
      return TYPE_NEON_QADD;

    case 1331:  /* neon_vaddlsv8qi */
    case 1332:  /* neon_vaddluv8qi */
    case 1333:  /* neon_vaddlsv4hi */
    case 1334:  /* neon_vaddluv4hi */
    case 1335:  /* neon_vaddlsv2si */
    case 1336:  /* neon_vaddluv2si */
      return TYPE_NEON_ADD_LONG;

    case 1233:  /* vec_sel_widen_ssum_lov16qiv8qi3 */
    case 1234:  /* vec_sel_widen_ssum_lov16qiv4hi3 */
    case 1235:  /* vec_sel_widen_ssum_lov16qiv2si3 */
    case 1236:  /* vec_sel_widen_ssum_lov8hiv8qi3 */
    case 1237:  /* vec_sel_widen_ssum_lov8hiv4hi3 */
    case 1238:  /* vec_sel_widen_ssum_lov8hiv2si3 */
    case 1239:  /* vec_sel_widen_ssum_lov4siv8qi3 */
    case 1240:  /* vec_sel_widen_ssum_lov4siv4hi3 */
    case 1241:  /* vec_sel_widen_ssum_lov4siv2si3 */
    case 1242:  /* vec_sel_widen_ssum_hiv16qiv8qi3 */
    case 1243:  /* vec_sel_widen_ssum_hiv16qiv4hi3 */
    case 1244:  /* vec_sel_widen_ssum_hiv16qiv2si3 */
    case 1245:  /* vec_sel_widen_ssum_hiv8hiv8qi3 */
    case 1246:  /* vec_sel_widen_ssum_hiv8hiv4hi3 */
    case 1247:  /* vec_sel_widen_ssum_hiv8hiv2si3 */
    case 1248:  /* vec_sel_widen_ssum_hiv4siv8qi3 */
    case 1249:  /* vec_sel_widen_ssum_hiv4siv4hi3 */
    case 1250:  /* vec_sel_widen_ssum_hiv4siv2si3 */
    case 1251:  /* widen_ssumv8qi3 */
    case 1252:  /* widen_ssumv4hi3 */
    case 1253:  /* widen_ssumv2si3 */
    case 1254:  /* vec_sel_widen_usum_lov16qiv8qi3 */
    case 1255:  /* vec_sel_widen_usum_lov16qiv4hi3 */
    case 1256:  /* vec_sel_widen_usum_lov16qiv2si3 */
    case 1257:  /* vec_sel_widen_usum_lov8hiv8qi3 */
    case 1258:  /* vec_sel_widen_usum_lov8hiv4hi3 */
    case 1259:  /* vec_sel_widen_usum_lov8hiv2si3 */
    case 1260:  /* vec_sel_widen_usum_lov4siv8qi3 */
    case 1261:  /* vec_sel_widen_usum_lov4siv4hi3 */
    case 1262:  /* vec_sel_widen_usum_lov4siv2si3 */
    case 1263:  /* vec_sel_widen_usum_hiv16qiv8qi3 */
    case 1264:  /* vec_sel_widen_usum_hiv16qiv4hi3 */
    case 1265:  /* vec_sel_widen_usum_hiv16qiv2si3 */
    case 1266:  /* vec_sel_widen_usum_hiv8hiv8qi3 */
    case 1267:  /* vec_sel_widen_usum_hiv8hiv4hi3 */
    case 1268:  /* vec_sel_widen_usum_hiv8hiv2si3 */
    case 1269:  /* vec_sel_widen_usum_hiv4siv8qi3 */
    case 1270:  /* vec_sel_widen_usum_hiv4siv4hi3 */
    case 1271:  /* vec_sel_widen_usum_hiv4siv2si3 */
    case 1272:  /* widen_usumv8qi3 */
    case 1273:  /* widen_usumv4hi3 */
    case 1274:  /* widen_usumv2si3 */
    case 1337:  /* neon_vaddwsv8qi */
    case 1338:  /* neon_vaddwuv8qi */
    case 1339:  /* neon_vaddwsv4hi */
    case 1340:  /* neon_vaddwuv4hi */
    case 1341:  /* neon_vaddwsv2si */
    case 1342:  /* neon_vaddwuv2si */
      return TYPE_NEON_ADD_WIDEN;

    case 1293:  /* arm_reduc_plus_internal_v2di */
      return TYPE_NEON_ADD_Q;

    case 422:  /* *xorv2si3_iwmmxt */
    case 423:  /* *xorv4hi3_iwmmxt */
    case 424:  /* *xorv8qi3_iwmmxt */
    case 450:  /* iwmmxt_clrdi */
    case 451:  /* iwmmxt_clrv8qi */
    case 452:  /* iwmmxt_clrv4hi */
    case 453:  /* iwmmxt_clrv2si */
    case 3800:  /* *p *xorv2si3_iwmmxt */
    case 3801:  /* *p *xorv4hi3_iwmmxt */
    case 3802:  /* *p *xorv8qi3_iwmmxt */
    case 3828:  /* *p iwmmxt_clrdi */
    case 3829:  /* *p iwmmxt_clrv8qi */
    case 3830:  /* *p iwmmxt_clrv4hi */
    case 3831:  /* *p iwmmxt_clrv2si */
      return TYPE_WMMX_WXOR;

    case 497:  /* iwmmxt_wunpckilb */
    case 498:  /* iwmmxt_wunpckilh */
    case 499:  /* iwmmxt_wunpckilw */
    case 3875:  /* *p iwmmxt_wunpckilb */
    case 3876:  /* *p iwmmxt_wunpckilh */
    case 3877:  /* *p iwmmxt_wunpckilw */
      return TYPE_WMMX_WUNPCKIL;

    case 494:  /* iwmmxt_wunpckihb */
    case 495:  /* iwmmxt_wunpckihh */
    case 496:  /* iwmmxt_wunpckihw */
    case 3872:  /* *p iwmmxt_wunpckihb */
    case 3873:  /* *p iwmmxt_wunpckihh */
    case 3874:  /* *p iwmmxt_wunpckihw */
      return TYPE_WMMX_WUNPCKIH;

    case 506:  /* iwmmxt_wunpckelub */
    case 507:  /* iwmmxt_wunpckeluh */
    case 508:  /* iwmmxt_wunpckeluw */
    case 509:  /* iwmmxt_wunpckelsb */
    case 510:  /* iwmmxt_wunpckelsh */
    case 511:  /* iwmmxt_wunpckelsw */
    case 3884:  /* *p iwmmxt_wunpckelub */
    case 3885:  /* *p iwmmxt_wunpckeluh */
    case 3886:  /* *p iwmmxt_wunpckeluw */
    case 3887:  /* *p iwmmxt_wunpckelsb */
    case 3888:  /* *p iwmmxt_wunpckelsh */
    case 3889:  /* *p iwmmxt_wunpckelsw */
      return TYPE_WMMX_WUNPCKEL;

    case 500:  /* iwmmxt_wunpckehub */
    case 501:  /* iwmmxt_wunpckehuh */
    case 502:  /* iwmmxt_wunpckehuw */
    case 503:  /* iwmmxt_wunpckehsb */
    case 504:  /* iwmmxt_wunpckehsh */
    case 505:  /* iwmmxt_wunpckehsw */
    case 3878:  /* *p iwmmxt_wunpckehub */
    case 3879:  /* *p iwmmxt_wunpckehuh */
    case 3880:  /* *p iwmmxt_wunpckehuw */
    case 3881:  /* *p iwmmxt_wunpckehsb */
    case 3882:  /* *p iwmmxt_wunpckehsh */
    case 3883:  /* *p iwmmxt_wunpckehsw */
      return TYPE_WMMX_WUNPCKEH;

    case 567:  /* iwmmxt_wsubaddhx */
    case 3945:  /* *p iwmmxt_wsubaddhx */
      return TYPE_WMMX_WSUBADDHX;

    case 434:  /* *subv2si3_iwmmxt */
    case 435:  /* *subv4hi3_iwmmxt */
    case 436:  /* *subv8qi3_iwmmxt */
    case 437:  /* sssubv8qi3 */
    case 438:  /* sssubv4hi3 */
    case 439:  /* sssubv2si3 */
    case 440:  /* ussubv8qi3 */
    case 441:  /* ussubv4hi3 */
    case 442:  /* ussubv2si3 */
    case 3812:  /* *p *subv2si3_iwmmxt */
    case 3813:  /* *p *subv4hi3_iwmmxt */
    case 3814:  /* *p *subv8qi3_iwmmxt */
    case 3815:  /* *p sssubv8qi3 */
    case 3816:  /* *p sssubv4hi3 */
    case 3817:  /* *p sssubv2si3 */
    case 3818:  /* *p ussubv8qi3 */
    case 3819:  /* *p ussubv4hi3 */
    case 3820:  /* *p ussubv2si3 */
      return TYPE_WMMX_WSUB;

    case 518:  /* lshrv4hi3_iwmmxt */
    case 519:  /* lshrv2si3_iwmmxt */
    case 520:  /* lshrdi3_iwmmxt */
    case 530:  /* lshrv4hi3_di */
    case 531:  /* lshrv2si3_di */
    case 532:  /* lshrdi3_di */
    case 3896:  /* *p lshrv4hi3_iwmmxt */
    case 3897:  /* *p lshrv2si3_iwmmxt */
    case 3898:  /* *p lshrdi3_iwmmxt */
    case 3908:  /* *p lshrv4hi3_di */
    case 3909:  /* *p lshrv2si3_di */
    case 3910:  /* *p lshrdi3_di */
      return TYPE_WMMX_WSRL;

    case 515:  /* ashrv4hi3_iwmmxt */
    case 516:  /* ashrv2si3_iwmmxt */
    case 517:  /* ashrdi3_iwmmxt */
    case 527:  /* ashrv4hi3_di */
    case 528:  /* ashrv2si3_di */
    case 529:  /* ashrdi3_di */
    case 3893:  /* *p ashrv4hi3_iwmmxt */
    case 3894:  /* *p ashrv2si3_iwmmxt */
    case 3895:  /* *p ashrdi3_iwmmxt */
    case 3905:  /* *p ashrv4hi3_di */
    case 3906:  /* *p ashrv2si3_di */
    case 3907:  /* *p ashrdi3_di */
      return TYPE_WMMX_WSRA;

    case 521:  /* ashlv4hi3_iwmmxt */
    case 522:  /* ashlv2si3_iwmmxt */
    case 523:  /* ashldi3_iwmmxt */
    case 533:  /* ashlv4hi3_di */
    case 534:  /* ashlv2si3_di */
    case 535:  /* ashldi3_di */
    case 3899:  /* *p ashlv4hi3_iwmmxt */
    case 3900:  /* *p ashlv2si3_iwmmxt */
    case 3901:  /* *p ashldi3_iwmmxt */
    case 3911:  /* *p ashlv4hi3_di */
    case 3912:  /* *p ashlv2si3_di */
    case 3913:  /* *p ashldi3_di */
      return TYPE_WMMX_WSLL;

    case 466:  /* iwmmxt_wshufh */
    case 3844:  /* *p iwmmxt_wshufh */
      return TYPE_WMMX_WSHUFH;

    case 556:  /* iwmmxt_wsadb */
    case 557:  /* iwmmxt_wsadh */
    case 558:  /* iwmmxt_wsadbz */
    case 559:  /* iwmmxt_wsadhz */
    case 3934:  /* *p iwmmxt_wsadb */
    case 3935:  /* *p iwmmxt_wsadh */
    case 3936:  /* *p iwmmxt_wsadbz */
    case 3937:  /* *p iwmmxt_wsadhz */
      return TYPE_WMMX_WSAD;

    case 512:  /* rorv4hi3 */
    case 513:  /* rorv2si3 */
    case 514:  /* rordi3 */
    case 524:  /* rorv4hi3_di */
    case 525:  /* rorv2si3_di */
    case 526:  /* rordi3_di */
    case 3890:  /* *p rorv4hi3 */
    case 3891:  /* *p rorv2si3 */
    case 3892:  /* *p rordi3 */
    case 3902:  /* *p rorv4hi3_di */
    case 3903:  /* *p rorv2si3_di */
    case 3904:  /* *p rordi3_di */
      return TYPE_WMMX_WROR;

    case 584:  /* iwmmxt_wqmulwm */
    case 586:  /* iwmmxt_wqmulwmr */
    case 3962:  /* *p iwmmxt_wqmulwm */
    case 3964:  /* *p iwmmxt_wqmulwmr */
      return TYPE_WMMX_WQMULWM;

    case 583:  /* iwmmxt_wqmulm */
    case 585:  /* iwmmxt_wqmulmr */
    case 3961:  /* *p iwmmxt_wqmulm */
    case 3963:  /* *p iwmmxt_wqmulmr */
      return TYPE_WMMX_WQMULM;

    case 589:  /* iwmmxt_wqmiabb */
    case 590:  /* iwmmxt_wqmiabt */
    case 591:  /* iwmmxt_wqmiatb */
    case 592:  /* iwmmxt_wqmiatt */
    case 593:  /* iwmmxt_wqmiabbn */
    case 594:  /* iwmmxt_wqmiabtn */
    case 595:  /* iwmmxt_wqmiatbn */
    case 596:  /* iwmmxt_wqmiattn */
    case 3967:  /* *p iwmmxt_wqmiabb */
    case 3968:  /* *p iwmmxt_wqmiabt */
    case 3969:  /* *p iwmmxt_wqmiatb */
    case 3970:  /* *p iwmmxt_wqmiatt */
    case 3971:  /* *p iwmmxt_wqmiabbn */
    case 3972:  /* *p iwmmxt_wqmiabtn */
    case 3973:  /* *p iwmmxt_wqmiatbn */
    case 3974:  /* *p iwmmxt_wqmiattn */
      return TYPE_WMMX_WQMIAXY;

    case 488:  /* iwmmxt_wpackhss */
    case 489:  /* iwmmxt_wpackwss */
    case 490:  /* iwmmxt_wpackdss */
    case 491:  /* iwmmxt_wpackhus */
    case 492:  /* iwmmxt_wpackwus */
    case 493:  /* iwmmxt_wpackdus */
    case 3866:  /* *p iwmmxt_wpackhss */
    case 3867:  /* *p iwmmxt_wpackwss */
    case 3868:  /* *p iwmmxt_wpackdss */
    case 3869:  /* *p iwmmxt_wpackhus */
    case 3870:  /* *p iwmmxt_wpackwus */
    case 3871:  /* *p iwmmxt_wpackdus */
      return TYPE_WMMX_WPACK;

    case 419:  /* *iorv2si3_iwmmxt */
    case 420:  /* *iorv4hi3_iwmmxt */
    case 421:  /* *iorv8qi3_iwmmxt */
    case 3797:  /* *p *iorv2si3_iwmmxt */
    case 3798:  /* *p *iorv4hi3_iwmmxt */
    case 3799:  /* *p *iorv8qi3_iwmmxt */
      return TYPE_WMMX_WOR;

    case 576:  /* iwmmxt_wmulwsm */
    case 577:  /* iwmmxt_wmulwum */
    case 581:  /* iwmmxt_wmulwumr */
    case 582:  /* iwmmxt_wmulwl */
    case 3954:  /* *p iwmmxt_wmulwsm */
    case 3955:  /* *p iwmmxt_wmulwum */
    case 3959:  /* *p iwmmxt_wmulwumr */
    case 3960:  /* *p iwmmxt_wmulwl */
      return TYPE_WMMX_WMULW;

    case 443:  /* *mulv4hi3_iwmmxt */
    case 444:  /* smulv4hi3_highpart */
    case 445:  /* umulv4hi3_highpart */
    case 578:  /* iwmmxt_wmulsmr */
    case 579:  /* iwmmxt_wmulumr */
    case 580:  /* iwmmxt_wmulwsmr */
    case 3821:  /* *p *mulv4hi3_iwmmxt */
    case 3822:  /* *p smulv4hi3_highpart */
    case 3823:  /* *p umulv4hi3_highpart */
    case 3956:  /* *p iwmmxt_wmulsmr */
    case 3957:  /* *p iwmmxt_wmulumr */
    case 3958:  /* *p iwmmxt_wmulwsmr */
      return TYPE_WMMX_WMUL;

    case 482:  /* *sminv2si3_iwmmxt */
    case 483:  /* *sminv4hi3_iwmmxt */
    case 484:  /* *sminv8qi3_iwmmxt */
    case 485:  /* *uminv2si3_iwmmxt */
    case 486:  /* *uminv4hi3_iwmmxt */
    case 487:  /* *uminv8qi3_iwmmxt */
    case 3860:  /* *p *sminv2si3_iwmmxt */
    case 3861:  /* *p *sminv4hi3_iwmmxt */
    case 3862:  /* *p *sminv8qi3_iwmmxt */
    case 3863:  /* *p *uminv2si3_iwmmxt */
    case 3864:  /* *p *uminv4hi3_iwmmxt */
    case 3865:  /* *p *uminv8qi3_iwmmxt */
      return TYPE_WMMX_WMIN;

    case 597:  /* iwmmxt_wmiabb */
    case 598:  /* iwmmxt_wmiabt */
    case 599:  /* iwmmxt_wmiatb */
    case 600:  /* iwmmxt_wmiatt */
    case 601:  /* iwmmxt_wmiabbn */
    case 602:  /* iwmmxt_wmiabtn */
    case 603:  /* iwmmxt_wmiatbn */
    case 604:  /* iwmmxt_wmiattn */
    case 3975:  /* *p iwmmxt_wmiabb */
    case 3976:  /* *p iwmmxt_wmiabt */
    case 3977:  /* *p iwmmxt_wmiatb */
    case 3978:  /* *p iwmmxt_wmiatt */
    case 3979:  /* *p iwmmxt_wmiabbn */
    case 3980:  /* *p iwmmxt_wmiabtn */
    case 3981:  /* *p iwmmxt_wmiatbn */
    case 3982:  /* *p iwmmxt_wmiattn */
      return TYPE_WMMX_WMIAXY;

    case 605:  /* iwmmxt_wmiawbb */
    case 606:  /* iwmmxt_wmiawbt */
    case 607:  /* iwmmxt_wmiawtb */
    case 608:  /* iwmmxt_wmiawtt */
    case 609:  /* iwmmxt_wmiawbbn */
    case 610:  /* iwmmxt_wmiawbtn */
    case 611:  /* iwmmxt_wmiawtbn */
    case 612:  /* iwmmxt_wmiawttn */
    case 3983:  /* *p iwmmxt_wmiawbb */
    case 3984:  /* *p iwmmxt_wmiawbt */
    case 3985:  /* *p iwmmxt_wmiawtb */
    case 3986:  /* *p iwmmxt_wmiawtt */
    case 3987:  /* *p iwmmxt_wmiawbbn */
    case 3988:  /* *p iwmmxt_wmiawbtn */
    case 3989:  /* *p iwmmxt_wmiawtbn */
    case 3990:  /* *p iwmmxt_wmiawttn */
      return TYPE_WMMX_WMIAWXY;

    case 613:  /* iwmmxt_wmerge */
    case 3991:  /* *p iwmmxt_wmerge */
      return TYPE_WMMX_WMERGE;

    case 476:  /* *smaxv2si3_iwmmxt */
    case 477:  /* *smaxv4hi3_iwmmxt */
    case 478:  /* *smaxv8qi3_iwmmxt */
    case 479:  /* *umaxv2si3_iwmmxt */
    case 480:  /* *umaxv4hi3_iwmmxt */
    case 481:  /* *umaxv8qi3_iwmmxt */
    case 3854:  /* *p *smaxv2si3_iwmmxt */
    case 3855:  /* *p *smaxv4hi3_iwmmxt */
    case 3856:  /* *p *smaxv8qi3_iwmmxt */
    case 3857:  /* *p *umaxv2si3_iwmmxt */
    case 3858:  /* *p *umaxv4hi3_iwmmxt */
    case 3859:  /* *p *umaxv8qi3_iwmmxt */
      return TYPE_WMMX_WMAX;

    case 536:  /* iwmmxt_wmadds */
    case 537:  /* iwmmxt_wmaddu */
    case 572:  /* iwmmxt_wmaddsx */
    case 573:  /* iwmmxt_wmaddux */
    case 574:  /* iwmmxt_wmaddsn */
    case 575:  /* iwmmxt_wmaddun */
    case 3914:  /* *p iwmmxt_wmadds */
    case 3915:  /* *p iwmmxt_wmaddu */
    case 3950:  /* *p iwmmxt_wmaddsx */
    case 3951:  /* *p iwmmxt_wmaddux */
    case 3952:  /* *p iwmmxt_wmaddsn */
    case 3953:  /* *p iwmmxt_wmaddun */
      return TYPE_WMMX_WMADD;

    case 446:  /* iwmmxt_wmacs */
    case 447:  /* iwmmxt_wmacsz */
    case 448:  /* iwmmxt_wmacu */
    case 449:  /* iwmmxt_wmacuz */
    case 3824:  /* *p iwmmxt_wmacs */
    case 3825:  /* *p iwmmxt_wmacsz */
    case 3826:  /* *p iwmmxt_wmacu */
    case 3827:  /* *p iwmmxt_wmacuz */
      return TYPE_WMMX_WMAC;

    case 470:  /* gtuv8qi3 */
    case 471:  /* gtuv4hi3 */
    case 472:  /* gtuv2si3 */
    case 473:  /* gtv8qi3 */
    case 474:  /* gtv4hi3 */
    case 475:  /* gtv2si3 */
    case 3848:  /* *p gtuv8qi3 */
    case 3849:  /* *p gtuv4hi3 */
    case 3850:  /* *p gtuv2si3 */
    case 3851:  /* *p gtv8qi3 */
    case 3852:  /* *p gtv4hi3 */
    case 3853:  /* *p gtv2si3 */
      return TYPE_WMMX_WCMPGT;

    case 467:  /* eqv8qi3 */
    case 468:  /* eqv4hi3 */
    case 469:  /* eqv2si3 */
    case 3845:  /* *p eqv8qi3 */
    case 3846:  /* *p eqv4hi3 */
    case 3847:  /* *p eqv2si3 */
      return TYPE_WMMX_WCMPEQ;

    case 570:  /* iwmmxt_avg4 */
    case 571:  /* iwmmxt_avg4r */
    case 3948:  /* *p iwmmxt_avg4 */
    case 3949:  /* *p iwmmxt_avg4r */
      return TYPE_WMMX_WAVG4;

    case 454:  /* iwmmxt_uavgrndv8qi3 */
    case 455:  /* iwmmxt_uavgrndv4hi3 */
    case 456:  /* iwmmxt_uavgv8qi3 */
    case 457:  /* iwmmxt_uavgv4hi3 */
    case 3832:  /* *p iwmmxt_uavgrndv8qi3 */
    case 3833:  /* *p iwmmxt_uavgrndv4hi3 */
    case 3834:  /* *p iwmmxt_uavgv8qi3 */
    case 3835:  /* *p iwmmxt_uavgv4hi3 */
      return TYPE_WMMX_WAVG2;

    case 409:  /* iwmmxt_nanddi3 */
    case 3790:  /* *p iwmmxt_nanddi3 */
      return TYPE_WMMX_WANDN;

    case 416:  /* *andv2si3_iwmmxt */
    case 417:  /* *andv4hi3_iwmmxt */
    case 418:  /* *andv8qi3_iwmmxt */
    case 3794:  /* *p *andv2si3_iwmmxt */
    case 3795:  /* *p *andv4hi3_iwmmxt */
    case 3796:  /* *p *andv8qi3_iwmmxt */
      return TYPE_WMMX_WAND;

    case 551:  /* iwmmxt_walignr */
    case 552:  /* iwmmxt_walignr0 */
    case 553:  /* iwmmxt_walignr1 */
    case 554:  /* iwmmxt_walignr2 */
    case 555:  /* iwmmxt_walignr3 */
    case 3929:  /* *p iwmmxt_walignr */
    case 3930:  /* *p iwmmxt_walignr0 */
    case 3931:  /* *p iwmmxt_walignr1 */
    case 3932:  /* *p iwmmxt_walignr2 */
    case 3933:  /* *p iwmmxt_walignr3 */
      return TYPE_WMMX_WALIGNR;

    case 550:  /* iwmmxt_waligni */
    case 3928:  /* *p iwmmxt_waligni */
      return TYPE_WMMX_WALIGNI;

    case 566:  /* iwmmxt_waddsubhx */
    case 3944:  /* *p iwmmxt_waddsubhx */
      return TYPE_WMMX_WADDSUBHX;

    case 587:  /* iwmmxt_waddbhusm */
    case 588:  /* iwmmxt_waddbhusl */
    case 3965:  /* *p iwmmxt_waddbhusm */
    case 3966:  /* *p iwmmxt_waddbhusl */
      return TYPE_WMMX_WADDBHUS;

    case 425:  /* *addv2si3_iwmmxt */
    case 426:  /* *addv4hi3_iwmmxt */
    case 427:  /* *addv8qi3_iwmmxt */
    case 428:  /* ssaddv8qi3 */
    case 429:  /* ssaddv4hi3 */
    case 430:  /* ssaddv2si3 */
    case 431:  /* usaddv8qi3 */
    case 432:  /* usaddv4hi3 */
    case 433:  /* usaddv2si3 */
    case 568:  /* addcv4hi3 */
    case 569:  /* addcv2si3 */
    case 3803:  /* *p *addv2si3_iwmmxt */
    case 3804:  /* *p *addv4hi3_iwmmxt */
    case 3805:  /* *p *addv8qi3_iwmmxt */
    case 3806:  /* *p ssaddv8qi3 */
    case 3807:  /* *p ssaddv4hi3 */
    case 3808:  /* *p ssaddv2si3 */
    case 3809:  /* *p usaddv8qi3 */
    case 3810:  /* *p usaddv4hi3 */
    case 3811:  /* *p usaddv2si3 */
    case 3946:  /* *p addcv4hi3 */
    case 3947:  /* *p addcv2si3 */
      return TYPE_WMMX_WADD;

    case 547:  /* iwmmxt_waccb */
    case 548:  /* iwmmxt_wacch */
    case 549:  /* iwmmxt_waccw */
    case 3925:  /* *p iwmmxt_waccb */
    case 3926:  /* *p iwmmxt_wacch */
    case 3927:  /* *p iwmmxt_waccw */
      return TYPE_WMMX_WACC;

    case 563:  /* iwmmxt_wabsdiffb */
    case 564:  /* iwmmxt_wabsdiffh */
    case 565:  /* iwmmxt_wabsdiffw */
    case 3941:  /* *p iwmmxt_wabsdiffb */
    case 3942:  /* *p iwmmxt_wabsdiffh */
    case 3943:  /* *p iwmmxt_wabsdiffw */
      return TYPE_WMMX_WABSDIFF;

    case 560:  /* iwmmxt_wabsv2si3 */
    case 561:  /* iwmmxt_wabsv4hi3 */
    case 562:  /* iwmmxt_wabsv8qi3 */
    case 3938:  /* *p iwmmxt_wabsv2si3 */
    case 3939:  /* *p iwmmxt_wabsv4hi3 */
    case 3940:  /* *p iwmmxt_wabsv8qi3 */
      return TYPE_WMMX_WABS;

    case 620:  /* iwmmxt_torvscv2si3 */
    case 621:  /* iwmmxt_torvscv4hi3 */
    case 622:  /* iwmmxt_torvscv8qi3 */
    case 3998:  /* *p iwmmxt_torvscv2si3 */
    case 3999:  /* *p iwmmxt_torvscv4hi3 */
    case 4000:  /* *p iwmmxt_torvscv8qi3 */
      return TYPE_WMMX_TORVSC;

    case 617:  /* iwmmxt_torcv2si3 */
    case 618:  /* iwmmxt_torcv4hi3 */
    case 619:  /* iwmmxt_torcv8qi3 */
    case 3995:  /* *p iwmmxt_torcv2si3 */
    case 3996:  /* *p iwmmxt_torcv4hi3 */
    case 3997:  /* *p iwmmxt_torcv8qi3 */
      return TYPE_WMMX_TORC;

    case 544:  /* iwmmxt_tmovmskb */
    case 545:  /* iwmmxt_tmovmskh */
    case 546:  /* iwmmxt_tmovmskw */
    case 3922:  /* *p iwmmxt_tmovmskb */
    case 3923:  /* *p iwmmxt_tmovmskh */
    case 3924:  /* *p iwmmxt_tmovmskw */
      return TYPE_WMMX_TMOVMSK;

    case 540:  /* iwmmxt_tmiabb */
    case 541:  /* iwmmxt_tmiatb */
    case 542:  /* iwmmxt_tmiabt */
    case 543:  /* iwmmxt_tmiatt */
    case 3918:  /* *p iwmmxt_tmiabb */
    case 3919:  /* *p iwmmxt_tmiatb */
    case 3920:  /* *p iwmmxt_tmiabt */
    case 3921:  /* *p iwmmxt_tmiatt */
      return TYPE_WMMX_TMIAXY;

    case 539:  /* iwmmxt_tmiaph */
    case 3917:  /* *p iwmmxt_tmiaph */
      return TYPE_WMMX_TMIAPH;

    case 538:  /* iwmmxt_tmia */
    case 3916:  /* *p iwmmxt_tmia */
      return TYPE_WMMX_TMIA;

    case 458:  /* iwmmxt_tinsrb */
    case 459:  /* iwmmxt_tinsrh */
    case 460:  /* iwmmxt_tinsrw */
    case 3836:  /* *p iwmmxt_tinsrb */
    case 3837:  /* *p iwmmxt_tinsrh */
    case 3838:  /* *p iwmmxt_tinsrw */
      return TYPE_WMMX_TINSR;

    case 461:  /* iwmmxt_textrmub */
    case 462:  /* iwmmxt_textrmsb */
    case 463:  /* iwmmxt_textrmuh */
    case 464:  /* iwmmxt_textrmsh */
    case 465:  /* iwmmxt_textrmw */
    case 3839:  /* *p iwmmxt_textrmub */
    case 3840:  /* *p iwmmxt_textrmsb */
    case 3841:  /* *p iwmmxt_textrmuh */
    case 3842:  /* *p iwmmxt_textrmsh */
    case 3843:  /* *p iwmmxt_textrmw */
      return TYPE_WMMX_TEXTRM;

    case 623:  /* iwmmxt_textrcv2si3 */
    case 624:  /* iwmmxt_textrcv4hi3 */
    case 625:  /* iwmmxt_textrcv8qi3 */
    case 4001:  /* *p iwmmxt_textrcv2si3 */
    case 4002:  /* *p iwmmxt_textrcv4hi3 */
    case 4003:  /* *p iwmmxt_textrcv8qi3 */
      return TYPE_WMMX_TEXTRC;

    case 403:  /* tbcstv8qi */
    case 404:  /* tbcstv4hi */
    case 405:  /* tbcstv2si */
    case 3784:  /* *p tbcstv8qi */
    case 3785:  /* *p tbcstv4hi */
    case 3786:  /* *p tbcstv2si */
      return TYPE_WMMX_TBCST;

    case 614:  /* iwmmxt_tandcv2si3 */
    case 615:  /* iwmmxt_tandcv4hi3 */
    case 616:  /* iwmmxt_tandcv8qi3 */
    case 3992:  /* *p iwmmxt_tandcv2si3 */
    case 3993:  /* *p iwmmxt_tandcv4hi3 */
    case 3994:  /* *p iwmmxt_tandcv8qi3 */
      return TYPE_WMMX_TANDC;

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
    case 320:  /* ctzsi2 */
    case 323:  /* arm_eh_return */
    case 402:  /* *load_multiple */
    case 717:  /* *cmpsf_split_vfp */
    case 718:  /* *cmpsf_trap_split_vfp */
    case 719:  /* *cmpdf_split_vfp */
    case 720:  /* *cmpdf_trap_split_vfp */
    case 828:  /* *cstoresi_ne0_thumb1_insn */
    case 885:  /* thumb2_eh_return */
    case 2562:  /* *memory_barrier */
    case 2563:  /* atomic_loadqi */
    case 2564:  /* atomic_loadhi */
    case 2565:  /* atomic_loadsi */
    case 2566:  /* atomic_storeqi */
    case 2567:  /* atomic_storehi */
    case 2568:  /* atomic_storesi */
    case 2569:  /* arm_atomic_loaddi2_ldrd */
    case 2570:  /* atomic_compare_and_swapqi_1 */
    case 2571:  /* atomic_compare_and_swaphi_1 */
    case 2572:  /* atomic_compare_and_swapsi_1 */
    case 2573:  /* atomic_compare_and_swapdi_1 */
    case 2574:  /* atomic_exchangeqi */
    case 2575:  /* atomic_exchangehi */
    case 2576:  /* atomic_exchangesi */
    case 2577:  /* atomic_exchangedi */
    case 2578:  /* atomic_addqi */
    case 2579:  /* atomic_subqi */
    case 2580:  /* atomic_orqi */
    case 2581:  /* atomic_xorqi */
    case 2582:  /* atomic_andqi */
    case 2583:  /* atomic_addhi */
    case 2584:  /* atomic_subhi */
    case 2585:  /* atomic_orhi */
    case 2586:  /* atomic_xorhi */
    case 2587:  /* atomic_andhi */
    case 2588:  /* atomic_addsi */
    case 2589:  /* atomic_subsi */
    case 2590:  /* atomic_orsi */
    case 2591:  /* atomic_xorsi */
    case 2592:  /* atomic_andsi */
    case 2593:  /* atomic_adddi */
    case 2594:  /* atomic_subdi */
    case 2595:  /* atomic_ordi */
    case 2596:  /* atomic_xordi */
    case 2597:  /* atomic_anddi */
    case 2598:  /* atomic_nandqi */
    case 2599:  /* atomic_nandhi */
    case 2600:  /* atomic_nandsi */
    case 2601:  /* atomic_nanddi */
    case 2602:  /* atomic_fetch_addqi */
    case 2603:  /* atomic_fetch_subqi */
    case 2604:  /* atomic_fetch_orqi */
    case 2605:  /* atomic_fetch_xorqi */
    case 2606:  /* atomic_fetch_andqi */
    case 2607:  /* atomic_fetch_addhi */
    case 2608:  /* atomic_fetch_subhi */
    case 2609:  /* atomic_fetch_orhi */
    case 2610:  /* atomic_fetch_xorhi */
    case 2611:  /* atomic_fetch_andhi */
    case 2612:  /* atomic_fetch_addsi */
    case 2613:  /* atomic_fetch_subsi */
    case 2614:  /* atomic_fetch_orsi */
    case 2615:  /* atomic_fetch_xorsi */
    case 2616:  /* atomic_fetch_andsi */
    case 2617:  /* atomic_fetch_adddi */
    case 2618:  /* atomic_fetch_subdi */
    case 2619:  /* atomic_fetch_ordi */
    case 2620:  /* atomic_fetch_xordi */
    case 2621:  /* atomic_fetch_anddi */
    case 2622:  /* atomic_fetch_nandqi */
    case 2623:  /* atomic_fetch_nandhi */
    case 2624:  /* atomic_fetch_nandsi */
    case 2625:  /* atomic_fetch_nanddi */
    case 2626:  /* atomic_add_fetchqi */
    case 2627:  /* atomic_sub_fetchqi */
    case 2628:  /* atomic_or_fetchqi */
    case 2629:  /* atomic_xor_fetchqi */
    case 2630:  /* atomic_and_fetchqi */
    case 2631:  /* atomic_add_fetchhi */
    case 2632:  /* atomic_sub_fetchhi */
    case 2633:  /* atomic_or_fetchhi */
    case 2634:  /* atomic_xor_fetchhi */
    case 2635:  /* atomic_and_fetchhi */
    case 2636:  /* atomic_add_fetchsi */
    case 2637:  /* atomic_sub_fetchsi */
    case 2638:  /* atomic_or_fetchsi */
    case 2639:  /* atomic_xor_fetchsi */
    case 2640:  /* atomic_and_fetchsi */
    case 2641:  /* atomic_add_fetchdi */
    case 2642:  /* atomic_sub_fetchdi */
    case 2643:  /* atomic_or_fetchdi */
    case 2644:  /* atomic_xor_fetchdi */
    case 2645:  /* atomic_and_fetchdi */
    case 2646:  /* atomic_nand_fetchqi */
    case 2647:  /* atomic_nand_fetchhi */
    case 2648:  /* atomic_nand_fetchsi */
    case 2649:  /* atomic_nand_fetchdi */
    case 2650:  /* arm_load_exclusiveqi */
    case 2651:  /* arm_load_exclusivehi */
    case 2652:  /* arm_load_acquire_exclusiveqi */
    case 2653:  /* arm_load_acquire_exclusivehi */
    case 2654:  /* arm_load_exclusivesi */
    case 2655:  /* arm_load_acquire_exclusivesi */
    case 2656:  /* arm_load_exclusivedi */
    case 2657:  /* arm_load_acquire_exclusivedi */
    case 2658:  /* arm_store_exclusiveqi */
    case 2659:  /* arm_store_exclusivehi */
    case 2660:  /* arm_store_exclusivesi */
    case 2661:  /* arm_store_exclusivedi */
    case 2662:  /* arm_store_release_exclusivedi */
    case 2663:  /* arm_store_release_exclusiveqi */
    case 2664:  /* arm_store_release_exclusivehi */
    case 2665:  /* arm_store_release_exclusivesi */
    case 3783:  /* *p *load_multiple */
    case 4101:  /* *p atomic_loadqi */
    case 4102:  /* *p atomic_loadhi */
    case 4103:  /* *p atomic_loadsi */
    case 4104:  /* *p atomic_storeqi */
    case 4105:  /* *p atomic_storehi */
    case 4106:  /* *p atomic_storesi */
    case 4107:  /* *p arm_atomic_loaddi2_ldrd */
    case 4108:  /* *p arm_load_exclusiveqi */
    case 4109:  /* *p arm_load_exclusivehi */
    case 4110:  /* *p arm_load_acquire_exclusiveqi */
    case 4111:  /* *p arm_load_acquire_exclusivehi */
    case 4112:  /* *p arm_load_exclusivesi */
    case 4113:  /* *p arm_load_acquire_exclusivesi */
    case 4114:  /* *p arm_load_exclusivedi */
    case 4115:  /* *p arm_load_acquire_exclusivedi */
    case 4116:  /* *p arm_store_exclusiveqi */
    case 4117:  /* *p arm_store_exclusivehi */
    case 4118:  /* *p arm_store_exclusivesi */
    case 4119:  /* *p arm_store_exclusivedi */
    case 4120:  /* *p arm_store_release_exclusivedi */
    case 4121:  /* *p arm_store_release_exclusiveqi */
    case 4122:  /* *p arm_store_release_exclusivehi */
    case 4123:  /* *p arm_store_release_exclusivesi */
      return TYPE_UNTYPED;

    case 61:  /* *umulsidi3_nov6 */
    case 62:  /* *umulsidi3_v6 */
    case 67:  /* *umulsi3_highpart_nov6 */
    case 68:  /* *umulsi3_highpart_v6 */
    case 3608:  /* *p *umulsidi3_nov6 */
    case 3609:  /* *p *umulsidi3_v6 */
    case 3614:  /* *p *umulsi3_highpart_nov6 */
    case 3615:  /* *p *umulsi3_highpart_v6 */
      return TYPE_UMULL;

    case 63:  /* *umulsidi3adddi */
    case 64:  /* *umulsidi3adddi_v6 */
    case 3610:  /* *p *umulsidi3adddi */
    case 3611:  /* *p *umulsidi3adddi_v6 */
      return TYPE_UMLAL;

    case 146:  /* udivsi3 */
    case 3666:  /* *p udivsi3 */
      return TYPE_UDIV;

    case 237:  /* trap */
      return TYPE_TRAP;

    case 303:  /* *push_multi */
    case 349:  /* *stm4_ */
    case 350:  /* *stm4_ia_update */
    case 351:  /* *thumb_stm4_ia_update */
    case 354:  /* *stm4_ib */
    case 355:  /* *stm4_ib_update */
    case 358:  /* *stm4_da */
    case 359:  /* *stm4_da_update */
    case 362:  /* *stm4_db */
    case 363:  /* *stm4_db_update */
    case 3737:  /* *p *stm4_ */
    case 3738:  /* *p *stm4_ia_update */
    case 3741:  /* *p *stm4_ib */
    case 3742:  /* *p *stm4_ib_update */
    case 3745:  /* *p *stm4_da */
    case 3746:  /* *p *stm4_da_update */
    case 3749:  /* *p *stm4_db */
    case 3750:  /* *p *stm4_db_update */
      return TYPE_STORE4;

    case 368:  /* *stm3_ */
    case 369:  /* *stm3_ia_update */
    case 370:  /* *thumb_stm3_ia_update */
    case 373:  /* *stm3_ib */
    case 374:  /* *stm3_ib_update */
    case 377:  /* *stm3_da */
    case 378:  /* *stm3_da_update */
    case 381:  /* *stm3_db */
    case 382:  /* *stm3_db_update */
    case 814:  /* movmem12b */
    case 3753:  /* *p *stm3_ */
    case 3754:  /* *p *stm3_ia_update */
    case 3757:  /* *p *stm3_ib */
    case 3758:  /* *p *stm3_ib_update */
    case 3761:  /* *p *stm3_da */
    case 3762:  /* *p *stm3_da_update */
    case 3765:  /* *p *stm3_db */
    case 3766:  /* *p *stm3_db_update */
      return TYPE_STORE3;

    case 336:  /* *thumb2_strd */
    case 337:  /* *thumb2_strd_base */
    case 338:  /* *thumb2_strd_base_neg */
    case 387:  /* *stm2_ */
    case 388:  /* *stm2_ia_update */
    case 389:  /* *thumb_stm2_ia_update */
    case 392:  /* *stm2_ib */
    case 393:  /* *stm2_ib_update */
    case 396:  /* *stm2_da */
    case 397:  /* *stm2_da_update */
    case 400:  /* *stm2_db */
    case 401:  /* *stm2_db_update */
    case 815:  /* movmem8b */
    case 858:  /* *thumb2_storewb_pairsi */
    case 3732:  /* *p *thumb2_strd */
    case 3733:  /* *p *thumb2_strd_base */
    case 3734:  /* *p *thumb2_strd_base_neg */
    case 3769:  /* *p *stm2_ */
    case 3770:  /* *p *stm2_ia_update */
    case 3773:  /* *p *stm2_ib */
    case 3774:  /* *p *stm2_ib_update */
    case 3777:  /* *p *stm2_da */
    case 3778:  /* *p *stm2_da_update */
    case 3781:  /* *p *stm2_db */
    case 3782:  /* *p *stm2_db_update */
      return TYPE_STORE2;

    case 120:  /* *arm_umaxsi3 */
    case 121:  /* *arm_uminsi3 */
    case 122:  /* *store_minmaxsi */
    case 141:  /* unaligned_storesi */
    case 142:  /* unaligned_storehi */
    case 231:  /* probe_stack */
    case 3661:  /* *p unaligned_storesi */
    case 3662:  /* *p unaligned_storehi */
    case 3705:  /* *p probe_stack */
      return TYPE_STORE1;

    case 69:  /* mulhisi3 */
    case 70:  /* *mulhisi3tb */
    case 71:  /* *mulhisi3bt */
    case 72:  /* *mulhisi3tt */
    case 3616:  /* *p mulhisi3 */
    case 3617:  /* *p *mulhisi3tb */
    case 3618:  /* *p *mulhisi3bt */
    case 3619:  /* *p *mulhisi3tt */
      return TYPE_SMULXY;

    case 59:  /* *mulsidi3_nov6 */
    case 60:  /* *mulsidi3_v6 */
    case 65:  /* *smulsi3_highpart_nov6 */
    case 66:  /* *smulsi3_highpart_v6 */
    case 3606:  /* *p *mulsidi3_nov6 */
    case 3607:  /* *p *mulsidi3_v6 */
    case 3612:  /* *p *smulsi3_highpart_nov6 */
    case 3613:  /* *p *smulsi3_highpart_v6 */
      return TYPE_SMULL;

    case 73:  /* maddhisi4 */
    case 74:  /* *maddhisi4tb */
    case 75:  /* *maddhisi4tt */
    case 3620:  /* *p maddhisi4 */
    case 3621:  /* *p *maddhisi4tb */
    case 3622:  /* *p *maddhisi4tt */
      return TYPE_SMLAXY;

    case 76:  /* maddhidi4 */
    case 77:  /* *maddhidi4tb */
    case 78:  /* *maddhidi4tt */
    case 3623:  /* *p maddhidi4 */
    case 3624:  /* *p *maddhidi4tb */
    case 3625:  /* *p *maddhidi4tt */
      return TYPE_SMLALXY;

    case 57:  /* *mulsidi3adddi */
    case 58:  /* *mulsidi3adddi_v6 */
    case 3604:  /* *p *mulsidi3adddi */
    case 3605:  /* *p *mulsidi3adddi_v6 */
      return TYPE_SMLAL;

    case 796:  /* *thumb1_rotrsi3 */
      return TYPE_SHIFT_REG;

    case 145:  /* divsi3 */
    case 3665:  /* *p divsi3 */
      return TYPE_SDIV;

    case 328:  /* *arm_rev */
    case 329:  /* *arm_revsh */
    case 330:  /* *arm_rev16 */
    case 331:  /* arm_rev16si2 */
    case 332:  /* arm_rev16si2_alt */
    case 3728:  /* *p *arm_rev */
      return TYPE_REV;

    case 157:  /* *arm_one_cmplsi2 */
    case 158:  /* *notsi_compare0 */
    case 159:  /* *notsi_compare0_scratch */
    case 292:  /* *if_not_arith */
    case 801:  /* *thumb1_one_cmplsi2 */
    case 900:  /* *thumb2_one_cmplsi2_short */
    case 3671:  /* *p *arm_one_cmplsi2 */
    case 4093:  /* *p *thumb2_one_cmplsi2_short */
      return TYPE_MVN_REG;

    case 46:  /* *mulsi3_compare0 */
    case 47:  /* *mulsi3_compare0_v6 */
    case 48:  /* *mulsi_compare0_scratch */
    case 49:  /* *mulsi_compare0_scratch_v6 */
    case 787:  /* *thumb_mulsi3 */
    case 788:  /* *thumb_mulsi3_v6 */
    case 895:  /* *thumb2_mulsi_short */
    case 896:  /* *thumb2_mulsi_short_compare0 */
    case 897:  /* *thumb2_mulsi_short_compare0_scratch */
    case 4092:  /* *p *thumb2_mulsi_short */
      return TYPE_MULS;

    case 44:  /* *arm_mulsi3 */
    case 45:  /* *arm_mulsi3_v6 */
    case 3599:  /* *p *arm_mulsi3 */
    case 3600:  /* *p *arm_mulsi3_v6 */
      return TYPE_MUL;

    case 324:  /* load_tp_hard */
    case 781:  /* set_fpscr */
    case 782:  /* get_fpscr */
    case 3726:  /* *p load_tp_hard */
      return TYPE_MRS;

    case 213:  /* *movsfcc_soft_insn */
    case 236:  /* nop */
    case 843:  /* *thumb1_movpc_insn */
    case 845:  /* thumb_eh_return */
      return TYPE_MOV_REG;

    case 888:  /* *thumb2_movqi_shortim */
    case 889:  /* *thumb2_movhi_shortim */
    case 890:  /* *thumb2_movsi_shortim */
    case 4087:  /* *p *thumb2_movqi_shortim */
    case 4088:  /* *p *thumb2_movhi_shortim */
    case 4089:  /* *p *thumb2_movsi_shortim */
      return TYPE_MOV_IMM;

    case 52:  /* *mulsi3addsi_compare0 */
    case 53:  /* *mulsi3addsi_compare0_v6 */
    case 54:  /* *mulsi3addsi_compare0_scratch */
    case 55:  /* *mulsi3addsi_compare0_scratch_v6 */
      return TYPE_MLAS;

    case 50:  /* *mulsi3addsi */
    case 51:  /* *mulsi3addsi_v6 */
    case 56:  /* *mulsi3subsi */
    case 3601:  /* *p *mulsi3addsi */
    case 3602:  /* *p *mulsi3addsi_v6 */
    case 3603:  /* *p *mulsi3subsi */
      return TYPE_MLA;

    case 100:  /* *andsi_notsi_si_compare0 */
    case 101:  /* *andsi_notsi_si_compare0_scratch */
      return TYPE_LOGICS_SHIFT_REG;

    case 202:  /* *arm_cmpdi_zero */
    case 790:  /* thumb1_bicsi3 */
    case 791:  /* *thumb1_iorsi3_insn */
    case 792:  /* *thumb1_xorsi3_insn */
    case 826:  /* *thumb_cmpdi_zero */
      return TYPE_LOGICS_REG;

    case 85:  /* *zeroextractsi_compare0_scratch */
    case 3627:  /* *p *zeroextractsi_compare0_scratch */
      return TYPE_LOGICS_IMM;

    case 115:  /* *smax_0 */
    case 116:  /* *smax_m1 */
    case 118:  /* *smin_0 */
    case 127:  /* *satsi_smax_shift */
    case 128:  /* *satsi_smin_shift */
    case 3645:  /* *p *smax_0 */
    case 3646:  /* *p *smax_m1 */
    case 3647:  /* *p *smin_0 */
    case 3652:  /* *p *satsi_smin_shift */
    case 3653:  /* *p *satsi_smax_shift */
    case 3654:  /* *p *satsi_smin_shift */
    case 3655:  /* *p *satsi_smax_shift */
      return TYPE_LOGIC_SHIFT_REG;

    case 296:  /* *if_neg_move */
    case 298:  /* *if_move_neg */
      return TYPE_LOGIC_SHIFT_IMM;

    case 96:  /* andsi_notsi_si */
    case 109:  /* *xordi_zesidi_di */
    case 906:  /* *orsi_notsi_si */
    case 3634:  /* *p andsi_notsi_si */
    case 3641:  /* *p *xordi_zesidi_di */
    case 4099:  /* *p *orsi_notsi_si */
      return TYPE_LOGIC_REG;

    case 172:  /* *compareqi_eq0 */
    case 789:  /* *thumb1_andsi3_insn */
    case 3684:  /* *p *compareqi_eq0 */
      return TYPE_LOGIC_IMM;

    case 305:  /* *load_multiple_with_writeback */
    case 306:  /* *pop_multiple_with_writeback_and_return */
    case 307:  /* *pop_multiple_with_return */
    case 309:  /* *vfp_pop_multiple_with_writeback */
    case 345:  /* *ldm4_ */
    case 346:  /* *thumb_ldm4_ia */
    case 347:  /* *ldm4_ia_update */
    case 348:  /* *thumb_ldm4_ia_update */
    case 352:  /* *ldm4_ib */
    case 353:  /* *ldm4_ib_update */
    case 356:  /* *ldm4_da */
    case 357:  /* *ldm4_da_update */
    case 360:  /* *ldm4_db */
    case 361:  /* *ldm4_db_update */
    case 3720:  /* *p *load_multiple_with_writeback */
    case 3721:  /* *p *pop_multiple_with_writeback_and_return */
    case 3722:  /* *p *pop_multiple_with_return */
    case 3735:  /* *p *ldm4_ */
    case 3736:  /* *p *ldm4_ia_update */
    case 3739:  /* *p *ldm4_ib */
    case 3740:  /* *p *ldm4_ib_update */
    case 3743:  /* *p *ldm4_da */
    case 3744:  /* *p *ldm4_da_update */
    case 3747:  /* *p *ldm4_db */
    case 3748:  /* *p *ldm4_db_update */
      return TYPE_LOAD4;

    case 364:  /* *ldm3_ */
    case 365:  /* *thumb_ldm3_ia */
    case 366:  /* *ldm3_ia_update */
    case 367:  /* *thumb_ldm3_ia_update */
    case 371:  /* *ldm3_ib */
    case 372:  /* *ldm3_ib_update */
    case 375:  /* *ldm3_da */
    case 376:  /* *ldm3_da_update */
    case 379:  /* *ldm3_db */
    case 380:  /* *ldm3_db_update */
    case 3751:  /* *p *ldm3_ */
    case 3752:  /* *p *ldm3_ia_update */
    case 3755:  /* *p *ldm3_ib */
    case 3756:  /* *p *ldm3_ib_update */
    case 3759:  /* *p *ldm3_da */
    case 3760:  /* *p *ldm3_da_update */
    case 3763:  /* *p *ldm3_db */
    case 3764:  /* *p *ldm3_db_update */
      return TYPE_LOAD3;

    case 333:  /* *thumb2_ldrd */
    case 334:  /* *thumb2_ldrd_base */
    case 335:  /* *thumb2_ldrd_base_neg */
    case 383:  /* *ldm2_ */
    case 384:  /* *thumb_ldm2_ia */
    case 385:  /* *ldm2_ia_update */
    case 386:  /* *thumb_ldm2_ia_update */
    case 390:  /* *ldm2_ib */
    case 391:  /* *ldm2_ib_update */
    case 394:  /* *ldm2_da */
    case 395:  /* *ldm2_da_update */
    case 398:  /* *ldm2_db */
    case 399:  /* *ldm2_db_update */
    case 3729:  /* *p *thumb2_ldrd */
    case 3730:  /* *p *thumb2_ldrd_base */
    case 3731:  /* *p *thumb2_ldrd_base_neg */
    case 3767:  /* *p *ldm2_ */
    case 3768:  /* *p *ldm2_ia_update */
    case 3771:  /* *p *ldm2_ib */
    case 3772:  /* *p *ldm2_ib_update */
    case 3775:  /* *p *ldm2_da */
    case 3776:  /* *p *ldm2_da_update */
    case 3779:  /* *p *ldm2_db */
    case 3780:  /* *p *ldm2_db_update */
      return TYPE_LOAD2;

    case 138:  /* unaligned_loadsi */
    case 183:  /* pic_load_addr_unified */
    case 184:  /* pic_load_addr_32bit */
    case 185:  /* pic_load_addr_thumb1 */
    case 188:  /* tls_load_dot_plus_eight */
    case 223:  /* *arm_return */
    case 224:  /* *cond_return */
    case 225:  /* *cond_simple_return */
    case 226:  /* *cond_return_inverted */
    case 227:  /* *cond_simple_return_inverted */
    case 235:  /* *load_indirect_jump */
    case 299:  /* *arith_adjacentmem */
    case 308:  /* *ldr_with_return */
    case 321:  /* prefetch */
    case 854:  /* *thumb2_pop_single */
    case 3658:  /* *p unaligned_loadsi */
    case 3694:  /* *p tls_load_dot_plus_eight */
    case 3703:  /* *p *arm_return */
    case 3707:  /* *p *load_indirect_jump */
    case 3719:  /* *p *arith_adjacentmem */
    case 3723:  /* *p *ldr_with_return */
    case 4079:  /* *p *thumb2_pop_single */
      return TYPE_LOAD1;

    case 139:  /* unaligned_loadhis */
    case 140:  /* unaligned_loadhiu */
    case 176:  /* *arm_extendqihi_insn */
    case 3659:  /* *p unaligned_loadhis */
    case 3660:  /* *p unaligned_loadhiu */
    case 3687:  /* *p *arm_extendqihi_insn */
      return TYPE_LOAD_BYTE;

    case 715:  /* *sqrtdf2_vfp */
    case 4060:  /* *p *sqrtdf2_vfp */
      return TYPE_FSQRTD;

    case 712:  /* neon_vsqrthf */
    case 713:  /* neon_vrsqrtshf */
    case 714:  /* *sqrtsf2_vfp */
    case 4059:  /* *p *sqrtsf2_vfp */
      return TYPE_FSQRTS;

    case 667:  /* mulhf3 */
    case 668:  /* *mulsf3_vfp */
    case 670:  /* *mulsf3neghf_vfp */
    case 671:  /* *negmulhf3_vfp */
    case 672:  /* *mulsf3negsf_vfp */
    case 673:  /* *negmulsf3_vfp */
    case 4025:  /* *p *mulsf3_vfp */
    case 4027:  /* *p *mulsf3negsf_vfp */
    case 4028:  /* *p *negmulsf3_vfp */
      return TYPE_FMULS;

    case 669:  /* *muldf3_vfp */
    case 674:  /* *muldf3negdf_vfp */
    case 675:  /* *negmuldf3_vfp */
    case 4026:  /* *p *muldf3_vfp */
    case 4029:  /* *p *muldf3negdf_vfp */
    case 4030:  /* *p *negmuldf3_vfp */
      return TYPE_FMULD;

    case 676:  /* *mulsf3addhf_vfp */
    case 677:  /* *mulsf3addsf_vfp */
    case 679:  /* *mulhf3subhf_vfp */
    case 680:  /* *mulsf3subsf_vfp */
    case 682:  /* *mulhf3neghfaddhf_vfp */
    case 683:  /* *mulsf3negsfaddsf_vfp */
    case 685:  /* *mulhf3neghfsubhf_vfp */
    case 686:  /* *mulsf3negsfsubsf_vfp */
    case 4031:  /* *p *mulsf3addsf_vfp */
    case 4033:  /* *p *mulsf3subsf_vfp */
    case 4035:  /* *p *mulsf3negsfaddsf_vfp */
    case 4037:  /* *p *mulsf3negsfsubsf_vfp */
      return TYPE_FMACS;

    case 678:  /* *muldf3adddf_vfp */
    case 681:  /* *muldf3subdf_vfp */
    case 684:  /* *fmuldf3negdfadddf_vfp */
    case 687:  /* *muldf3negdfsubdf_vfp */
    case 4032:  /* *p *muldf3adddf_vfp */
    case 4034:  /* *p *muldf3subdf_vfp */
    case 4036:  /* *p *fmuldf3negdfadddf_vfp */
    case 4038:  /* *p *muldf3negdfsubdf_vfp */
      return TYPE_FMACD;

    case 688:  /* fmahf4 */
    case 689:  /* fmasf4 */
    case 691:  /* fmsubhf4_fp16 */
    case 692:  /* *fmsubsf4 */
    case 694:  /* *fnmsubhf4 */
    case 695:  /* *fnmsubsf4 */
    case 697:  /* *fnmaddhf4 */
    case 698:  /* *fnmaddsf4 */
    case 4039:  /* *p fmasf4 */
    case 4041:  /* *p *fmsubsf4 */
    case 4043:  /* *p *fnmsubsf4 */
    case 4045:  /* *p *fnmaddsf4 */
      return TYPE_FFMAS;

    case 690:  /* fmadf4 */
    case 693:  /* *fmsubdf4 */
    case 696:  /* *fnmsubdf4 */
    case 699:  /* *fnmadddf4 */
    case 4040:  /* *p fmadf4 */
    case 4042:  /* *p *fmsubdf4 */
    case 4044:  /* *p *fnmsubdf4 */
    case 4046:  /* *p *fnmadddf4 */
      return TYPE_FFMAD;

    case 645:  /* *abssf2_vfp */
    case 647:  /* *negsf2_vfp */
    case 649:  /* abshf2 */
    case 650:  /* neghf2 */
    case 4015:  /* *p *abssf2_vfp */
    case 4017:  /* *p *negsf2_vfp */
      return TYPE_FFARITHS;

    case 646:  /* *absdf2_vfp */
    case 648:  /* *negdf2_vfp */
    case 4016:  /* *p *absdf2_vfp */
    case 4018:  /* *p *negdf2_vfp */
      return TYPE_FFARITHD;

    case 664:  /* divhf3 */
    case 665:  /* *divsf3_vfp */
    case 4023:  /* *p *divsf3_vfp */
      return TYPE_FDIVS;

    case 666:  /* *divdf3_vfp */
    case 4024:  /* *p *divdf3_vfp */
      return TYPE_FDIVD;

    case 209:  /* *cmovsf */
    case 210:  /* *cmovdf */
    case 211:  /* *cmovhf */
      return TYPE_FCSEL;

    case 721:  /* *cmpsf_vfp */
    case 722:  /* *cmpsf_trap_vfp */
    case 4061:  /* *p *cmpsf_vfp */
    case 4062:  /* *p *cmpsf_trap_vfp */
      return TYPE_FCMPS;

    case 723:  /* *cmpdf_vfp */
    case 724:  /* *cmpdf_trap_vfp */
    case 4063:  /* *p *cmpdf_vfp */
    case 4064:  /* *p *cmpdf_trap_vfp */
      return TYPE_FCMPD;

    case 658:  /* addhf3 */
    case 659:  /* *addsf3_vfp */
    case 661:  /* subhf3 */
    case 662:  /* *subsf3_vfp */
    case 4019:  /* *p *addsf3_vfp */
    case 4021:  /* *p *subsf3_vfp */
      return TYPE_FADDS;

    case 660:  /* *adddf3_vfp */
    case 663:  /* *subdf3_vfp */
    case 4020:  /* *p *adddf3_vfp */
    case 4022:  /* *p *subdf3_vfp */
      return TYPE_FADDD;

    case 746:  /* *push_multi_vfp */
      return TYPE_F_STORED;

    case 747:  /* btruncsf2 */
    case 748:  /* ceilsf2 */
    case 749:  /* floorsf2 */
    case 750:  /* nearbyintsf2 */
    case 751:  /* rintsf2 */
    case 752:  /* roundsf2 */
    case 4070:  /* *p btruncsf2 */
    case 4071:  /* *p nearbyintsf2 */
    case 4072:  /* *p rintsf2 */
      return TYPE_F_RINTS;

    case 753:  /* btruncdf2 */
    case 754:  /* ceildf2 */
    case 755:  /* floordf2 */
    case 756:  /* nearbyintdf2 */
    case 757:  /* rintdf2 */
    case 758:  /* rounddf2 */
    case 4073:  /* *p btruncdf2 */
    case 4074:  /* *p nearbyintdf2 */
    case 4075:  /* *p rintdf2 */
      return TYPE_F_RINTD;

    case 771:  /* smaxsf3 */
    case 773:  /* sminsf3 */
    case 775:  /* neon_vmaxnmhf */
    case 776:  /* neon_vminnmhf */
    case 777:  /* fmaxsf3 */
    case 778:  /* fminsf3 */
      return TYPE_F_MINMAXS;

    case 772:  /* smaxdf3 */
    case 774:  /* smindf3 */
    case 779:  /* fmaxdf3 */
    case 780:  /* fmindf3 */
      return TYPE_F_MINMAXD;

    case 716:  /* *movcc_vfp */
      return TYPE_F_FLAG;

    case 708:  /* *floatsisf2_vfp */
    case 709:  /* *floatsidf2_vfp */
    case 710:  /* floatunssisf2 */
    case 711:  /* floatunssidf2 */
    case 725:  /* *combine_vcvt_f32_u32 */
    case 726:  /* *combine_vcvt_f32_s32 */
    case 727:  /* *combine_vcvt_f64_u32 */
    case 728:  /* *combine_vcvt_f64_s32 */
    case 730:  /* neon_vcvthshf */
    case 731:  /* neon_vcvthuhf */
    case 734:  /* neon_vcvths_nhf_unspec */
    case 735:  /* neon_vcvthu_nhf_unspec */
    case 4055:  /* *p *floatsisf2_vfp */
    case 4056:  /* *p *floatsidf2_vfp */
    case 4057:  /* *p floatunssisf2 */
    case 4058:  /* *p floatunssidf2 */
    case 4065:  /* *p *combine_vcvt_f32_u32 */
    case 4066:  /* *p *combine_vcvt_f32_s32 */
    case 4067:  /* *p *combine_vcvt_f64_u32 */
    case 4068:  /* *p *combine_vcvt_f64_s32 */
      return TYPE_F_CVTI2F;

    case 704:  /* *truncsisf2_vfp */
    case 705:  /* *truncsidf2_vfp */
    case 706:  /* fixuns_truncsfsi2 */
    case 707:  /* fixuns_truncdfsi2 */
    case 729:  /* *combine_vcvtf2i */
    case 732:  /* neon_vcvthssi */
    case 733:  /* neon_vcvthusi */
    case 736:  /* neon_vcvths_nsi_unspec */
    case 737:  /* neon_vcvthu_nsi_unspec */
    case 738:  /* neon_vcvtahssi */
    case 739:  /* neon_vcvtahusi */
    case 740:  /* neon_vcvtmhssi */
    case 741:  /* neon_vcvtmhusi */
    case 742:  /* neon_vcvtnhssi */
    case 743:  /* neon_vcvtnhusi */
    case 744:  /* neon_vcvtphssi */
    case 745:  /* neon_vcvtphusi */
    case 759:  /* lceilsfsi2 */
    case 760:  /* lfloorsfsi2 */
    case 761:  /* lroundsfsi2 */
    case 762:  /* lceilusfsi2 */
    case 763:  /* lfloorusfsi2 */
    case 764:  /* lroundusfsi2 */
    case 765:  /* lceildfsi2 */
    case 766:  /* lfloordfsi2 */
    case 767:  /* lrounddfsi2 */
    case 768:  /* lceiludfsi2 */
    case 769:  /* lfloorudfsi2 */
    case 770:  /* lroundudfsi2 */
    case 4051:  /* *p *truncsisf2_vfp */
    case 4052:  /* *p *truncsidf2_vfp */
    case 4053:  /* *p fixuns_truncsfsi2 */
    case 4054:  /* *p fixuns_truncdfsi2 */
    case 4069:  /* *p *combine_vcvtf2i */
      return TYPE_F_CVTF2I;

    case 700:  /* *extendsfdf2_vfp */
    case 701:  /* *truncdfsf2_vfp */
    case 702:  /* extendhfsf2 */
    case 703:  /* truncsfhf2 */
    case 4047:  /* *p *extendsfdf2_vfp */
    case 4048:  /* *p *truncdfsf2_vfp */
    case 4049:  /* *p extendhfsf2 */
    case 4050:  /* *p truncsfhf2 */
      return TYPE_F_CVT;

    case 339:  /* crc32b */
    case 340:  /* crc32h */
    case 341:  /* crc32w */
    case 342:  /* crc32cb */
    case 343:  /* crc32ch */
    case 344:  /* crc32cw */
      return TYPE_CRC;

    case 203:  /* *deleted_compare */
    case 310:  /* align_4 */
    case 311:  /* align_8 */
    case 312:  /* consttable_end */
    case 313:  /* consttable_1 */
    case 314:  /* consttable_2 */
    case 315:  /* consttable_4 */
    case 316:  /* consttable_8 */
    case 317:  /* consttable_16 */
    case 322:  /* force_register_use */
    case 844:  /* *thumb1_tablejump */
      return TYPE_NO_INSN;

    case 318:  /* clzsi2 */
    case 319:  /* rbitsi2 */
    case 3724:  /* *p clzsi2 */
    case 3725:  /* *p rbitsi2 */
      return TYPE_CLZ;

    case 215:  /* *call_reg_armv5 */
    case 216:  /* *call_reg_arm */
    case 217:  /* *call_value_reg_armv5 */
    case 218:  /* *call_value_reg_arm */
    case 219:  /* *call_symbol */
    case 220:  /* *call_value_symbol */
    case 221:  /* *sibcall_insn */
    case 222:  /* *sibcall_value_insn */
    case 833:  /* *call_reg_thumb1_v5 */
    case 834:  /* *call_reg_thumb1 */
    case 835:  /* *call_value_reg_thumb1_v5 */
    case 836:  /* *call_value_reg_thumb1 */
    case 837:  /* *call_insn */
    case 838:  /* *call_value_insn */
    case 867:  /* *call_reg_thumb2 */
    case 868:  /* *call_value_reg_thumb2 */
      return TYPE_CALL;

    case 204:  /* arm_cond_branch */
    case 205:  /* *arm_cond_branch_reversed */
    case 214:  /* *arm_jump */
    case 228:  /* *arm_simple_return */
    case 234:  /* *arm_indirect_jump */
    case 325:  /* load_tp_soft */
    case 326:  /* tlscall */
    case 832:  /* *thumb_jump */
    case 840:  /* *thumb1_indirect_jump */
    case 869:  /* *thumb2_indirect_jump */
    case 884:  /* *thumb2_return */
    case 3702:  /* *p *arm_jump */
    case 3704:  /* *p *arm_simple_return */
    case 3706:  /* *p *arm_indirect_jump */
      return TYPE_BRANCH;

    case 230:  /* blockage */
    case 304:  /* stack_tie */
    case 842:  /* *epilogue_insns */
      return TYPE_BLOCK;

    case 90:  /* insv_zero */
    case 91:  /* insv_t2 */
    case 143:  /* *extv_reg */
    case 144:  /* extzv_t2 */
    case 3628:  /* *p insv_zero */
    case 3629:  /* *p insv_t2 */
    case 3663:  /* *p *extv_reg */
    case 3664:  /* *p extzv_t2 */
      return TYPE_BFM;

    case 859:  /* *thumb2_cmpsi_neg_shiftsi */
      return TYPE_ALUS_SHIFT_IMM;

    case 6:  /* addsi3_compareV */
    case 10:  /* addsi3_compareC */
    case 13:  /* *compare_negsi_si */
    case 14:  /* cmpsi2_addneg */
    case 28:  /* subsi3_compare1 */
    case 786:  /* thumb1_subsi3_insn */
    case 3586:  /* *p *compare_negsi_si */
      return TYPE_ALUS_SREG;

    case 125:  /* *satsi_smax */
    case 126:  /* *satsi_smin */
    case 149:  /* *negsi2_carryin_compare */
    case 189:  /* *movsi_compare0 */
    case 3648:  /* *p *satsi_smin */
    case 3649:  /* *p *satsi_smax */
    case 3650:  /* *p *satsi_smin */
    case 3651:  /* *p *satsi_smax */
      return TYPE_ALUS_IMM;

    case 2676:  /* addv4qq3 */
    case 2677:  /* addv2hq3 */
    case 2678:  /* addv2ha3 */
    case 2679:  /* usaddv4uqq3 */
    case 2680:  /* usaddv2uhq3 */
    case 2681:  /* usadduqq3 */
    case 2682:  /* usadduhq3 */
    case 2683:  /* usaddv2uha3 */
    case 2684:  /* usadduha3 */
    case 2685:  /* ssaddv4qq3 */
    case 2686:  /* ssaddv2hq3 */
    case 2687:  /* ssaddqq3 */
    case 2688:  /* ssaddhq3 */
    case 2689:  /* ssaddv2ha3 */
    case 2690:  /* ssaddha3 */
    case 2691:  /* ssaddsq3 */
    case 2692:  /* ssaddsa3 */
    case 2703:  /* subv4qq3 */
    case 2704:  /* subv2hq3 */
    case 2705:  /* subv2ha3 */
    case 2706:  /* ussubv4uqq3 */
    case 2707:  /* ussubv2uhq3 */
    case 2708:  /* ussubuqq3 */
    case 2709:  /* ussubuhq3 */
    case 2710:  /* ussubv2uha3 */
    case 2711:  /* ussubuha3 */
    case 2712:  /* sssubv4qq3 */
    case 2713:  /* sssubv2hq3 */
    case 2714:  /* sssubqq3 */
    case 2715:  /* sssubhq3 */
    case 2716:  /* sssubv2ha3 */
    case 2717:  /* sssubha3 */
    case 2718:  /* sssubsq3 */
    case 2719:  /* sssubsa3 */
    case 4134:  /* *p addv4qq3 */
    case 4135:  /* *p addv2hq3 */
    case 4136:  /* *p addv2ha3 */
    case 4137:  /* *p usaddv4uqq3 */
    case 4138:  /* *p usaddv2uhq3 */
    case 4139:  /* *p usadduqq3 */
    case 4140:  /* *p usadduhq3 */
    case 4141:  /* *p usaddv2uha3 */
    case 4142:  /* *p usadduha3 */
    case 4143:  /* *p ssaddv4qq3 */
    case 4144:  /* *p ssaddv2hq3 */
    case 4145:  /* *p ssaddqq3 */
    case 4146:  /* *p ssaddhq3 */
    case 4147:  /* *p ssaddv2ha3 */
    case 4148:  /* *p ssaddha3 */
    case 4149:  /* *p ssaddsq3 */
    case 4150:  /* *p ssaddsa3 */
    case 4161:  /* *p subv4qq3 */
    case 4162:  /* *p subv2hq3 */
    case 4163:  /* *p subv2ha3 */
    case 4164:  /* *p ussubv4uqq3 */
    case 4165:  /* *p ussubv2uhq3 */
    case 4166:  /* *p ussubuqq3 */
    case 4167:  /* *p ussubuhq3 */
    case 4168:  /* *p ussubv2uha3 */
    case 4169:  /* *p ussubuha3 */
    case 4170:  /* *p sssubv4qq3 */
    case 4171:  /* *p sssubv2hq3 */
    case 4172:  /* *p sssubqq3 */
    case 4173:  /* *p sssubhq3 */
    case 4174:  /* *p sssubv2ha3 */
    case 4175:  /* *p sssubha3 */
    case 4176:  /* *p sssubsq3 */
    case 4177:  /* *p sssubsa3 */
      return TYPE_ALU_DSP_REG;

    case 168:  /* *arm_zero_extendhisi2addsi */
    case 171:  /* *arm_zero_extendqisi2addsi */
    case 175:  /* *arm_extendhisi2addsi */
    case 179:  /* *arm_extendqisi2addsi */
    case 3680:  /* *p *arm_zero_extendhisi2addsi */
    case 3683:  /* *p *arm_zero_extendqisi2addsi */
    case 3690:  /* *p *arm_extendqisi2addsi */
      return TYPE_ALU_SHIFT_REG;

    case 238:  /* *add_multsi */
    case 239:  /* *rsb_multsi */
    case 240:  /* *orr_multsi */
    case 241:  /* *eor_multsi */
    case 242:  /* *and_multsi */
    case 846:  /* *thumb_andsi_not_shiftsi_si */
    case 907:  /* *orsi_not_shiftsi_si */
    case 2722:  /* arm_ssatsihi_shift */
    case 3708:  /* *p *add_multsi */
    case 3709:  /* *p *rsb_multsi */
    case 3710:  /* *p *orr_multsi */
    case 3711:  /* *p *eor_multsi */
    case 3712:  /* *p *and_multsi */
    case 4076:  /* *p *thumb_andsi_not_shiftsi_si */
    case 4100:  /* *p *orsi_not_shiftsi_si */
    case 4178:  /* *p arm_ssatsihi_shift */
      return TYPE_ALU_SHIFT_IMM;

    case 150:  /* *arm_negsi2 */
    case 181:  /* *arm_movt */
    case 186:  /* pic_add_dot_plus_four */
    case 187:  /* pic_add_dot_plus_eight */
    case 327:  /* *arm_movtas_ze */
    case 886:  /* *thumb2_alusi3_short */
    case 892:  /* *thumb2_subsi_short */
    case 901:  /* *thumb2_negsi2_short */
    case 2666:  /* addqq3 */
    case 2667:  /* addhq3 */
    case 2668:  /* addsq3 */
    case 2669:  /* adduqq3 */
    case 2670:  /* adduhq3 */
    case 2671:  /* addusq3 */
    case 2672:  /* addha3 */
    case 2673:  /* addsa3 */
    case 2674:  /* adduha3 */
    case 2675:  /* addusa3 */
    case 2693:  /* subqq3 */
    case 2694:  /* subhq3 */
    case 2695:  /* subsq3 */
    case 2696:  /* subuqq3 */
    case 2697:  /* subuhq3 */
    case 2698:  /* subusq3 */
    case 2699:  /* subha3 */
    case 2700:  /* subsa3 */
    case 2701:  /* subuha3 */
    case 2702:  /* subusa3 */
    case 3667:  /* *p *arm_negsi2 */
    case 3691:  /* *p *arm_movt */
    case 3693:  /* *p pic_add_dot_plus_eight */
    case 3727:  /* *p *arm_movtas_ze */
    case 4085:  /* *p *thumb2_alusi3_short */
    case 4091:  /* *p *thumb2_subsi_short */
    case 4094:  /* *p *thumb2_negsi2_short */
    case 4124:  /* *p addqq3 */
    case 4125:  /* *p addhq3 */
    case 4126:  /* *p addsq3 */
    case 4127:  /* *p adduqq3 */
    case 4128:  /* *p adduhq3 */
    case 4129:  /* *p addusq3 */
    case 4130:  /* *p addha3 */
    case 4131:  /* *p addsa3 */
    case 4132:  /* *p adduha3 */
    case 4133:  /* *p addusa3 */
    case 4151:  /* *p subqq3 */
    case 4152:  /* *p subhq3 */
    case 4153:  /* *p subsq3 */
    case 4154:  /* *p subuqq3 */
    case 4155:  /* *p subuhq3 */
    case 4156:  /* *p subusq3 */
    case 4157:  /* *p subha3 */
    case 4158:  /* *p subsa3 */
    case 4159:  /* *p subuha3 */
    case 4160:  /* *p subusa3 */
      return TYPE_ALU_SREG;

    case 798:  /* *thumb1_negsi2 */
    case 2723:  /* arm_usatsihi */
    case 4179:  /* *p arm_usatsihi */
      return TYPE_ALU_IMM;

    case 7:  /* *addsi3_compareV_upper */
    case 9:  /* *addsi3_compareC_upper */
    case 25:  /* *addsi3_carryin_clobercc_ltu */
    case 26:  /* *addsi3_carryin_clobercc_geu */
    case 31:  /* *subsi3_carryin_compare */
      return TYPE_ADCS_REG;

    case 32:  /* *subsi3_carryin_compare_const */
      return TYPE_ADCS_IMM;

    case 30:  /* *subsi3_carryin_const */
      return TYPE_ADC_IMM;

    default:
      return TYPE_MULTIPLE;

    }
}

enum attr_use_literal_pool
get_attr_use_literal_pool (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  enum attr_type cached_type ATTRIBUTE_UNUSED;

  switch (recog_memoized (insn))
    {
    case 4014:  /* *p *movdf_vfp */
    case 640:  /* *thumb2_movdf_vfp */
    case 639:  /* *movdf_vfp */
      extract_constrain_insn_cached (insn);
      if ((which_alternative == 4) && (
#line 210 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(CONSTANT_P (operands[1]))))
        {
	  return USE_LITERAL_POOL_YES;
        }
      else
        {
	  return USE_LITERAL_POOL_NO;
        }

    case 4013:  /* *p *thumb2_movsf_vfp */
    case 4012:  /* *p *movsf_vfp */
    case 638:  /* *thumb2_movsf_vfp */
    case 637:  /* *movsf_vfp */
      extract_constrain_insn_cached (insn);
      if ((which_alternative == 3) && (
#line 210 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(CONSTANT_P (operands[1]))))
        {
	  return USE_LITERAL_POOL_YES;
        }
      else
        {
	  return USE_LITERAL_POOL_NO;
        }

    case 4010:  /* *p *movdi_vfp_cortexa8 */
    case 633:  /* *movdi_vfp_cortexa8 */
    case 632:  /* *movdi_vfp */
      extract_constrain_insn_cached (insn);
      if ((which_alternative == 10) && (
#line 210 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(CONSTANT_P (operands[1]))))
        {
	  return USE_LITERAL_POOL_YES;
        }
      else
        {
	  return USE_LITERAL_POOL_NO;
        }

    case 4009:  /* *p *thumb2_movsi_vfp */
    case 631:  /* *thumb2_movsi_vfp */
      extract_constrain_insn_cached (insn);
      if ((which_alternative == 12) && (
#line 210 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(CONSTANT_P (operands[1]))))
        {
	  return USE_LITERAL_POOL_YES;
        }
      else
        {
	  return USE_LITERAL_POOL_NO;
        }

    case 4008:  /* *p *arm_movsi_vfp */
    case 630:  /* *arm_movsi_vfp */
      extract_constrain_insn_cached (insn);
      if ((which_alternative == 9) && (
#line 210 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(CONSTANT_P (operands[1]))))
        {
	  return USE_LITERAL_POOL_YES;
        }
      else
        {
	  return USE_LITERAL_POOL_NO;
        }

    case 411:  /* *iwmmxt_movsi_insn */
    case 410:  /* *iwmmxt_arm_movdi */
      extract_constrain_insn_cached (insn);
      if ((which_alternative == 13) && (
#line 210 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(CONSTANT_P (operands[1]))))
        {
	  return USE_LITERAL_POOL_YES;
        }
      else
        {
	  return USE_LITERAL_POOL_NO;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
      extract_constrain_insn_cached (insn);
      if ((((cached_type = get_attr_type (insn)) == TYPE_F_LOADS) || (cached_type == TYPE_F_LOADD)) && (
#line 210 "../../../../../../../work-shared/gcc-linaro-6.2-r2016.11/git/gcc/config/arm/arm.md"
(CONSTANT_P (operands[1]))))
        {
	  return USE_LITERAL_POOL_YES;
        }
      else
        {
	  return USE_LITERAL_POOL_NO;
        }

    default:
      return USE_LITERAL_POOL_NO;

    }
}

enum attr_vqh_mnem
get_attr_vqh_mnem (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  switch (recog_memoized (insn))
    {
    case 1277:  /* quad_halves_smaxv4si */
    case 1279:  /* quad_halves_umaxv4si */
    case 1282:  /* quad_halves_smaxv4sf */
    case 1285:  /* quad_halves_smaxv8hi */
    case 1287:  /* quad_halves_umaxv8hi */
    case 1290:  /* quad_halves_smaxv16qi */
    case 1292:  /* quad_halves_umaxv16qi */
      return VQH_MNEM_VMAX;

    case 1276:  /* quad_halves_sminv4si */
    case 1278:  /* quad_halves_uminv4si */
    case 1281:  /* quad_halves_sminv4sf */
    case 1284:  /* quad_halves_sminv8hi */
    case 1286:  /* quad_halves_uminv8hi */
    case 1289:  /* quad_halves_sminv16qi */
    case 1291:  /* quad_halves_uminv16qi */
      return VQH_MNEM_VMIN;

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
    default:
      return VQH_MNEM_VADD;

    }
}

enum attr_wmmxt_transfer_c3
get_attr_wmmxt_transfer_c3 (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  enum attr_type cached_type ATTRIBUTE_UNUSED;

  switch (recog_memoized (insn))
    {
    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
      if (((cached_type = get_attr_type (insn)) == TYPE_WMMX_TMIA) || ((cached_type == TYPE_WMMX_TMIAPH) || (cached_type == TYPE_WMMX_TMIAXY)))
        {
	  return WMMXT_TRANSFER_C3_YES;
        }
      else
        {
	  return WMMXT_TRANSFER_C3_NO;
        }

    case 3921:  /* *p iwmmxt_tmiatt */
    case 3920:  /* *p iwmmxt_tmiabt */
    case 3919:  /* *p iwmmxt_tmiatb */
    case 3918:  /* *p iwmmxt_tmiabb */
    case 3917:  /* *p iwmmxt_tmiaph */
    case 3916:  /* *p iwmmxt_tmia */
    case 543:  /* iwmmxt_tmiatt */
    case 542:  /* iwmmxt_tmiabt */
    case 541:  /* iwmmxt_tmiatb */
    case 540:  /* iwmmxt_tmiabb */
    case 539:  /* iwmmxt_tmiaph */
    case 538:  /* iwmmxt_tmia */
      return WMMXT_TRANSFER_C3_YES;

    default:
      return WMMXT_TRANSFER_C3_NO;

    }
}

enum attr_wmmxt_transfer_c2
get_attr_wmmxt_transfer_c2 (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  enum attr_type cached_type ATTRIBUTE_UNUSED;

  switch (recog_memoized (insn))
    {
    case 3793:  /* *p movv8qi_internal */
    case 3792:  /* *p movv4hi_internal */
    case 3791:  /* *p movv2si_internal */
    case 415:  /* movv8qi_internal */
    case 414:  /* movv4hi_internal */
    case 413:  /* movv2si_internal */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 3)
        {
	  return WMMXT_TRANSFER_C2_YES;
        }
      else
        {
	  return WMMXT_TRANSFER_C2_NO;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
      if (((cached_type = get_attr_type (insn)) == TYPE_WMMX_TEXTRM) || ((cached_type == TYPE_WMMX_TMOVMSK) || ((cached_type == TYPE_WMMX_TMRC) || (cached_type == TYPE_WMMX_TMRRC))))
        {
	  return WMMXT_TRANSFER_C2_YES;
        }
      else
        {
	  return WMMXT_TRANSFER_C2_NO;
        }

    case 3924:  /* *p iwmmxt_tmovmskw */
    case 3923:  /* *p iwmmxt_tmovmskh */
    case 3922:  /* *p iwmmxt_tmovmskb */
    case 3843:  /* *p iwmmxt_textrmw */
    case 3842:  /* *p iwmmxt_textrmsh */
    case 3841:  /* *p iwmmxt_textrmuh */
    case 3840:  /* *p iwmmxt_textrmsb */
    case 3839:  /* *p iwmmxt_textrmub */
    case 546:  /* iwmmxt_tmovmskw */
    case 545:  /* iwmmxt_tmovmskh */
    case 544:  /* iwmmxt_tmovmskb */
    case 465:  /* iwmmxt_textrmw */
    case 464:  /* iwmmxt_textrmsh */
    case 463:  /* iwmmxt_textrmuh */
    case 462:  /* iwmmxt_textrmsb */
    case 461:  /* iwmmxt_textrmub */
      return WMMXT_TRANSFER_C2_YES;

    default:
      return WMMXT_TRANSFER_C2_NO;

    }
}

enum attr_wmmxt_transfer_c1
get_attr_wmmxt_transfer_c1 (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  enum attr_type cached_type ATTRIBUTE_UNUSED;

  switch (recog_memoized (insn))
    {
    case 3793:  /* *p movv8qi_internal */
    case 3792:  /* *p movv4hi_internal */
    case 3791:  /* *p movv2si_internal */
    case 415:  /* movv8qi_internal */
    case 414:  /* movv4hi_internal */
    case 413:  /* movv2si_internal */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 4)
        {
	  return WMMXT_TRANSFER_C1_YES;
        }
      else
        {
	  return WMMXT_TRANSFER_C1_NO;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
      if (((cached_type = get_attr_type (insn)) == TYPE_WMMX_TBCST) || ((cached_type == TYPE_WMMX_TINSR) || ((cached_type == TYPE_WMMX_TMCR) || (cached_type == TYPE_WMMX_TMCRR))))
        {
	  return WMMXT_TRANSFER_C1_YES;
        }
      else
        {
	  return WMMXT_TRANSFER_C1_NO;
        }

    case 3838:  /* *p iwmmxt_tinsrw */
    case 3837:  /* *p iwmmxt_tinsrh */
    case 3836:  /* *p iwmmxt_tinsrb */
    case 3786:  /* *p tbcstv2si */
    case 3785:  /* *p tbcstv4hi */
    case 3784:  /* *p tbcstv8qi */
    case 460:  /* iwmmxt_tinsrw */
    case 459:  /* iwmmxt_tinsrh */
    case 458:  /* iwmmxt_tinsrb */
    case 405:  /* tbcstv2si */
    case 404:  /* tbcstv4hi */
    case 403:  /* tbcstv8qi */
      return WMMXT_TRANSFER_C1_YES;

    default:
      return WMMXT_TRANSFER_C1_NO;

    }
}

enum attr_wmmxt_alu_c3
get_attr_wmmxt_alu_c3 (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  switch (recog_memoized (insn))
    {
    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
      if (get_attr_type (insn) == TYPE_WMMX_WSAD)
        {
	  return WMMXT_ALU_C3_YES;
        }
      else
        {
	  return WMMXT_ALU_C3_NO;
        }

    case 3937:  /* *p iwmmxt_wsadhz */
    case 3936:  /* *p iwmmxt_wsadbz */
    case 3935:  /* *p iwmmxt_wsadh */
    case 3934:  /* *p iwmmxt_wsadb */
    case 559:  /* iwmmxt_wsadhz */
    case 558:  /* iwmmxt_wsadbz */
    case 557:  /* iwmmxt_wsadh */
    case 556:  /* iwmmxt_wsadb */
      return WMMXT_ALU_C3_YES;

    default:
      return WMMXT_ALU_C3_NO;

    }
}

enum attr_wmmxt_alu_c2
get_attr_wmmxt_alu_c2 (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  enum attr_type cached_type ATTRIBUTE_UNUSED;

  switch (recog_memoized (insn))
    {
    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
      if (((cached_type = get_attr_type (insn)) == TYPE_WMMX_WACC) || ((cached_type == TYPE_WMMX_WADD) || ((cached_type == TYPE_WMMX_WADDSUBHX) || ((cached_type == TYPE_WMMX_WAVG2) || ((cached_type == TYPE_WMMX_WAVG4) || ((cached_type == TYPE_WMMX_WCMPEQ) || ((cached_type == TYPE_WMMX_WCMPGT) || ((cached_type == TYPE_WMMX_WMAX) || ((cached_type == TYPE_WMMX_WMIN) || ((cached_type == TYPE_WMMX_WSUB) || ((cached_type == TYPE_WMMX_WADDBHUS) || (cached_type == TYPE_WMMX_WSUBADDHX))))))))))))
        {
	  return WMMXT_ALU_C2_YES;
        }
      else
        {
	  return WMMXT_ALU_C2_NO;
        }

    case 3966:  /* *p iwmmxt_waddbhusl */
    case 3965:  /* *p iwmmxt_waddbhusm */
    case 3949:  /* *p iwmmxt_avg4r */
    case 3948:  /* *p iwmmxt_avg4 */
    case 3947:  /* *p addcv2si3 */
    case 3946:  /* *p addcv4hi3 */
    case 3945:  /* *p iwmmxt_wsubaddhx */
    case 3944:  /* *p iwmmxt_waddsubhx */
    case 3927:  /* *p iwmmxt_waccw */
    case 3926:  /* *p iwmmxt_wacch */
    case 3925:  /* *p iwmmxt_waccb */
    case 3865:  /* *p *uminv8qi3_iwmmxt */
    case 3864:  /* *p *uminv4hi3_iwmmxt */
    case 3863:  /* *p *uminv2si3_iwmmxt */
    case 3862:  /* *p *sminv8qi3_iwmmxt */
    case 3861:  /* *p *sminv4hi3_iwmmxt */
    case 3860:  /* *p *sminv2si3_iwmmxt */
    case 3859:  /* *p *umaxv8qi3_iwmmxt */
    case 3858:  /* *p *umaxv4hi3_iwmmxt */
    case 3857:  /* *p *umaxv2si3_iwmmxt */
    case 3856:  /* *p *smaxv8qi3_iwmmxt */
    case 3855:  /* *p *smaxv4hi3_iwmmxt */
    case 3854:  /* *p *smaxv2si3_iwmmxt */
    case 3853:  /* *p gtv2si3 */
    case 3852:  /* *p gtv4hi3 */
    case 3851:  /* *p gtv8qi3 */
    case 3850:  /* *p gtuv2si3 */
    case 3849:  /* *p gtuv4hi3 */
    case 3848:  /* *p gtuv8qi3 */
    case 3847:  /* *p eqv2si3 */
    case 3846:  /* *p eqv4hi3 */
    case 3845:  /* *p eqv8qi3 */
    case 3835:  /* *p iwmmxt_uavgv4hi3 */
    case 3834:  /* *p iwmmxt_uavgv8qi3 */
    case 3833:  /* *p iwmmxt_uavgrndv4hi3 */
    case 3832:  /* *p iwmmxt_uavgrndv8qi3 */
    case 3820:  /* *p ussubv2si3 */
    case 3819:  /* *p ussubv4hi3 */
    case 3818:  /* *p ussubv8qi3 */
    case 3817:  /* *p sssubv2si3 */
    case 3816:  /* *p sssubv4hi3 */
    case 3815:  /* *p sssubv8qi3 */
    case 3814:  /* *p *subv8qi3_iwmmxt */
    case 3813:  /* *p *subv4hi3_iwmmxt */
    case 3812:  /* *p *subv2si3_iwmmxt */
    case 3811:  /* *p usaddv2si3 */
    case 3810:  /* *p usaddv4hi3 */
    case 3809:  /* *p usaddv8qi3 */
    case 3808:  /* *p ssaddv2si3 */
    case 3807:  /* *p ssaddv4hi3 */
    case 3806:  /* *p ssaddv8qi3 */
    case 3805:  /* *p *addv8qi3_iwmmxt */
    case 3804:  /* *p *addv4hi3_iwmmxt */
    case 3803:  /* *p *addv2si3_iwmmxt */
    case 588:  /* iwmmxt_waddbhusl */
    case 587:  /* iwmmxt_waddbhusm */
    case 571:  /* iwmmxt_avg4r */
    case 570:  /* iwmmxt_avg4 */
    case 569:  /* addcv2si3 */
    case 568:  /* addcv4hi3 */
    case 567:  /* iwmmxt_wsubaddhx */
    case 566:  /* iwmmxt_waddsubhx */
    case 549:  /* iwmmxt_waccw */
    case 548:  /* iwmmxt_wacch */
    case 547:  /* iwmmxt_waccb */
    case 487:  /* *uminv8qi3_iwmmxt */
    case 486:  /* *uminv4hi3_iwmmxt */
    case 485:  /* *uminv2si3_iwmmxt */
    case 484:  /* *sminv8qi3_iwmmxt */
    case 483:  /* *sminv4hi3_iwmmxt */
    case 482:  /* *sminv2si3_iwmmxt */
    case 481:  /* *umaxv8qi3_iwmmxt */
    case 480:  /* *umaxv4hi3_iwmmxt */
    case 479:  /* *umaxv2si3_iwmmxt */
    case 478:  /* *smaxv8qi3_iwmmxt */
    case 477:  /* *smaxv4hi3_iwmmxt */
    case 476:  /* *smaxv2si3_iwmmxt */
    case 475:  /* gtv2si3 */
    case 474:  /* gtv4hi3 */
    case 473:  /* gtv8qi3 */
    case 472:  /* gtuv2si3 */
    case 471:  /* gtuv4hi3 */
    case 470:  /* gtuv8qi3 */
    case 469:  /* eqv2si3 */
    case 468:  /* eqv4hi3 */
    case 467:  /* eqv8qi3 */
    case 457:  /* iwmmxt_uavgv4hi3 */
    case 456:  /* iwmmxt_uavgv8qi3 */
    case 455:  /* iwmmxt_uavgrndv4hi3 */
    case 454:  /* iwmmxt_uavgrndv8qi3 */
    case 442:  /* ussubv2si3 */
    case 441:  /* ussubv4hi3 */
    case 440:  /* ussubv8qi3 */
    case 439:  /* sssubv2si3 */
    case 438:  /* sssubv4hi3 */
    case 437:  /* sssubv8qi3 */
    case 436:  /* *subv8qi3_iwmmxt */
    case 435:  /* *subv4hi3_iwmmxt */
    case 434:  /* *subv2si3_iwmmxt */
    case 433:  /* usaddv2si3 */
    case 432:  /* usaddv4hi3 */
    case 431:  /* usaddv8qi3 */
    case 430:  /* ssaddv2si3 */
    case 429:  /* ssaddv4hi3 */
    case 428:  /* ssaddv8qi3 */
    case 427:  /* *addv8qi3_iwmmxt */
    case 426:  /* *addv4hi3_iwmmxt */
    case 425:  /* *addv2si3_iwmmxt */
      return WMMXT_ALU_C2_YES;

    default:
      return WMMXT_ALU_C2_NO;

    }
}

enum attr_wmmxt_alu_c1
get_attr_wmmxt_alu_c1 (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  enum attr_type cached_type ATTRIBUTE_UNUSED;

  switch (recog_memoized (insn))
    {
    case 3793:  /* *p movv8qi_internal */
    case 3792:  /* *p movv4hi_internal */
    case 3791:  /* *p movv2si_internal */
    case 3789:  /* *p iwmmxt_anddi3 */
    case 3788:  /* *p iwmmxt_xordi3 */
    case 3787:  /* *p iwmmxt_iordi3 */
    case 415:  /* movv8qi_internal */
    case 414:  /* movv4hi_internal */
    case 413:  /* movv2si_internal */
    case 408:  /* iwmmxt_anddi3 */
    case 407:  /* iwmmxt_xordi3 */
    case 406:  /* iwmmxt_iordi3 */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return WMMXT_ALU_C1_YES;
        }
      else
        {
	  return WMMXT_ALU_C1_NO;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
      if (((cached_type = get_attr_type (insn)) == TYPE_WMMX_WABS) || ((cached_type == TYPE_WMMX_WABSDIFF) || ((cached_type == TYPE_WMMX_WAND) || ((cached_type == TYPE_WMMX_WANDN) || ((cached_type == TYPE_WMMX_WMOV) || ((cached_type == TYPE_WMMX_WOR) || (cached_type == TYPE_WMMX_WXOR)))))))
        {
	  return WMMXT_ALU_C1_YES;
        }
      else
        {
	  return WMMXT_ALU_C1_NO;
        }

    case 3943:  /* *p iwmmxt_wabsdiffw */
    case 3942:  /* *p iwmmxt_wabsdiffh */
    case 3941:  /* *p iwmmxt_wabsdiffb */
    case 3940:  /* *p iwmmxt_wabsv8qi3 */
    case 3939:  /* *p iwmmxt_wabsv4hi3 */
    case 3938:  /* *p iwmmxt_wabsv2si3 */
    case 3831:  /* *p iwmmxt_clrv2si */
    case 3830:  /* *p iwmmxt_clrv4hi */
    case 3829:  /* *p iwmmxt_clrv8qi */
    case 3828:  /* *p iwmmxt_clrdi */
    case 3802:  /* *p *xorv8qi3_iwmmxt */
    case 3801:  /* *p *xorv4hi3_iwmmxt */
    case 3800:  /* *p *xorv2si3_iwmmxt */
    case 3799:  /* *p *iorv8qi3_iwmmxt */
    case 3798:  /* *p *iorv4hi3_iwmmxt */
    case 3797:  /* *p *iorv2si3_iwmmxt */
    case 3796:  /* *p *andv8qi3_iwmmxt */
    case 3795:  /* *p *andv4hi3_iwmmxt */
    case 3794:  /* *p *andv2si3_iwmmxt */
    case 3790:  /* *p iwmmxt_nanddi3 */
    case 565:  /* iwmmxt_wabsdiffw */
    case 564:  /* iwmmxt_wabsdiffh */
    case 563:  /* iwmmxt_wabsdiffb */
    case 562:  /* iwmmxt_wabsv8qi3 */
    case 561:  /* iwmmxt_wabsv4hi3 */
    case 560:  /* iwmmxt_wabsv2si3 */
    case 453:  /* iwmmxt_clrv2si */
    case 452:  /* iwmmxt_clrv4hi */
    case 451:  /* iwmmxt_clrv8qi */
    case 450:  /* iwmmxt_clrdi */
    case 424:  /* *xorv8qi3_iwmmxt */
    case 423:  /* *xorv4hi3_iwmmxt */
    case 422:  /* *xorv2si3_iwmmxt */
    case 421:  /* *iorv8qi3_iwmmxt */
    case 420:  /* *iorv4hi3_iwmmxt */
    case 419:  /* *iorv2si3_iwmmxt */
    case 418:  /* *andv8qi3_iwmmxt */
    case 417:  /* *andv4hi3_iwmmxt */
    case 416:  /* *andv2si3_iwmmxt */
    case 409:  /* iwmmxt_nanddi3 */
      return WMMXT_ALU_C1_YES;

    default:
      return WMMXT_ALU_C1_NO;

    }
}

enum attr_wmmxt_mult_c2
get_attr_wmmxt_mult_c2 (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  enum attr_type cached_type ATTRIBUTE_UNUSED;

  switch (recog_memoized (insn))
    {
    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
      if (((cached_type = get_attr_type (insn)) == TYPE_WMMX_WMUL) || (cached_type == TYPE_WMMX_WQMULM))
        {
	  return WMMXT_MULT_C2_YES;
        }
      else
        {
	  return WMMXT_MULT_C2_NO;
        }

    case 3963:  /* *p iwmmxt_wqmulmr */
    case 3961:  /* *p iwmmxt_wqmulm */
    case 3958:  /* *p iwmmxt_wmulwsmr */
    case 3957:  /* *p iwmmxt_wmulumr */
    case 3956:  /* *p iwmmxt_wmulsmr */
    case 3823:  /* *p umulv4hi3_highpart */
    case 3822:  /* *p smulv4hi3_highpart */
    case 3821:  /* *p *mulv4hi3_iwmmxt */
    case 585:  /* iwmmxt_wqmulmr */
    case 583:  /* iwmmxt_wqmulm */
    case 580:  /* iwmmxt_wmulwsmr */
    case 579:  /* iwmmxt_wmulumr */
    case 578:  /* iwmmxt_wmulsmr */
    case 445:  /* umulv4hi3_highpart */
    case 444:  /* smulv4hi3_highpart */
    case 443:  /* *mulv4hi3_iwmmxt */
      return WMMXT_MULT_C2_YES;

    default:
      return WMMXT_MULT_C2_NO;

    }
}

enum attr_wmmxt_mult_c1
get_attr_wmmxt_mult_c1 (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  enum attr_type cached_type ATTRIBUTE_UNUSED;

  switch (recog_memoized (insn))
    {
    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
      if (((cached_type = get_attr_type (insn)) == TYPE_WMMX_WMAC) || ((cached_type == TYPE_WMMX_WMADD) || ((cached_type == TYPE_WMMX_WMIAXY) || ((cached_type == TYPE_WMMX_WMIAWXY) || ((cached_type == TYPE_WMMX_WMULW) || ((cached_type == TYPE_WMMX_WQMIAXY) || (cached_type == TYPE_WMMX_WQMULWM)))))))
        {
	  return WMMXT_MULT_C1_YES;
        }
      else
        {
	  return WMMXT_MULT_C1_NO;
        }

    case 3990:  /* *p iwmmxt_wmiawttn */
    case 3989:  /* *p iwmmxt_wmiawtbn */
    case 3988:  /* *p iwmmxt_wmiawbtn */
    case 3987:  /* *p iwmmxt_wmiawbbn */
    case 3986:  /* *p iwmmxt_wmiawtt */
    case 3985:  /* *p iwmmxt_wmiawtb */
    case 3984:  /* *p iwmmxt_wmiawbt */
    case 3983:  /* *p iwmmxt_wmiawbb */
    case 3982:  /* *p iwmmxt_wmiattn */
    case 3981:  /* *p iwmmxt_wmiatbn */
    case 3980:  /* *p iwmmxt_wmiabtn */
    case 3979:  /* *p iwmmxt_wmiabbn */
    case 3978:  /* *p iwmmxt_wmiatt */
    case 3977:  /* *p iwmmxt_wmiatb */
    case 3976:  /* *p iwmmxt_wmiabt */
    case 3975:  /* *p iwmmxt_wmiabb */
    case 3974:  /* *p iwmmxt_wqmiattn */
    case 3973:  /* *p iwmmxt_wqmiatbn */
    case 3972:  /* *p iwmmxt_wqmiabtn */
    case 3971:  /* *p iwmmxt_wqmiabbn */
    case 3970:  /* *p iwmmxt_wqmiatt */
    case 3969:  /* *p iwmmxt_wqmiatb */
    case 3968:  /* *p iwmmxt_wqmiabt */
    case 3967:  /* *p iwmmxt_wqmiabb */
    case 3964:  /* *p iwmmxt_wqmulwmr */
    case 3962:  /* *p iwmmxt_wqmulwm */
    case 3960:  /* *p iwmmxt_wmulwl */
    case 3959:  /* *p iwmmxt_wmulwumr */
    case 3955:  /* *p iwmmxt_wmulwum */
    case 3954:  /* *p iwmmxt_wmulwsm */
    case 3953:  /* *p iwmmxt_wmaddun */
    case 3952:  /* *p iwmmxt_wmaddsn */
    case 3951:  /* *p iwmmxt_wmaddux */
    case 3950:  /* *p iwmmxt_wmaddsx */
    case 3915:  /* *p iwmmxt_wmaddu */
    case 3914:  /* *p iwmmxt_wmadds */
    case 3827:  /* *p iwmmxt_wmacuz */
    case 3826:  /* *p iwmmxt_wmacu */
    case 3825:  /* *p iwmmxt_wmacsz */
    case 3824:  /* *p iwmmxt_wmacs */
    case 612:  /* iwmmxt_wmiawttn */
    case 611:  /* iwmmxt_wmiawtbn */
    case 610:  /* iwmmxt_wmiawbtn */
    case 609:  /* iwmmxt_wmiawbbn */
    case 608:  /* iwmmxt_wmiawtt */
    case 607:  /* iwmmxt_wmiawtb */
    case 606:  /* iwmmxt_wmiawbt */
    case 605:  /* iwmmxt_wmiawbb */
    case 604:  /* iwmmxt_wmiattn */
    case 603:  /* iwmmxt_wmiatbn */
    case 602:  /* iwmmxt_wmiabtn */
    case 601:  /* iwmmxt_wmiabbn */
    case 600:  /* iwmmxt_wmiatt */
    case 599:  /* iwmmxt_wmiatb */
    case 598:  /* iwmmxt_wmiabt */
    case 597:  /* iwmmxt_wmiabb */
    case 596:  /* iwmmxt_wqmiattn */
    case 595:  /* iwmmxt_wqmiatbn */
    case 594:  /* iwmmxt_wqmiabtn */
    case 593:  /* iwmmxt_wqmiabbn */
    case 592:  /* iwmmxt_wqmiatt */
    case 591:  /* iwmmxt_wqmiatb */
    case 590:  /* iwmmxt_wqmiabt */
    case 589:  /* iwmmxt_wqmiabb */
    case 586:  /* iwmmxt_wqmulwmr */
    case 584:  /* iwmmxt_wqmulwm */
    case 582:  /* iwmmxt_wmulwl */
    case 581:  /* iwmmxt_wmulwumr */
    case 577:  /* iwmmxt_wmulwum */
    case 576:  /* iwmmxt_wmulwsm */
    case 575:  /* iwmmxt_wmaddun */
    case 574:  /* iwmmxt_wmaddsn */
    case 573:  /* iwmmxt_wmaddux */
    case 572:  /* iwmmxt_wmaddsx */
    case 537:  /* iwmmxt_wmaddu */
    case 536:  /* iwmmxt_wmadds */
    case 449:  /* iwmmxt_wmacuz */
    case 448:  /* iwmmxt_wmacu */
    case 447:  /* iwmmxt_wmacsz */
    case 446:  /* iwmmxt_wmacs */
      return WMMXT_MULT_C1_YES;

    default:
      return WMMXT_MULT_C1_NO;

    }
}

enum attr_wmmxt_pack
get_attr_wmmxt_pack (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  enum attr_type cached_type ATTRIBUTE_UNUSED;

  switch (recog_memoized (insn))
    {
    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
      if (((cached_type = get_attr_type (insn)) == TYPE_WMMX_WALIGNI) || ((cached_type == TYPE_WMMX_WALIGNR) || ((cached_type == TYPE_WMMX_WMERGE) || ((cached_type == TYPE_WMMX_WPACK) || ((cached_type == TYPE_WMMX_WSHUFH) || ((cached_type == TYPE_WMMX_WUNPCKEH) || ((cached_type == TYPE_WMMX_WUNPCKIH) || ((cached_type == TYPE_WMMX_WUNPCKEL) || (cached_type == TYPE_WMMX_WUNPCKIL)))))))))
        {
	  return WMMXT_PACK_YES;
        }
      else
        {
	  return WMMXT_PACK_NO;
        }

    case 3991:  /* *p iwmmxt_wmerge */
    case 3933:  /* *p iwmmxt_walignr3 */
    case 3932:  /* *p iwmmxt_walignr2 */
    case 3931:  /* *p iwmmxt_walignr1 */
    case 3930:  /* *p iwmmxt_walignr0 */
    case 3929:  /* *p iwmmxt_walignr */
    case 3928:  /* *p iwmmxt_waligni */
    case 3889:  /* *p iwmmxt_wunpckelsw */
    case 3888:  /* *p iwmmxt_wunpckelsh */
    case 3887:  /* *p iwmmxt_wunpckelsb */
    case 3886:  /* *p iwmmxt_wunpckeluw */
    case 3885:  /* *p iwmmxt_wunpckeluh */
    case 3884:  /* *p iwmmxt_wunpckelub */
    case 3883:  /* *p iwmmxt_wunpckehsw */
    case 3882:  /* *p iwmmxt_wunpckehsh */
    case 3881:  /* *p iwmmxt_wunpckehsb */
    case 3880:  /* *p iwmmxt_wunpckehuw */
    case 3879:  /* *p iwmmxt_wunpckehuh */
    case 3878:  /* *p iwmmxt_wunpckehub */
    case 3877:  /* *p iwmmxt_wunpckilw */
    case 3876:  /* *p iwmmxt_wunpckilh */
    case 3875:  /* *p iwmmxt_wunpckilb */
    case 3874:  /* *p iwmmxt_wunpckihw */
    case 3873:  /* *p iwmmxt_wunpckihh */
    case 3872:  /* *p iwmmxt_wunpckihb */
    case 3871:  /* *p iwmmxt_wpackdus */
    case 3870:  /* *p iwmmxt_wpackwus */
    case 3869:  /* *p iwmmxt_wpackhus */
    case 3868:  /* *p iwmmxt_wpackdss */
    case 3867:  /* *p iwmmxt_wpackwss */
    case 3866:  /* *p iwmmxt_wpackhss */
    case 3844:  /* *p iwmmxt_wshufh */
    case 613:  /* iwmmxt_wmerge */
    case 555:  /* iwmmxt_walignr3 */
    case 554:  /* iwmmxt_walignr2 */
    case 553:  /* iwmmxt_walignr1 */
    case 552:  /* iwmmxt_walignr0 */
    case 551:  /* iwmmxt_walignr */
    case 550:  /* iwmmxt_waligni */
    case 511:  /* iwmmxt_wunpckelsw */
    case 510:  /* iwmmxt_wunpckelsh */
    case 509:  /* iwmmxt_wunpckelsb */
    case 508:  /* iwmmxt_wunpckeluw */
    case 507:  /* iwmmxt_wunpckeluh */
    case 506:  /* iwmmxt_wunpckelub */
    case 505:  /* iwmmxt_wunpckehsw */
    case 504:  /* iwmmxt_wunpckehsh */
    case 503:  /* iwmmxt_wunpckehsb */
    case 502:  /* iwmmxt_wunpckehuw */
    case 501:  /* iwmmxt_wunpckehuh */
    case 500:  /* iwmmxt_wunpckehub */
    case 499:  /* iwmmxt_wunpckilw */
    case 498:  /* iwmmxt_wunpckilh */
    case 497:  /* iwmmxt_wunpckilb */
    case 496:  /* iwmmxt_wunpckihw */
    case 495:  /* iwmmxt_wunpckihh */
    case 494:  /* iwmmxt_wunpckihb */
    case 493:  /* iwmmxt_wpackdus */
    case 492:  /* iwmmxt_wpackwus */
    case 491:  /* iwmmxt_wpackhus */
    case 490:  /* iwmmxt_wpackdss */
    case 489:  /* iwmmxt_wpackwss */
    case 488:  /* iwmmxt_wpackhss */
    case 466:  /* iwmmxt_wshufh */
      return WMMXT_PACK_YES;

    default:
      return WMMXT_PACK_NO;

    }
}

enum attr_wmmxt_shift
get_attr_wmmxt_shift (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  enum attr_type cached_type ATTRIBUTE_UNUSED;

  switch (recog_memoized (insn))
    {
    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
      if (((cached_type = get_attr_type (insn)) == TYPE_WMMX_WROR) || ((cached_type == TYPE_WMMX_WSLL) || ((cached_type == TYPE_WMMX_WSRA) || (cached_type == TYPE_WMMX_WSRL))))
        {
	  return WMMXT_SHIFT_YES;
        }
      else
        {
	  return WMMXT_SHIFT_NO;
        }

    case 3913:  /* *p ashldi3_di */
    case 3912:  /* *p ashlv2si3_di */
    case 3911:  /* *p ashlv4hi3_di */
    case 3910:  /* *p lshrdi3_di */
    case 3909:  /* *p lshrv2si3_di */
    case 3908:  /* *p lshrv4hi3_di */
    case 3907:  /* *p ashrdi3_di */
    case 3906:  /* *p ashrv2si3_di */
    case 3905:  /* *p ashrv4hi3_di */
    case 3904:  /* *p rordi3_di */
    case 3903:  /* *p rorv2si3_di */
    case 3902:  /* *p rorv4hi3_di */
    case 3901:  /* *p ashldi3_iwmmxt */
    case 3900:  /* *p ashlv2si3_iwmmxt */
    case 3899:  /* *p ashlv4hi3_iwmmxt */
    case 3898:  /* *p lshrdi3_iwmmxt */
    case 3897:  /* *p lshrv2si3_iwmmxt */
    case 3896:  /* *p lshrv4hi3_iwmmxt */
    case 3895:  /* *p ashrdi3_iwmmxt */
    case 3894:  /* *p ashrv2si3_iwmmxt */
    case 3893:  /* *p ashrv4hi3_iwmmxt */
    case 3892:  /* *p rordi3 */
    case 3891:  /* *p rorv2si3 */
    case 3890:  /* *p rorv4hi3 */
    case 535:  /* ashldi3_di */
    case 534:  /* ashlv2si3_di */
    case 533:  /* ashlv4hi3_di */
    case 532:  /* lshrdi3_di */
    case 531:  /* lshrv2si3_di */
    case 530:  /* lshrv4hi3_di */
    case 529:  /* ashrdi3_di */
    case 528:  /* ashrv2si3_di */
    case 527:  /* ashrv4hi3_di */
    case 526:  /* rordi3_di */
    case 525:  /* rorv2si3_di */
    case 524:  /* rorv4hi3_di */
    case 523:  /* ashldi3_iwmmxt */
    case 522:  /* ashlv2si3_iwmmxt */
    case 521:  /* ashlv4hi3_iwmmxt */
    case 520:  /* lshrdi3_iwmmxt */
    case 519:  /* lshrv2si3_iwmmxt */
    case 518:  /* lshrv4hi3_iwmmxt */
    case 517:  /* ashrdi3_iwmmxt */
    case 516:  /* ashrv2si3_iwmmxt */
    case 515:  /* ashrv4hi3_iwmmxt */
    case 514:  /* rordi3 */
    case 513:  /* rorv2si3 */
    case 512:  /* rorv4hi3 */
      return WMMXT_SHIFT_YES;

    default:
      return WMMXT_SHIFT_NO;

    }
}

enum attr_write_conflict
get_attr_write_conflict (rtx_insn *insn ATTRIBUTE_UNUSED)
{
  enum attr_type cached_type ATTRIBUTE_UNUSED;

  switch (recog_memoized (insn))
    {
    case 4081:  /* *p *thumb2_movhi_insn */
    case 857:  /* *thumb2_movhi_insn */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0x1f))
        {
	  return WRITE_CONFLICT_YES;
        }
      else
        {
	  return WRITE_CONFLICT_NO;
        }

    case 812:  /* *thumb1_movsf_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0xa))
        {
	  return WRITE_CONFLICT_YES;
        }
      else
        {
	  return WRITE_CONFLICT_NO;
        }

    case 4080:  /* *p *thumb2_movsi_insn */
    case 4009:  /* *p *thumb2_movsi_vfp */
    case 855:  /* *thumb2_movsi_insn */
    case 631:  /* *thumb2_movsi_vfp */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0x60))
        {
	  return WRITE_CONFLICT_YES;
        }
      else
        {
	  return WRITE_CONFLICT_NO;
        }

    case 4013:  /* *p *thumb2_movsf_vfp */
    case 4012:  /* *p *movsf_vfp */
    case 4007:  /* *p *thumb2_movhi_fp16 */
    case 4005:  /* *p *thumb2_movhi_vfp */
    case 638:  /* *thumb2_movsf_vfp */
    case 637:  /* *movsf_vfp */
    case 629:  /* *thumb2_movhi_fp16 */
    case 627:  /* *thumb2_movhi_vfp */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 5)
        {
	  return WRITE_CONFLICT_YES;
        }
      else
        {
	  return WRITE_CONFLICT_NO;
        }

    case 3793:  /* *p movv8qi_internal */
    case 3792:  /* *p movv4hi_internal */
    case 3791:  /* *p movv2si_internal */
    case 415:  /* movv8qi_internal */
    case 414:  /* movv4hi_internal */
    case 413:  /* movv2si_internal */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 6)
        {
	  return WRITE_CONFLICT_YES;
        }
      else
        {
	  return WRITE_CONFLICT_NO;
        }

    case 635:  /* *movhf_vfp_neon */
    case 412:  /* *cond_iwmmxt_movsi_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 2)
        {
	  return WRITE_CONFLICT_YES;
        }
      else
        {
	  return WRITE_CONFLICT_NO;
        }

    case 3699:  /* *p *arm_movsf_soft_insn */
    case 811:  /* *thumb1_movhf */
    case 810:  /* *thumb1_movqi_insn */
    case 809:  /* *thumb1_movhi_insn */
    case 194:  /* *arm_movsf_soft_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 1)
        {
	  return WRITE_CONFLICT_YES;
        }
      else
        {
	  return WRITE_CONFLICT_NO;
        }

    case 4011:  /* *p *movhf_vfp_fp16 */
    case 3698:  /* *p *arm32_movhf */
    case 636:  /* *movhf_vfp */
    case 634:  /* *movhf_vfp_fp16 */
    case 193:  /* *arm32_movhf */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 0)
        {
	  return WRITE_CONFLICT_YES;
        }
      else
        {
	  return WRITE_CONFLICT_NO;
        }

    case 3697:  /* *p *arm_movqi_insn */
    case 808:  /* *thumb1_movsi_insn */
    case 192:  /* *arm_movqi_insn */
      extract_constrain_insn_cached (insn);
      if (((1 << which_alternative) & 0xa0))
        {
	  return WRITE_CONFLICT_YES;
        }
      else
        {
	  return WRITE_CONFLICT_NO;
        }

    case 3695:  /* *p *movhi_insn_arch4 */
    case 190:  /* *movhi_insn_arch4 */
      extract_constrain_insn_cached (insn);
      if (!((1 << which_alternative) & 0xf))
        {
	  return WRITE_CONFLICT_YES;
        }
      else
        {
	  return WRITE_CONFLICT_NO;
        }

    case 4008:  /* *p *arm_movsi_vfp */
    case 4006:  /* *p *arm_movhi_fp16 */
    case 4004:  /* *p *arm_movhi_vfp */
    case 3692:  /* *p *arm_movsi_insn */
    case 630:  /* *arm_movsi_vfp */
    case 628:  /* *arm_movhi_fp16 */
    case 626:  /* *arm_movhi_vfp */
    case 411:  /* *iwmmxt_movsi_insn */
    case 182:  /* *arm_movsi_insn */
      extract_constrain_insn_cached (insn);
      if (which_alternative == 4)
        {
	  return WRITE_CONFLICT_YES;
        }
      else
        {
	  return WRITE_CONFLICT_NO;
        }

    case -1:
      if (GET_CODE (PATTERN (insn)) != ASM_INPUT
          && asm_noperands (PATTERN (insn)) < 0)
        fatal_insn_not_found (insn);
      if (((cached_type = get_attr_type (insn)) == TYPE_BLOCK) || ((cached_type == TYPE_CALL) || (cached_type == TYPE_LOAD1)))
        {
	  return WRITE_CONFLICT_YES;
        }
      else
        {
	  return WRITE_CONFLICT_NO;
        }

    case 4079:  /* *p *thumb2_pop_single */
    case 3723:  /* *p *ldr_with_return */
    case 3719:  /* *p *arith_adjacentmem */
    case 3707:  /* *p *load_indirect_jump */
    case 3703:  /* *p *arm_return */
    case 3694:  /* *p tls_load_dot_plus_eight */
    case 3658:  /* *p unaligned_loadsi */
    case 868:  /* *call_value_reg_thumb2 */
    case 867:  /* *call_reg_thumb2 */
    case 854:  /* *thumb2_pop_single */
    case 842:  /* *epilogue_insns */
    case 838:  /* *call_value_insn */
    case 837:  /* *call_insn */
    case 836:  /* *call_value_reg_thumb1 */
    case 835:  /* *call_value_reg_thumb1_v5 */
    case 834:  /* *call_reg_thumb1 */
    case 833:  /* *call_reg_thumb1_v5 */
    case 321:  /* prefetch */
    case 308:  /* *ldr_with_return */
    case 304:  /* stack_tie */
    case 299:  /* *arith_adjacentmem */
    case 235:  /* *load_indirect_jump */
    case 230:  /* blockage */
    case 227:  /* *cond_simple_return_inverted */
    case 226:  /* *cond_return_inverted */
    case 225:  /* *cond_simple_return */
    case 224:  /* *cond_return */
    case 223:  /* *arm_return */
    case 222:  /* *sibcall_value_insn */
    case 221:  /* *sibcall_insn */
    case 220:  /* *call_value_symbol */
    case 219:  /* *call_symbol */
    case 218:  /* *call_value_reg_arm */
    case 217:  /* *call_value_reg_armv5 */
    case 216:  /* *call_reg_arm */
    case 215:  /* *call_reg_armv5 */
    case 188:  /* tls_load_dot_plus_eight */
    case 185:  /* pic_load_addr_thumb1 */
    case 184:  /* pic_load_addr_32bit */
    case 183:  /* pic_load_addr_unified */
    case 138:  /* unaligned_loadsi */
      return WRITE_CONFLICT_YES;

    default:
      return WRITE_CONFLICT_NO;

    }
}

int
eligible_for_delay (rtx_insn *delay_insn ATTRIBUTE_UNUSED, int slot, 
		   rtx_insn *candidate_insn, int flags ATTRIBUTE_UNUSED)
{
  rtx_insn *insn ATTRIBUTE_UNUSED;

  gcc_assert (slot < 0);

  if (!INSN_P (candidate_insn))
    return 0;

  insn = candidate_insn;
  switch (slot)
    {
    default:
      gcc_unreachable ();
    }
}

int
eligible_for_annul_true (rtx_insn *delay_insn ATTRIBUTE_UNUSED,
    int slot ATTRIBUTE_UNUSED,
    rtx_insn *candidate_insn ATTRIBUTE_UNUSED,
    int flags ATTRIBUTE_UNUSED)
{
  return 0;
}

int
eligible_for_annul_false (rtx_insn *delay_insn ATTRIBUTE_UNUSED,
    int slot ATTRIBUTE_UNUSED,
    rtx_insn *candidate_insn ATTRIBUTE_UNUSED,
    int flags ATTRIBUTE_UNUSED)
{
  return 0;
}

int
const_num_delay_slots (rtx_insn *insn)
{
  switch (recog_memoized (insn))
    {
    default:
      return 1;
    }
}

EXPORTED_CONST int length_unit_log = 0;
